Servidores SSL vulneráveis que podem ser utilizados para roubo de informações (Poodle)
O que é esta vulnerabilidade?
A falha está relacionada ao protocolo SSL 3.0.
A vulnerabilidade permite que um usuário malicioso consiga interceptar conexões seguras entre clientes e servidores e forçá-los a utilizar SSL 3.0 que pode, então, ser decifrada.
Como recomendação sugerimos desativar o protocolo SSL 3.0
Maiores informações sobre a vulnerabilidade, bem como os meios de proteção, podem ser encontradas nos links abaixo:
https://www.us-cert.gov/ncas/alerts/TA14-290A
https://www.openssl.org/~bodo/ssl-poodle.pdf
Como identificar a vulnerabilidade?
Utilize um dos procedimentos abaixo para verificar a vulnerabilidade:
1 – Teste usando openssl
$openssl s_client -ssl3 -connect “IP ou domínio”:443
Caso apareça na saída do comando a linha abaixo você não está vulnerável “SSL handshake has read 7 bytes and written 0 bytes”
“—”
“New, (NONE), Cipher is (NONE)”
“Secure Renegotiation IS NOT supported”
“SSL peer handshake failed”
2 – Teste usando cURL
$curl -v3 -X HEAD https://“IP” ou “dominio”
Como corrigir a vulnerabilidade?
Siga os procedimentos abaixo, de acordo com a configuração do seu Servidor:
NGINX
Para desativar o SSLv3 no Nginx basta tirá-lo da configuração ssl_protocols.
1 – Entre no arquivo de configuração onde está configurado o seu portal seguro (https) e o seu certificado de segurança, normalmente no local /etc/nginx/sites-available/”sites”
2 – Procure e modifique a linha ssl_protocols, caso ela não exista acrescente logo abaixo da diretiva ssl on da seguinte forma:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
3 – Após isso recarregue as configurações do nginx através do comando abaixo:
/etc/init.d/nginx reload
Apache
Para desativar o SSLv3 de um servidor Apache, é necessário ir na configuração do SSL (ssl.conf) e explicitar que serão removidos o suporte aos certificados SSLv2 e SSLv3:
1 – Editar o arquivo ssl.conf em distribuições Debian/Ubuntu:
/etc/apache2/mods-available/ssl.conf
2 – Localizar a linha SSLProtocol, caso não exista acrescente com as informações abaixo:
SSLProtocol All -SSLv2 -SSLv3
3 – Checar se as configurações estão corretas:
$ apachectl configtest
4 – Reaplicar as configurações do Apache:
4.1 – Distribuições Debian/Ubuntu
/etc/init.d/apache2 reload
5 – Caso não seja possível desabilitar o SSLV3, recomendamos que sejam desabilitadas as cifras abaixo:
IDEA-CBC-SHA, EXP-DES-CBC-SHA, DES-CBC-SHA, DES-CBC3-SHA, EXP-DH-DSS-DES-CBC-SHA, DH-DSS-DES-CBC-SHA, DH-DSS-DES-CBC3-SHA, EXP-DH-RSA-DES-CBC-SHA, DH-RSA-DES-CBC-SHA, DH-RSA-DES-CBC3-SHA, EXP-DHE-DSS-DES-CBC-SHA, DHE-DSS-CBC-SHA, DHE-DSS-DES-CBC3-SHA, EXP-DHE-RSA-DES-CBC-SHA, DHE-RSA-DES-CBC-SHA, DHE-RSA-DES-CBC3-SHA, EXP-ADH-DES-CBC-SHA, ADH-DES-CBC-SHA, ADH-DES-CBC3-SHA, EXP-RC2-CBC-MD5, IDEA-CBC-SHA, EXP-DES-CBC-SHA, DES-CBC-SHA, DES-CBC3-SHA, EXP-DHE-DSS-DES-CBC-SHA, DHE-DSS-CBC-SHA, DHE-DSS-DES-CBC3-SHA, EXP-DHE-RSA-DES-CBC-SHA, DHE-RSA-DES-CBC-SHA, DHE-RSA-DES-CBC3-SHA, ADH-DES-CBC-SHA, ADH-DES-CBC3-SHA, AES128-SHA, AES256-SHA, DH-DSS-AES128-SHA, DH-DSS-AES256-SHA, DH-RSA-AES128-SHA, DH-RSA-AES256-SHA, DHE-DSS-AES128-SHA, DHE-DSS-AES256-SHA, DHE-RSA-AES128-SHA, DHE-RSA-AES256-SHA, ADH-AES128-SHA, ADH-AES256-SHA
Servidor Postfix SMTP
Para que seu Postfix seja alvo da vulnerabilidade Poodle a configuração deve ter sido feita para exigir criptografia.
1 – Verifique se a diretiva abaixo encontra-se no Postfix para saber se o mesmo está usando criptografia.
smtpd_tls_mandatory_protocols .
2 – Você pode encontrar isso no principal arquivo de configuração do Postfix:
sudo nano /etc/postfix/main.cf
3 – Para desabilitar SSLv3 e SSLv2, siga o procedimento abaixo:
smtpd_tls_mandatory_protocols =! SSLv2, SSLv3!
4 – Salve sua configuração. Reinicie o serviço para implementar as alterações:
sudo postfix serviço restart
Dovecot IMAP e PoP3 Servidores
Para desativar SSLv3 em um servidor Dovecot, você precisará ajustar a diretiva chamada ssl_protocols.
Dependendo de seus métodos de distribuição, configurações de SSL podem ser mantidos em um arquivo de configuração alternativo.
Para a maioria das distros, você pode ajustar esta diretiva por abrir este arquivo:
1 – Editar arquivo ssl.conf
sudo nano /etc/dovecot/conf.d/10-ssl.conf
2 – Caso esteja usando Dovecot 2.1 ou superior, a configuração para desativar SSLv3 e SSLv2 segue abaixo:
ssl_protocols =! SSLv2! SSLv3
3 – Caso esteja usando uma versão do Dovecot menor que 2.1, a configuração para desativar SSLv3 e SSLv2 segue abaixo:
ssl_cipher_list = ALL: LOW: SSLv2: EXP: aNULL: SSLv3
4 – Salve e feche o arquivo ssl.conf
5 – Reinicie o serviço, a fim de implementar as alterações:
sudo service dovecot restart
Microsoft IIS
- Abra o RegEdit como Administrador
- Vá para:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\
- Clique com o botão direito em Protocols, e selecione a opção Novo > Chave.
- Nomeie a chave, SSL 3.0.
- Clique com o botão direito na nova chave SSL 3.0que você acabou de criar e selecione Novo > Chave.
- Renomeie essa chave para Client.
- Repita o passo de criação de uma nova chave dentro da SSL 3.0, criando a chave Server.
- Clique com o botão direito em Client, E selecione Novo > DWORD (32-bit) Value.
- Renomeie para DisabledByDefault.
- Clique com o botão esquedo em Cliente dê duplo clique no valor DisabledByDefault.
- Na janela aberta, mude o Valor para 1 e clique em OK.
- Na janela de navegação, sob SSL 3.0, clique com o botão direito em Server, e selecione Novo > DWORD (32-bit) Value.
- Nomeie o valor Enabled.
- Selecione Server novamente e clique duas vezes no valor Enabled.
- Na janela de edição coloque o Valor como 0 e clique em OK.
- Reinicie seu Windows Server.