Este artigo de convidado faz parte de uma série e foi criado em parceria com a F5.
CSR, PEM, DER, X509… não é de se admirar que os certificados sejam frequentemente vistos como uma espécie de mágica.
Na primeira vez que precisei fazer um certificado funcionar, eu não fazia ideia do que estava fazendo! Copiei vários comandos sem saber direito para quê serviam e torci para que funcionassem. Mas, quando se trata de segurança, esperar que alguém simplesmente copie comandos às cegas é arriscado — sobretudo quando o assunto são certificados.
Os certificados são a base das conexões TLS (e, mais comumente, HTTPS, que utiliza TLS). Se você errar nisso, ficará exposto ao risco de a conexão ser interceptada por um invasor (anulando, na prática, a proteção oferecida pela conexão TLS).
Este blog faz parte de uma série que abordará o papel dos certificados e, especialmente, o gerenciamento de certificados. Nesta primeira parte, exploraremos a finalidade dos certificados e por que eles desempenham um papel importante na proteção de conexões (mais especificamente, conexões TLS).
Garantindo a confidencialidade e estabelecendo a integridade
Quando um cliente se conecta a um servidor, há dois princípios de segurança que precisamos considerar.
O primeiro é a confidencialidade. Isso é fundamental para que os dados transmitidos de e para o cliente não fiquem visíveis para ninguém que não faça parte dessa comunicação. Uma página de login é um bom exemplo. Queremos garantir que o nome de usuário e a senha inseridos não fiquem visíveis para ninguém durante a transmissão para o servidor no qual você está tentando fazer login. Também vale observar que a confidencialidade contribui para a privacidade, impedindo que olhares indiscretos vejam suas ações ou as informações que você está consultando.
O segundo princípio é a integridade. Muitas pessoas se esquecem dela ou não a conhecem quando se trata de TLS. Por integridade, queremos dizer que ninguém pode adulterar os dados transmitidos de e para o cliente. Mesmo que o recurso seja público, ainda queremos garantir a integridade desses dados.
Considere um site de notícias acessível ao público. Não estamos muito preocupados com o aspecto da confidencialidade (exceto pela privacidade, mas, neste exemplo, vamos deixar isso de lado), já que esta página está disponível publicamente. No entanto, queremos garantir que os dados enviados pelo servidor ao cliente (o navegador de um usuário) não tenham sido manipulados. Sem levar em conta a integridade de um servidor, um invasor poderia editar o conteúdo de uma notícia (pense em notícias falsas) ou injetar conteúdo malicioso na página, como um hook do Browser Exploitation Framework.
A importância dos certificados
Então, qual é o papel dos certificados em tudo isso? Quando um cliente se conecta a um servidor, ele precisa primeiro garantir que está se conectando ao servidor pretendido, e não a um servidor imitado por um invasor. Também queremos garantir que a conexão seja criptografada de ponta a ponta. Isso significa que a conexão não foi interrompida em algum ponto para permitir a inspeção e a modificação do tráfego antes de ser encaminhada ao servidor original. Isso é chamado de ataque de máquina no meio.
Para deixar claro, há casos de uso legítimos para isso, especialmente em ambientes corporativos, nos quais o tráfego da internet costuma ser inspecionado para ajudar a melhorar a segurança da organização. É aí que entram os certificados. Quando um cliente se conecta a um servidor via TLS, o servidor precisa fornecer seu certificado (de servidor) ao cliente. Em seguida, o cliente valida esse certificado para garantir que ele pertença ao servidor correto ao qual estava tentando se conectar originalmente. Depois que isso é confirmado — como parte do handshake TLS —, a comunicação entre o cliente e o servidor pode começar.
Na próxima parte desta série, continuarei explorando esse tema em meu próprio blog. Lá, abordaremos o processo de validação de certificados. É nesse ponto que nos aprofundaremos no aspecto humano do gerenciamento de certificados e em sua importância.
Até lá, recomendo muito que você confira uma sessão informativa do F5 myForum (Prepare-se para as mudanças no cenário de SSL) apresentada por David Warburton e Nigel Ashworth. É uma excelente visão geral dos cenários de SSL e TLS, que estão em constante evolução, e vale muito a pena assistir.
Sean Wright é um engenheiro experiente em segurança de aplicações que iniciou sua carreira como desenvolvedor de software. Seu foco principal é a segurança de aplicações web, com interesse especial em TLS e assuntos relacionados à cadeia de suprimentos. Sean também tem experiência em oferecer liderança técnica na área de segurança de aplicações, bem como em colaborar com equipes para aprimorar a segurança dos sistemas e aplicações que elas desenvolvem e mantêm. Você pode ler o blog dele aqui.
Sobre o autor
Publicações relacionadas no blog

Entrega e proteção de agentes de IA em fábricas de IA: F5 para a arquitetura de referência NVIDIA OpenShell para agentes de IA seguros
As soluções da F5 ampliam a Arquitetura de Referência NVIDIA OpenShell para agentes de IA seguros.
Como medir – e minimizar – o custo total de propriedade do seu Kubernetes
O Kubernetes pode ser baixado e executado gratuitamente, mas sua manutenção está longe de não ter custos. Assim como outras grandes plataformas de código aberto que são “gratuitas” apenas em um sentido simplista, o Kubernetes quase certamente exigirá investimentos para ser implantado e operado.
As-Code: a pilha de TI contínua
Infraestrutura, configuração, pipeline, operações. De repente, tudo é “como código”. Lori MacVittie busca esclarecer a terminologia e identificar os diferentes componentes de uma stack contínua de TI.
O estado da entrega de aplicações em 2017: automação, APIs e DevOps
Explore o relatório State of Application Delivery de 2017. Leia o blog retrospectivo da F5 sobre o início da ascensão das redes declarativas e dos pipelines de DevOps.
DevOps Summit: onde a rede foi convidada para a festa
No DevOps Summit NY, falou-se muito não apenas sobre DevOps, mas também sobre contêineres, IoT e microsserviços. As sessões se concentraram não só na mudança cultural necessária para crescer em escala com uma abordagem DevOps, mas também fizeram questão de incluir...
F5 e Nutanix convergem em infraestrutura no .NEXT
Aplicações empresariais como Microsoft SharePoint e Exchange, juntamente com a VDI, continuam sendo a espinha dorsal da sua empresa. A produtividade, embora não seja tão atraente quanto o lucro, é um fator essencial para o sucesso das operações empresariais atuais. Deixar de...