Le protocole de chiffrement SSL/TLS est présent partout sur le web. Ce protocole a été victime de failles sévères (voir très sévères). Pour assurer une sécurité accrue des données passant par votre site web, il convient avant tout de s'assurer que votre site présente le moins de risque possible. Sur Debian, c'est Jessie la plus vulnérable, vérifier donc si votre serveur est à jour avec la commande
aptitude update aptitude safe-upgrade
Heartbleed est la faille qui a marqué le monde du SSL/TLS, car cette faille permet de révéler le contenu d'un message ou d'un envoi sécurisé (comme un numéro de CB par exemple) et le jeu de clés SSL (primaire et secondaire) sans laisser la moindre trace. Dès la publication de la faille, OpenSSL et les principales distributions Linux ont publiées un correctif. Pour s'en prémunir, il suffit de vérifier la version de openSSL.
Poodle est une faille du protocole SSLv3, a l'heure actuelle la seule méthode pour se protéger est de, tout simplement, désactiver SSLv3. Nous verrons le moyen de désactiver SSLv3 sur Apache2, dovecot et postfix, cela doit être la même procédure pour les autres services web.
Ouvrez le fichier /etc/apache2/mods-available/ssl.conf
Vérifiez et modifiez,si nécessaire, la ligne commençant par SSLProtocol all . Elle doit ressembler à ceci (située presque à la fin du fichier).
SSLProtocol all -SSLv2 -SSLv3
ensuite suffit de relancer Apache2 comme ceci :
service apache2 restart
Dans le fichier /etc/dovecot/dovecot.conf , rechercher la ligne suivante et y apportez les modifications, si nécessaire :
ssl_protocols = !SSLv2 !SSLv3
Dans le fichier /etc/mpostfix/main.cf ,vérifier la présence de cette ligne et apportez y les modifications nécessaires :
smtpd_tls_protocols = !SSLv2,!SSLv3
Pour s'en prémunir, il vous suffit de modifier ou adapter les signes suivantes dans /etc/apache2/mods-available/ssl.conf
SSLHonorCipherOrder on SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"
ensuite, il faut configurer openSSL
openssl ciphers -V 'EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA256 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EDH+aRSA EECDH RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS'
Vous obtiendrez quelque chose se rapprochant :
0xC0,0x2C - ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(256) Mac=AEAD 0xC0,0x2B - ECDHE-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(128) Mac=AEAD 0xC0,0x30 - ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD 0xC0,0x2F - ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(128) Mac=AEAD 0xC0,0x23 - ECDHE-ECDSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(128) Mac=SHA256 0xC0,0x27 - ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256 0xC0,0x11 - ECDHE-RSA-RC4-SHA SSLv3 Kx=ECDH Au=RSA Enc=RC4(128) Mac=SHA1 0x00,0x9F - DHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(256) Mac=AEAD 0x00,0x6B - DHE-RSA-AES256-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(256) Mac=SHA256 0x00,0x39 - DHE-RSA-AES256-SHA SSLv3 Kx=DH Au=RSA Enc=AES(256) Mac=SHA1 0x00,0x88 - DHE-RSA-CAMELLIA256-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(256) Mac=SHA1 0x00,0x9E - DHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(128) Mac=AEAD 0x00,0x67 - DHE-RSA-AES128-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(128) Mac=SHA256 0x00,0x33 - DHE-RSA-AES128-SHA SSLv3 Kx=DH Au=RSA Enc=AES(128) Mac=SHA1 0x00,0x9A - DHE-RSA-SEED-SHA SSLv3 Kx=DH Au=RSA Enc=SEED(128) Mac=SHA1 0x00,0x45 - DHE-RSA-CAMELLIA128-SHA SSLv3 Kx=DH Au=RSA Enc=Camellia(128) Mac=SHA1 0xC0,0x28 - ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA384 0xC0,0x24 - ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA384 0xC0,0x14 - ECDHE-RSA-AES256-SHA SSLv3 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA1 0xC0,0x0A - ECDHE-ECDSA-AES256-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA1 0xC0,0x13 - ECDHE-RSA-AES128-SHA SSLv3 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA1 0xC0,0x09 - ECDHE-ECDSA-AES128-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=AES(128) Mac=SHA1 0xC0,0x07 - ECDHE-ECDSA-RC4-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=RC4(128) Mac=SHA1 0xC0,0x0C - ECDH-RSA-RC4-SHA SSLv3 Kx=ECDH/RSA Au=ECDH Enc=RC4(128) Mac=SHA1 0xC0,0x02 - ECDH-ECDSA-RC4-SHA SSLv3 Kx=ECDH/ECDSA Au=ECDH Enc=RC4(128) Mac=SHA1 0x00,0x05 - RC4-SHA SSLv3 Kx=RSA Au=RSA Enc=RC4(128) Mac=SHA1
Il existe plusieurs outils pour tester l'efficacité de la sécurité de votre protocole SSL/TLS, il y a celui-ci par exemple.
Autres liens rapides pouvant vous intéresser