Poodle: Desabilitar o SSL V3 no servidor é realmente uma solução?


39

Eu tenho lido o dia todo sobre a vulnerabilidade do Poodle e agora estou um pouco confuso em relação à segurança e receita.

Se eu desativar o SSL V3 no servidor (SSL V2 e V3, ambos serão desativados para Apache), os clientes (navegadores) que não suportam nenhum protocolo, mas o SSL V3 não conseguirá conectar HTTPS ao servidor.

Portanto, é uma situação em que o cliente e o servidor devem se comunicar com o TLS 1.1 1.2 e assim por diante

Se algum deles usa SSL V3 e o outro não suporta versões inferiores, o que acontece? Sem conexão com SSL.

Eu vi poucas atualizações feitas no Firefox, talvez elas tenham desativado o SSL V3 no que geralmente precisamos fazer nas opções. Isso forçará toda a conexão para versões inferiores e TLS

Mas a desativação do SSL V3 é realmente uma solução para esse problema?


4
O que você quer dizer com "Isso forçará toda a conexão a versões inferiores e TLS"? SSLv1 e SSLv2 foram desativados por um longo tempo porque foram quebrados. O SSLv3 foi desaprovado, mas em muitos casos permaneceu ativado para oferecer suporte a software legado. Qual é a versão inferior a que você está se referindo? TLSv1.0, v1.1, v1.2, ... são padrões posteriores e podem ser considerados "SSL de versão superior", apenas os números de versão foram redefinidos com a alteração de nome.
Håkan Lindqvist

Olá, o que entendi até agora é que, se eu desabilitar o SSL V3 e V2 no servidor, conforme recomendado pela Red Hat, a conexão segura estará no protocolo TLS. E se os navegadores estão fazendo uma chamada no TLS com o servidor, então não será um problema em connections.I seguros não tem a informação exata sobre a diferença b / w versões SSL e TLS ..
sandeep.s85

Respostas:


52

Primeiro, vamos esclarecer um pouco as coisas:

  • O TLS substituiu o SSL. O TLS 1.0 veio depois e é uma atualização para o SSL 3.0.

    TLS 1.2> TLS 1.1> TLS 1.0> SSL 3.0> SSL 2.0> SSL 1.0

  • As versões SSL anteriores à 3.0 já conheciam severas vulnerabilidades de segurança há um tempo e são desativadas / não são suportadas por clientes e servidores modernos. O SSL 3.0 provavelmente seguirá o mesmo caminho em breve.

  • Dos protocolos usados ​​atualmente, o "Poodle" afeta mais severamente o SSL 3.0, onde não há como atenuar. Há um ataque semelhante contra algumas implementações do TLS 1.0 e 1.1 que a especificação permite - verifique se o seu software está atualizado.


Agora, o motivo "Poodle" é um risco, mesmo em clientes e servidores modernos, devido à implementação de um mecanismo de fallback pelos clientes. Nem todos os servidores suportam as versões mais recentes; portanto, os clientes experimentam cada versão da ordem mais recente até a mais recente (TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0) até encontrar uma que o servidor suporte. Isso acontece antes do início da comunicação criptografada; portanto, um invasor do tipo MITM pode forçar o navegador a voltar para uma versão mais antiga, mesmo se o servidor suportar uma versão superior. Isso é conhecido como ataque de downgrade de protocolo.

Especificamente, no caso do "Poodle", desde que o cliente e o servidor ofereçam suporte ao SSL 3.0, um invasor MITM poderá forçar o uso deste protocolo.

Portanto, quando você desabilita o SSL 3.0, isso tem dois efeitos:

  • Os clientes que suportam versões superiores não podem ser levados a voltar à versão vulnerável (o TLS Fallback SCSV é um novo mecanismo proposto para evitar um ataque de downgrade do protocolo, mas nem todos os clientes e servidores o suportam ainda). Esse é o motivo pelo qual você deseja desativar o SSL 3.0. A grande maioria dos seus clientes provavelmente se enquadra nessa categoria, e isso é benéfico.

  • Clientes que não suportam TLS (como outros já mencionaram, o IE6 no XP é praticamente o único ainda usado para HTTPS) não poderão se conectar por meio de uma conexão criptografada. É provavelmente uma parte menor da sua base de usuários e não vale a pena sacrificar a segurança da maioria que está atualizada para atender a essa minoria.


