2 min read

Fix voor "LogJam" zonder nieuwe DH keys

Fix voor "LogJam" zonder nieuwe DH keys

De SSL "exploit du jour" vorige week was "LogJam". Prachtig hoe marketing binnengeslopen is in de Exploit-wereld, want LogJam is niet 1 issue maar 2 (eigenlijk zelfs 3), het is geen exploit, en het is geen bug. Maar dat is een verhaal voor een andere keer...

LogJam lijst 2 exploits op in haar one-pager, die eigenlijk een non-issue zijn als je de SSL aanbevelingen van de voorbije maanden goed volgde, ze gaan immers voort op de zwakheid van de "Export" ciphers en de "FREAK" aanval die eruit volgde.

Wat de researchers wel aantonen (en dit is nieuw), is dat heel veel software standaard dezelfde (ingebouwde) Diffie-Hellman basis priemgetallen gebruiken, en dat dit wel degelijk (theoretisch) te misbruiken is.

De standaardaanbeveling is dan ook die priemgetallen te veranderen door er zelf te genereren, en liefst nog 2048 in plaats van 1024 bits priemgetallen te gebruiken. Helaas is dat in een aantal software-tools niet zo eenvoudig. Zo is er een recente versie van bv Apache nodig. Het gevolg is een halve wereld in paniek, want het is niet evident om overal die software zomaar te vervangen...

Er is echter nog een andere mogelijkheid, en het verbaast me hoe weinig dit naar voor komt: je kan je CipherSuites zo kiezen, dat je toch nog compatibel blijft met oudere browsers, maar de standaard DH parameters geen rol meer spelen in het opbouwen van een veilige verbinding. De Diffie-Hellman varianten gebaseerd op Elliptische Curves hebben hebben dit probleem niet. Als we dus de "klassieke" DH en DHE ciphers uitschakelen, en enkel ECDHE ciphers overhouden, zijn we veilig.

Dit is de aanbevolen lijst CipherSuites die je beschermt tegen de LogJam aanval:

ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA