image

Nieuwe aanval tegen 3DES en Blowfish raakt OpenVPN en TLS

woensdag 24 augustus 2016, 18:53 door Redactie, 8 reacties

Onderzoekers hebben vandaag een nieuwe aanval tegen de encryptie-algoritmes 3DES en Blowfish gedemonstreerd die worden gebruikt om verbindingen naar websites en servers te versleutelen en waardoor versleutelde informatie kan worden achterhaald.

Zo is het mogelijk om authenticatiecookies te stelen van HTTPS-verkeer dat van 3DES gebruikmaakt en kan in het geval van OpenVPN-verkeer, dat via Blowfish wordt beveiligd, gebruikersnamen en wachtwoorden worden achterhaald. De onderzoekers noemen hun aanval SWEET32. De aanval kan alleen worden uitgevoerd door een aanvaller die langere tijd toegang tot het netwerkverkeer van een doelwit heeft. In het geval van de aanval op een 3DES-HTTPS-verbinding tussen een browser en een website is het mogelijk om de secure HTTP-cookies te achterhalen als de aanvaller zo'n 785GB aan verkeer verzamelt. Volgens de onderzoekers slaagden ze erin de aanval binnen twee dagen uit te voeren, waarbij kwaadaardig JavaScript werd gebruikt om het verkeer te genereren.

Volgens de onderzoekers zou op dit moment nog zo'n 1% a 2% van de TLS-verbindingen van 3DES gebruikmaken. Wordt er naar de 10.000 populairste websites op internet gekeken, dan blijkt dat er 226 (1,9%) nog 3DES gebruiken. Verder bleken 72 van de 10.000 populairste websites de verbinding geruime tijd open te laten, zodat het voor een aanvaller mogelijk is om voldoende verkeer te verzamelen. Een aanvaller kan het doelwit ook naar een website lokken die zij beheren en zo JavaScript in de browser injecteren.

Deze JavaScript-code zal vervolgens allerlei HTTP-verzoeken naar de websites sturen waar het slachtoffer is ingelogd. Elk verzoek bevat het authenticatie-cookie van die websites. Als de onderzoeker 2 tot de 32ste van dergelijke verzoeken kan versturen, zal zich uiteindelijk een collision voordoen en kan het sessiecookie worden achterhaald. Hiermee kan de aanvaller toegang tot het account krijgen.

De aanval tegen OpenVPN werkt op dezelfde manier en vereist dat er langere tijd een verbinding is tussen het doelwit en de VPN-server. Hoewel de aanval op TLS ongeveer 0,6% van de HTTPS-verbindingen raakt, gaat het in het geval van OpenVPN om bijna alle verbindingen, aangezien Blowfish daar de standaard is. In de nieuwste versie van OpenVNP (versie 2.3.12) zal er dan ook een waarschuwing verschijnen als gebruikers 64-bit encryptie-algoritmen gebruiken zoals Blowfish en wordt er aangeraden om AES te gebruiken.

Naast OpenVPN zijn er meer partijen vanwege de kwetsbaarheden in actie gekomen. Zo zal OpenSSL 3DES in de aankomende versie 1.1.0 helemaal uitschakelen. Heeft Apple 3DES in icloud.com uitgeschakeld en adviseert klanten dit op hun websites te doen. Gaat Mozilla in Firefox datalimieten voor alle encryptie-algoritmen invoeren en heeft Microsoft 3DES van de False Start Whitelist verwijderd.

Reacties (8)
24-08-2016, 19:54 door Anoniem
Voor openvpn:

cipher AES-256-CBC
auth SHA256
25-08-2016, 09:21 door Anoniem
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256

Let op, dit moet aan zowel de server- and clientkant aangepast worden!
25-08-2016, 10:38 door Overcome
In de nieuwste versie van OpenVNP (versie 2.3.12) zal er dan ook een waarschuwing verschijnen als gebruikers 64-bit encryptie-algoritmen gebruiken zoals Blowfish en wordt er aangeraden om AES te gebruiken.

Voor alle duidelijkheid: het gaat hier om een block lengte van 64 bits, niet om een sleutellengte van 64 bits.
25-08-2016, 11:33 door Anoniem
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256
Door Anoniem:
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256