8
Oi Bob, aqui é Alice. Como sua explicação sobre como o Mallet pode usar o Poodle.
BatteryBackupUnit

+1 Não sabia sobre o ataque de downgrade do protocolo.
developerwjk

11
ATUALIZAÇÃO: "...everything less than TLS 1.2 with an AEAD cipher suite is cryptographically broken, including many implementations which conform to current specifications." zdnet.com/article/poodle-not-fixed-some-tls-systems-vulnerable
BlueCacti

@GroundZero > Mas acontece que algumas implementações de TLS ainda não verificaram os bytes de preenchimento, apesar da capacidade de fazê-lo. => especificamente, embora as implementações do TLS 1.0 e 1.1 possam ser quebradas (e as especificações permitirem que sejam quebradas dessa maneira, o que não é bom), não é tão ruim quanto o SSL 3.0, onde a própria especificação foi quebrada e não havia caminho para uma implementação em conformidade contornar isso. Além disso, "desativar" o suporte a TLS 1.0 e 1.1 no servidor é um problema muito mais difícil do que desativar o SSL 3.0 - você afetará uma proporção muito maior de seus usuários.
Bob

Parece que são principalmente as implementações do lado do servidor vulneráveis ​​(?) - corrija a implementação do TLS no servidor e você deve ficar bem (?) [Eu não examinei isso o suficiente para confirmar que navegadores e outros clientes não são afetados , mas a redação do artigo vinculado e a fonte sugerem isso].
22414 Bob

27

Sua avaliação está correta. Os clientes precisarão usar protocolos mais novos para se conectar ao seu servidor depois de desativar o SSL 3. O protocolo SSL 3 é defeituoso e não haverá "patch". Desativar o SSL 3 é a única solução.

Muitos sites desativaram o SSL 3, neste momento, para tornar virtualmente inevitável que os usuários de navegadores mais antigos precisem atualizar. Supondo que você esteja registrando seqüências de caracteres de agente de usuário, você pode revisar seus logs e tomar uma decisão informada sobre a desativação do SSL 3. Acho que é provável que apenas uma pequena porcentagem dos visitantes do seu site esteja usando navegadores que não conseguiriam lidar com os protocolos mais recentes.

[fwiw - relatórios do cloudflare 1,12% dos usuários são usuários do IE6 XP, dependendo do SSLv3]


11
Embora seja verdade que o SSLv3 é falho, a única solução real é desativar o SSLv3. Há também uma atenuação para o ataque do poodle que não exige a desativação do SSLv3, se você puder aceitar a cifra RC4 para clientes TLS 1.0, pois o poodle afeta apenas as cifras no modo CBC (AES). Eu descrevi-o aqui: serverfault.com/q/637848/249649
cypres

2
TLS_FALLBACK_SCSVnão está atenuando o ataque para clientes mais antigos. Apenas permite que clientes mais antigos continuem usando o protocolo defeituoso e evite downgrades indesejáveis ​​da versão do protocolo para clientes mais novos. No final, deixar o SSLv3 ativado para qualquer cliente está potencialmente expondo seu tráfego aos invasores.
Evan Anderson

O RC4 está mitigando esse ataque para clientes mais antigos, não para o scsv. Mas preferimos não usar o RC4, e é por isso que também recomendo desativar o SSLv3, se possível.
Cyprès

11
@cypres - Sim-- 'TLS_FALLBACK_SCSV' não ajuda clientes mais antigos. Eu diria que o uso de uma cifra que demonstrou ter sérias fraquezas também não é útil. Precisamos deixar que esse seja um "dia da bandeira" que elimine o SSL 3.0 da rede. Claro - se você possui dispositivos mais antigos, dispositivos incorporados etc., que não suportam TLS dentro da empresa, sinta-se à vontade para executar o SSL 3.0. Eu acho que é irresponsável incentivar alguém a continuar usando o SSL 3.0 na Internet pública.
Evan Anderson

Hoje, desabilitei o SSLv3 no Firefox e permiti apenas TLS, e vejo uma quantidade razoável de problemas de conexão SSL enquanto navega em sites na Internet. Suporte centenas de servidores Linux nos quais o sslv3 está ativado. Posso estar errado, mas a solução definitiva para essa situação é até que os fornecedores do SO lançem um patch para que nada seja feito no cliente. O problema é que você não pode prever o impacto.
sandeep.s85

20

Sim, a desativação do SSL3 fará com que os usuários que não suportam TLS não possam acessar seu site.

