As conexões Secure Socket Layer, ou SSL, usam uma chave de criptografia e um certificado digital para verificar se as comunicações de um site se originam de uma fonte confiável. Embora haja muitos motivos para usar conexões SSL, o SSL também ajuda a impedir que os invasores “falsifiquem”. O spoofing ocorre quando um computador não autorizado se disfarça de autorizado.
Tipos de SSL
Existem dois tipos diferentes de SSL: simétrico e assimétrico. Embora as chaves simétricas tenham a menor sobrecarga, elas exigem que ambos os computadores já tenham sua chave de criptografia instalada. As chaves assimétricas, aquelas normalmente usadas para servidores Web, fazem uso de um sistema de duas partes para criar pares exclusivos; uma chave privada gerada pela parte solicitante e uma chave “pública” mantida pelo servidor. Ambos os tipos de SSL usam assinaturas. Por sua própria natureza, SSL é um sistema do tipo cliente-servidor, com um host iniciando a conexão e o outro fornecendo a maior parte da segurança.
Importância dos certificados com SSL
Mesmo que um servidor pareça oferecer uma conexão SSL, esse fato não confirma totalmente que a conexão é autêntica. Para garantir totalmente uma conexão sem proteção, SSL usa certificados. Os certificados são pequenos arquivos armazenados no servidor SSL; eles afirmam a autenticidade desse servidor. Os certificados são tão fortes quanto a autoridade que os emite, com o mais proeminente sendo a VeriSign Inc. Certificados assinados de forma independente, que devem ser regularmente renovados e vinculados a um IP específico, garantem que a conexão SSL seja estabelecida com um servidor confiável e conhecido. Quando um certificado assinado por terceiros acompanha uma conexão SSL da Web, a conexão é perfeitamente estabelecida. Certificados não verificados por nenhuma autoridade geralmente farão com que seu navegador da Web o avise, forçando você a escolher de forma proativa se deseja se conectar ao servidor não verificado.
Como o SSL impede o spoofing man-in-the-middle
O spoofing acontece sempre que um computador não confiável finge ser um computador confiável ou, no caso de um spoofing man-in-the-middle, não pode ser visto. Ao fazer isso com sucesso, uma máquina de spoofing man-in-the-middle atua como um intermediário entre o seu computador e o servidor. O computador intercepta as comunicações, as copia e as repassa como se nada tivesse acontecido. O SSL interrompe esse tipo de ataque criptografando primeiro todas as comunicações. A máquina de falsificação precisaria da chave de criptografia SSL para descriptografar quaisquer dados interceptados. Mesmo se a máquina de spoofing tiver um meio de quebrar a criptografia, cada pacote de dados em uma conexão SSL gera uma hash tag difícil de reverter que verifica se o pacote foi entregue inalterado. A interceptação altera essa hashtag e faz com que as partes autorizadas encerrem a conexão falsificada.
Como o SSL impede o spoofing cego e não cego
Alguns spoofers simplesmente detectam ou monitoram as comunicações entre os computadores na tentativa de descobrir como imitar seu esquema de comunicação. Dessa forma, um spoofer pode “entrar” em uma conversa digital em andamento sem ser autorizado. Quando o spoofer vem de fora da rede, isso é chamado de spoofing "cego". Quando o spoofer dentro da rede é atacado, ele é chamado de "não cego". Em configurações SSL simétricas e assimétricas, todas as comunicações são criptografadas. A criptografia é feita usando uma chave gerada exclusivamente entre os dois computadores, evitando assim que o spoofer “veja” como as duas máquinas estão se comunicando.