Metade dos sites , e esse número continua a crescer. O protocolo reduz o risco de interceptação de tráfego, mas não elimina as tentativas de ataques. Sobre alguns deles — POODLE, BEAST, DROWN e outros — e as formas de proteção, falaremos no nosso material.
/ Flickr / / CC BY-SA
POODLE
A primeira menção ao ataque foi em 2014. A vulnerabilidade no protocolo SSL 3.0 foi descoberta pelo especialista em segurança da informação Bodo Möller e seus colegas do Google.
A essência do ataque é a seguinte: um hacker força o cliente a estabelecer uma conexão via SSL 3.0 emulando quedas de conexão. Em seguida, ele procura mensagens marcadoras especiais no tráfego cifrado em -modo. Com uma série de requisições falsas, o criminoso obtém a capacidade de reconstruir o conteúdo das informações que lhe interessam, como cookies.
SSL 3.0 é um protocolo desatualizado. Mas a questão de sua segurança ainda é relevante. Os clientes o utilizam para evitar problemas de compatibilidade com servidores. Segundo alguns dados, quase 7% dos 100 mil sites mais populares . Além disso modificações do POODLE, cujo alvo são os mais modernos TLS 1.0 e TLS 1.1. Neste ano novos ataques Zombie POODLE e GOLDENDOODLE, que contornam a proteção do TLS 1.2 (eles ainda estão relacionados à criptografia CBC).
Como se proteger. No caso do POODLE original, é necessário desativar o suporte ao SSL 3.0. No entanto, isso pode causar problemas de compatibilidade. Uma solução alternativa pode ser o mecanismo TLS_FALLBACK_SCSV — ele garante que a troca de dados via SSL 3.0 ocorrerá apenas com sistemas antigos. Os criminosos não poderão mais iniciar o downgrade do protocolo. A forma de proteção contra Zombie POODLE e GOLDENDOODLE é desativar o suporte a CBC em aplicativos baseados em TLS 1.2. Uma solução radical será a migração para o TLS 1.3 — na nova versão do protocolo, não é utilizada a criptografia CBC. Em seu lugar, são aplicados métodos mais seguros, como AES e ChaCha20.
BEAST
Um dos primeiros ataques ao SSL e TLS 1.0, descoberto em 2011. Assim como o POODLE, o BEAST Caraterísticas da criptografia CBC. Os invasores inserem um agente JavaScript ou um applet Java na máquina do cliente, que substitui mensagens durante a transmissão de dados via TLS ou SSL. Como os invasores conhecem o conteúdo dos pacotes 'falsificados', eles podem usar isso para decifrar o vetor de inicialização e ler as outras mensagens ao servidor, como cookies de autenticação.
Atualmente, as vulnerabilidades BEAST ainda : servidores proxy e aplicativos de proteção de gateways de internet locais.
Como se proteger. O atacante precisa enviar requisições regularmente para decifrar os dados. No VMware reduza a duração do SSLSessionCacheTimeout — de cinco minutos (recomendação padrão) para 30 segundos. Essa abordagem complicará a implementação dos planos dos invasores, embora tenha algum efeito negativo na performance. Além disso, é importante entender que em breve a vulnerabilidade BEAST pode se tornar obsoleta por conta própria — a partir de 2020, os principais navegadores o suporte ao TLS 1.0 e 1.1. De qualquer forma, menos de 1,5% de todos os usuários de navegadores ainda utilizam esses protocolos.
DROWN
É um ataque cross-protocol que explora falhas na implementação do SSLv2 com chaves RSA de 40 bits. O invasor escuta centenas de conexões TLS do alvo e envia pacotes especiais ao servidor com SSLv2, que usa a mesma chave privada. Usando , um hacker pode decifrar uma dessas aproximadamente mil sessões TLS do cliente.
O DROWN foi conhecido pela primeira vez em 2016 — e, na época, afetou no mundo. Hoje, ainda é relevante. De 150 mil sites mais populares, 2% ainda SSLv2 e mecanismos de criptografia vulneráveis.
Como se proteger. É necessário aplicar patches fornecidos pelos desenvolvedores de bibliotecas criptográficas, desativando o suporte ao SSLv2. Por exemplo, duas dessas correções foram apresentadas para o OpenSSL (em 2016, 1.0.1s e 1.0.2g). Atualizações e instruções para desativar o protocolo vulnerável também foram publicadas na , , .
"Um recurso pode ser vulnerável ao DROWN se suas chaves forem usadas por um servidor externo com SSLv2, como um servidor de correio," observa o chefe do departamento de desenvolvimento Sergey Belkin. — Essa situação ocorre quando vários servidores usam um certificado SSL comum. Nesse caso, é necessário desativar o suporte SSLv2 em todas as máquinas.
Para verificar se é necessário atualizar seu sistema, você pode usar uma — desenvolvida por especialistas em segurança da informação que descobriram o DROWN. Mais sobre as recomendações relacionadas à proteção contra esse tipo de ataque pode ser lido no .
Heartbleed
Uma das maiores vulnerabilidades em software — . Foi descoberta em 2014 na biblioteca OpenSSL. No momento do anúncio do erro, o número de sites vulneráveis — cerca de 17% dos recursos protegidos na rede.
O ataque é realizado através de um pequeno módulo de extensão TLS chamado Heartbeat. O protocolo TLS exige que os dados sejam transmitidos continuamente. Em caso de inatividade prolongada, a conexão é interrompida e precisa ser restabelecida. Para lidar com o problema, servidores e clientes 'ruidosamente' artificialmente o canal (), transmitindo pacotes de comprimento aleatório. Se o pacote fosse maior que o pacote original, as versões vulneráveis do OpenSSL liam a memória além do buffer atribuído. Nesta área poderiam estar quaisquer dados, incluindo chaves de criptografia e informações sobre outras conexões.
A vulnerabilidade estava presente em todas as versões da biblioteca entre 1.0.1 e 1.0.1f, inclusive, e em várias distribuições de sistemas operacionais — Ubuntu até 12.04.4, CentOS após 6.5, OpenBSD 5.3 e outros. Uma lista completa está disponível . Embora patches contra essa vulnerabilidade tenham sido lançados praticamente imediatamente após sua descoberta, o problema ainda persiste. Em 2017, , ainda estavam vulneráveis ao Heartbleed.
Como se proteger. É necessário para a versão 1.0.1g ou superior. Também é possível desativar as solicitações de Heartbeat manualmente usando a opção DOPENSSL_NO_HEARTBEATS. Após a atualização, os especialistas em segurança da informação devem reemitir os certificados SSL. A substituição é necessária caso os dados sobre as chaves de criptografia tenham sido comprometidos.
Substituição de certificado
Um nó gerenciado é estabelecido entre o usuário e o servidor com um certificado SSL legítimo, interceptando ativamente o tráfego. Esse nó se apresenta como um servidor legítimo, apresentando um certificado válido, permitindo a realização de um ataque MITM.
De acordo com De acordo com especialistas da Mozilla, Google e várias universidades, cerca de 11% das conexões protegidas na rede são 'ouvidas'. Isso é resultado da instalação de certificados raiz suspeitos nos computadores dos usuários.
Como se proteger. Usar os serviços de provedores . Você pode verificar a 'qualidade' dos certificados por meio do serviço (CT). Provedores de nuvem também podem ajudar na detecção de 'escuta' — hoje, algumas grandes empresas já oferecem ferramentas especializadas para monitoramento de conexões via TLS.
Outra forma de proteção será o novo ACME, que automatiza a obtenção de certificados SSL. Ao mesmo tempo, ele adicionará mecanismos adicionais para verificar a propriedade do site. Saiba mais sobre ele .