No entanto, do ponto de vista prático, observe quais navegadores se enquadram nessa categoria. O Chrome e o Firefox suportam TLS e até descartam o suporte a SSL3 inteiramente devido a esse bug. O IE o apoia desde o IE7. O único navegador que não tem suporte, mas ainda é usado em escala global, é o IE6, e o único motivo pelo qual ainda é usado é o seguinte:

  1. Qualquer pessoa com uma versão quebrada do XP e nenhuma maneira de usar o Chrome ou Firefox;
  2. Qualquer pessoa em uma política corporativa ou governamental com restrições relacionadas à escolha do navegador.

Nos dois casos, o IE6 é usado porque é o navegador padrão do Windows XP que acompanha a instalação original. Além disso, a única razão pela qual o IE6 ainda possui uma (pequena) participação no mercado global é por causa dos muitos usuários na China.

Então, para encurtar a história: aqui estão três perguntas:

  1. Você tem uma significativa base de usuários em chinês?
  2. O seu site oferece suporte ao IE6, mesmo que seja antiquado e quebrado?
  3. O seu site é um produto usado por um governo ou empresa com restrições de escolha do navegador?

Se alguma dessas três for verdadeira, você terá que encontrar uma solução alternativa. Se todos os 3 forem falsos, apenas desative-o e pronto. E se você precisar da solução alternativa, é mais difícil convencer a pequena parte da sua base de usuários que ainda usa o IE6 para mudar de um navegador de 13 anos.


7

Você mencionou " Apache " e " navegadores " na sua pergunta, mas o título é mais geral.

Como Evan e outros apontam, o problema está quase resolvido para HTTPS. Mas existem vários outros protocolos que um servidor pode criptografar, e o suporte ao TLS é muito mais pobre entre essa base de clientes (como descobri esta manhã, ao exigir "no SSL3" em um servidor IMAP / S).

Por isso, receio que a resposta seja " depende de quais serviços você criptografa e do suporte ao cliente para TLS entre sua base de usuários ".

Edit : sim, esse foi o meu ponto, embora eu esteja feliz que você concorda. A desativação do sslv3 é feita serviço a serviço. Por exemplo, a maneira de desligá-lo no dovecot é colocar

ssl_cipher_list = ALL:!LOW:!SSLv2:!SSLv3:!EXP:!aNULL

no dovecot.conf. O maior problema é que, enquanto a maioria dos navegadores tolera a perda de sslv3, os clientes de outros serviços parecem muito menos tolerantes. Eu quebrei cerca de metade dos meus usuários hoje de manhã quando desliguei isso no dovecot; Telefones com Android K-9 e Outlook no Win7 são dois dos quais tenho certeza, mas posso ver nos meus registros que havia mais.

Desativar o SSLv3 ainda não é apenas uma solução válida, é a única solução; mas vai doer.

Edit 2 : obrigado a dave_thompson_085 por apontar que a desativação de cifras SSLv3 no dovecot desativa não apenas o protocolo SSLv3, mas também o TLSv1.0 e o TLSv1.1, pois eles não têm cifras que o protocolo anterior não possui. Dovecot (pelo menos, versões anteriores, que incluem a que eu estou executando) parece não ter a capacidade de configurar protocolos em vez de ciphersuites. Isso provavelmente explica por que fazer isso quebrou tantos clientes.


11
Também li agora que isso não afetará apenas os servidores web, mas qualquer serviço em execução no servidor que faça uso de SSL, como servidores Web, servidores LDAP, daemons SSH, servidores POP3, servidores SMTP. Portanto, para servidores Web, temos a Configuração no Apache arquivo de configuração mod_ssl como SSLProtocol Todos -SSLv2 -SSLv3 temos de olhar em outros serviços, bem como sobre como podemos evitar cliente / servidor para usar SSLv3
sandeep.s85

O ataque real do POODLE, conforme descrito no aviso de segurança , depende de uma quantidade razoável de solicitações feitas com alguma capacidade de controle do invasor. No contexto de HTTPS e navegadores, isso é possível graças ao script, mas no contexto de, por exemplo, IMAPS, não estou convencido de que isso seja prático. É claro que livrar-se do SSLv3 de maneira geral é ideal, mas não tenho certeza de que o POODLE em particular seja relevante para alguns desses outros casos.
Håkan Lindqvist

Håkan, com o passar do tempo, estou cada vez mais de acordo com você.
MadHatter suporta Monica

