11/06/2014

NIST SP800-52 rev1 : tout ce que vous avez toujours voulu savoir sur SSL

Une question qui revient tout le temps : "Quelle est la taille des clés qu'il faut mettre pour être sécurisé avec HTTPS ?".

Bien sûr, la question est mal posée. Il faudrait parler de version d'OpenSSL, de cipher suite, d'ordre de négociation,d'algorithme de génération et de signature du certificat, d'autorité de certification, puis de l'algorithme de chiffrement symétrique et son padding...Mais bon, la question est souvent formulée ainsi.

J'en profite donc ici pour faire savoir que le NIST (organisme de normalisation pour le chiffrement) a mis à jour son document SP800-52 "Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations".

Ce document répond à toutes les questions, explique tout.

En bref, il faut du TLS 1.2 (vivement recommandé), au minimum du TLS 1.1 (accepté). SSLv2 SSLv3 (aqa TLS 1.0) sont bannis. Ensuite, le 3-DES ou l'AES-128 sont recommandés au minimum. Oui, l'AES-128 est préféré au AES-256 qui aurait des failles... Et évidement, une version d'OpenSSL non-vulnérable à HeartBleed, soit au minimum 1.0.1g.

Et pour ceux qui préfère pas comprendre comment ça marche, voici la configuration à mettre dans Apache:

SSLProtocol             TLSv1.2
SSLHonorCipherOrder     on
SSLCompression          off
SSLCipherSuite          ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256:DH-RSA-AES128-SHA256:!aNULL:!eNULL:!EXPORT:!DES:!3DES:!MD5:!PSK

Aucun commentaire:

Enregistrer un commentaire