POODLE (Padding Oracle On Downgradeed Legacy Encryption) è una vulnerabilità rilevata il 14 ottobre 2014, che consente a un utente malintenzionato di leggere qualsiasi informazione crittografata utilizzando il protocollo SSLv3 eseguendo un attacco man-in-the-middle. Sebbene molti programmi utilizzino SSLv3 come fallback, è arrivato al punto in cui dovrebbe essere disabilitato, poiché molti client possono essere costretti a utilizzare SSLv3. Forzare un client in SSLv3 aumenta le probabilità che si verifichi un attacco. Questo articolo ti mostrerà come disabilitare SSLv3 in alcune applicazioni software comunemente utilizzate oggi.
Disabilitazione di SSLv3 su Nginx
Vai al file di configurazione in cui sono archiviate le informazioni del tuo server. Ad esempio, /etc/nginx/sites-enabled/ssl.example.com.conf
(sostituendo il percorso in base alla propria configurazione). All'interno del file, cerca ssl_protocols
. Assicurarsi che questa riga esista e corrisponda a quanto segue:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
Ciò imporrà l'uso di TLS, disabilitando così SSLv3 (e tutti i protocolli più vecchi o obsoleti). Ora riavvia il tuo server Nginx eseguendo uno dei seguenti comandi.
CentOS 7 :
systemctl restart nginx
Ubuntu / Debian :
service nginx restart
Disabilitazione di SSLv3 su Apache
Per disabilitare SSLv3, vai alla directory di configurazione del tuo modulo per Apache. Su Ubuntu / Debian potrebbe essere /etc/apache2/mod-available
. Considerando che su CentOS, può trovarsi in /etc/httpd/conf.d
. Cerca il ssl.conf
file. Apri ssl.conf
e trova la SSLProtocol
direttiva. Assicurarsi che questa riga esista e corrisponda a quanto segue:
SSLProtocol all -SSLv3 -SSLv2
Una volta terminato, salva, quindi riavvia il server eseguendo uno dei seguenti comandi.
Per eseguire Ubuntu / Debian:
CentOS 7 :
systemctl restart httpd
Ubuntu / Debian :
service apache2 restart
Disabilitazione di SSLv3 su Postfix
Vai alla tua postfix
directory. Di solito lo è /etc/postfix/
. Apri il main.cf
file e cerca smtpd_tls_mandatory_protocols
. Assicurarsi che questa riga esista e corrisponda a quanto segue:
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, TLSv1, TLSv1.1, TLSv1.2
In questo modo TLSv1.1 e TLSv1.2 verranno abilitati e utilizzati sul tuo server Postfix. Una volta fatto, salva e riavvia.
CentOS 7 :
systemctl restart postfix
Ubuntu / Debian :
service postfix restart
Disabilitazione di SSLv3 su Dovecot
Apri il file che si trova in /etc/dovecot/conf.d/10-ssl.conf
. Quindi, trova la riga che contiene ssl_protocols
e assicurati che corrisponda a quanto segue:
ssl_protocols = !SSLv2 !SSLv3 TLSv1.1 TLSv1.2
Una volta fatto, salva e riavvia Dovecot.
CentOS 7 :
systemctl restart dovecot
Ubuntu / Debian :
service dovecot restart
Test che SSLv3 è disabilitato
Per verificare che SSLv3 sia disabilitato sul tuo server web, esegui il comando seguente (sostituisci dominio e IP di conseguenza):
openssl s_client -servername example.com -connect 0.0.0.0:443 -ssl3
Vedrai un output simile al seguente:
CONNECTED(00000003)
140060449216160:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure:s3_pkt.c:1260:SSL alert number 40
140060449216160:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:s3_pkt.c:596:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 0 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : SSLv3
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1414181774
Timeout : 7200 (sec)
Verify return code: 0 (ok)
Se vuoi confermare che il tuo server sta usando TLS, esegui lo stesso comando ma senza -ssl3
:
openssl s_client -servername example.com -connect 0.0.0.0:443
Dovresti vedere informazioni simili visualizzate. Individua la Protocol
linea e conferma che sta utilizzando TLSv1.X
(con X pari a 1 o 2 a seconda della configurazione). Se vedi questo, allora hai disabilitato con successo SSLv3 sul tuo server web.