/ Flickr / / CC BY
Perspectivas do HTTPS
Apesar de várias vulnerabilidades, gigantes da TI e especialistas em segurança cibernética acreditam no futuro do protocolo. Pelo uso ativo do HTTPS o criador da WWW, Tim Berners-Lee. Segundo ele, ao longo do tempo, o TLS se tornará mais seguro, o que aumentará significativamente a segurança das conexões. Berners-Lee até sugeriu que no certificados de cliente para autenticação de identidade. Eles ajudarão a melhorar a proteção dos servidores contra invasores.
O desenvolvimento da tecnologia SSL/TLS também está previsto com o uso de aprendizado de máquina — algoritmos inteligentes serão responsáveis pela filtragem do tráfego malicioso. Em conexões HTTPS, os administradores não têm como saber o conteúdo das mensagens criptografadas — incluindo detectar solicitações de malware. Já hoje, redes neurais podem filtrar pacotes potencialmente perigosos com uma precisão de 90%. ().
Como resultado, obtemos um serviço de "monitoramento como serviço", automatizado na linha de produção de integração contínua. O desenvolvedor ou testador precisa apenas definir a lista de métricas em um arquivo JSON, e tudo o mais acontece automaticamente. Obtemos um controle de qualidade transparente dos lançamentos: todas as notificações sobre desempenho, consumo de recursos ou regressões arquitetônicas.
Ataques ao HTTPS estão, em sua maioria, relacionados não a problemas no próprio protocolo, mas ao suporte de mecanismos de criptografia desatualizados. A indústria de TI começa a abandonar gradualmente os protocolos de geração anterior e oferece novas ferramentas para encontrar vulnerabilidades. No futuro, essas ferramentas se tornarão cada vez mais inteligentes.
Links adicionais sobre o tema:
Fonte: habr.com