3
A desativação de cifras !SSLv3 no openssl realmente desativa todos os protocolos, exceto o TLSv1.2, o que pode não ser bom para os seus pares. É por isso que desabilitar o protocolo é melhor, mas o AFAICS apenas no dovecot 2.1+. Consulte security.stackexchange.com/questions/71872/… .
David_thompson_085

@ dave_thompson_085: quando você diz " desativando ... no openssl ", você quer dizer " desativando ... no dovecot "? Nesse caso, concordo com você e alterarei minha resposta à luz dessas informações, se você puder esclarecer conforme solicitado.
MadHatter apoia Monica

6

Desabilitar o SSLv3 é a melhor solução, mas não concordo que seja a única solução. Como o CloudFlare descreve, o uso do SSLv3 é muito baixo ; portanto, a maioria dos administradores não deve ter problemas para desativá-lo.

Se você possui um requisito específico para SSLv3, talvez seja necessário oferecer suporte ao IE6 no Windows XP ou suporte a software muito antigo, existe outra maneira de atenuá-lo.

A maneira de mitigá-lo e manter o SSLv3 é usar o RC4 e dar suporte ao TLS Fallback SCSV, fornecido pelo OpenSSL 1.0.1j. No post de qualys no poodle , RC4 é a "certa cifra de fluxo insegura cujo nome ninguém quer mencionar".

É o que o google faz no mail.google.com e também o descreve na entrada do blog: http://googleonlinesecurity.blogspot.se/2014/10/this-poodle-bites-exploiting-ssl-30.html


2
Estou realmente não tenho certeza o que é pior, deixando o sistema aberto para Poodle ou redução de marchas para RC4 ...
Brian Knoblauch

Clientes que oferecem suporte ao TLS 1.1+ não mudam para RC4. Não sou especialista, mas acredito que o poodle é pior.
Cyprès

RC4 não significa essencialmente texto não criptografado?
Hagen von Eitzen

11
Certamente você está brincando, mas levante um ponto válido. Não que mal quebrado é, estes é realmente uma boa resposta sobre isso em segurança: security.stackexchange.com/a/32498
cypres

2

Um detalhe está faltando na conversa; com base na pergunta original, pode ser uma boa idéia anotá-lo. O TLS 1.0 também é conhecido como SSL 3.1. Portanto, o pôster original deve ser visto na sua configuração, você está executando a v3.0 ou v3.1


-3

Como na maioria das coisas, a resposta é "depende". O único navegador em qualquer tipo de uso "comum" que não suporta TLS é o IE6. Infelizmente, vários relatórios dizem que o IE6 pode representar até alguns por cento das solicitações HTTP globais (consulte: http://news.netcraft.com/archives/2014/10/15/googles-poodle-affects-oodles.html ) . A boa notícia, se você estiver na América do Norte, é que é relativamente incomum nos EUA. Para estar seguro, você deve consultar as estatísticas do agente do usuário nos seus logs www. No meu caso, havia tão poucas impressões digitais do IE6 ua que eu assumi que eram todas de ferramentas de teste.

Você pode testar seu (s) site (s) com o testador da ssllab para ver como vários agentes reagem.

https://www.ssllabs.com/ssltest/

TL; DR - SSLv3 está morto; viva TLS.


15
O IE6 não é a última versão compatível com o XP, é a versão fornecida com o XP. O IE8 é a última versão compatível com o XP.
Håkan Lindqvist

6
-1 devido a incorreto fato, indicando que o IE6 é a versão mais recente no xp.
TomTom

may be as much as a few percent of global HTTP requests. Eu gostaria de uma fonte para isso. CloudFlare diz isso sobre o uso: In other words, even on an out-of-date operating system, 98.88% Windows XP users connected using TLSv1.0+( blog.cloudflare.com/… ). O que é muito menos do que "alguns por cento" globalmente.
quer

11
Suspeito que os clientes do cloudflares sejam principalmente grandes empresas norte-americanas. As estatísticas que eu citei vieram da netcraft: news.netcraft.com/archives/2014/10/15/… "Apesar da idade e do fim do suporte da Microsoft ao Windows XP, o IE6 continua popular, representando mais 3,8% das visitas à web em todo o mundo e 12,5% na China. Essa vulnerabilidade pode ser o ponto de partida do IE6 e do Windows XP. "
Joshua Hoblitt 24/10/2014
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.