Let op, dit moet aan zowel de server- and clientkant aangepast worden!
En hier komt juist ook het grote nadeel naar voren van OpenVPN... Er is geen centrale management mogelijk. Dit is bij 1 of 2 gebruikers gemakkelijk te doen. Maar als je een grote omgeving hebt, kan je dit gewoon niet even doorvoeren.
OpenVPN is eigenlijk niet beheersbaar, ondanks dat het een mooie technologie is.
25-08-2016, 13:41 door Anoniem
Door Anoniem:
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256
Door Anoniem:
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256

Let op, dit moet aan zowel de server- and clientkant aangepast worden!
En hier komt juist ook het grote nadeel naar voren van OpenVPN... Er is geen centrale management mogelijk. Dit is bij 1 of 2 gebruikers gemakkelijk te doen. Maar als je een grote omgeving hebt, kan je dit gewoon niet even doorvoeren.
OpenVPN is eigenlijk niet beheersbaar, ondanks dat het een mooie technologie is.

Dat is prima te doen, hooguit op een wat andere manier dan je gewend bent. Je start gewoon een tweede OpenVPN proces (mogelijk zelfs op een andere poort op dezelfde machine) en geeft deze een andere cipher option in zijn config. Vervolgens voorzie je je clients één voor een van een config met de nieuwe server, en de nieuwe cipher.

(Daarnaast, OpenVPN 2.4 krijgt cipher negotiation, waardoor je zo'n transitie op een meer traditionele manier kunt doen. Maar dat is helemaal niet nodig voor een naadloze transitie. Het enige wat je nodig hebt is een beheerder die weet wat hij doet.)
25-08-2016, 14:46 door Anoniem
Je zou ook kunnen zeggen dat javascript de boosdoener is.
Vrijwel elke keer is het weer javascript die een bepaalde aanval in de praktijk mogelijk maakt.

Firefox heeft ooit een keer besloten dat "javascript default aan staat in je browser, omdat je toch vast wel de website vertrouwt waar je verbinding mee maakt, of anders moet je niet op die website gaan."
Maar daar gaat het dus niet alleen maar om! Het gaat er ook om, dat javascript allerlei aanvallen door derden mogelijk maakt die onafhankelijk zijn van de website die je bezoekt.

Als bijv. banken veiligheid heel belangrijk vinden, dan moeten ze een internetbankier-applicatie maken zonder javascript.
Klanten moeten dan misschien wat vaker op een bevestigingsknopje klikken, maar veiliger is het wel...
25-08-2016, 15:59 door Anoniem
Door Anoniem:
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256
Door Anoniem:
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256

Let op, dit moet aan zowel de server- and clientkant aangepast worden!
En hier komt juist ook het grote nadeel naar voren van OpenVPN... Er is geen centrale management mogelijk. Dit is bij 1 of 2 gebruikers gemakkelijk te doen. Maar als je een grote omgeving hebt, kan je dit gewoon niet even doorvoeren.
OpenVPN is eigenlijk niet beheersbaar, ondanks dat het een mooie technologie is.


Is dat een probleem van de technologie, of van de governance erond?

Voor mijn OpenVPN clients wordt de config automatisch geprovisioneerd via Puppet.
Zowel config als access certificaten worden hierdoor vernieuwd.
Een fallback naar eerdere config is mogelijk bij issues.

Nooit problemen gehad met het beheer van een 70-tal clients...
26-08-2016, 11:16 door Anoniem
Door Anoniem:
Door Anoniem:
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256
Door Anoniem:
Door Anoniem: Voor openvpn:

cipher AES-256-CBC
auth SHA256

Let op, dit moet aan zowel de server- and clientkant aangepast worden!
En hier komt juist ook het grote nadeel naar voren van OpenVPN... Er is geen centrale management mogelijk. Dit is bij 1 of 2 gebruikers gemakkelijk te doen. Maar als je een grote omgeving hebt, kan je dit gewoon niet even doorvoeren.
OpenVPN is eigenlijk niet beheersbaar, ondanks dat het een mooie technologie is.


Is dat een probleem van de technologie, of van de governance erond?

Voor mijn OpenVPN clients wordt de config automatisch geprovisioneerd via Puppet.
Zowel config als access certificaten worden hierdoor vernieuwd.
Een fallback naar eerdere config is mogelijk bij issues.

Nooit problemen gehad met het beheer van een 70-tal clients...

Dan beheer je waarschijnlijk geen Windows, routers met client VPN functionaliteit. en/of mobiele devices als client.
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.