Der Verdacht stand zwar schon länger im Raum, doch war er eher theoretischer Art: Die Verschlüsselungsverfahren MD5 und RC4 müssen als geknackt gelten. Seit den NSA-Enthüllungen von Edward Snowden ist dies Gewissheit. Um weiter einigermaßen sicher im Internet Daten austauschen zu können, sollte man diese Verfahren meiden. Wie man sie in Firefox und Chrome bzw. Chromium und dem eigenen Apache-Webserver deaktiviert, möchte ich im Folgenden erkläutern.

 

Firefox und Chrome/Chromium absichern

Wie man bei Firefox in den erweiterten Einstellungen RC4-basierte Verschlüsselung deaktiviert.Um die verwundbaren Verschlüsselungsarten festzustellen, kann eine Seite der Universität Hannover nutzen. Sie zeigt die vom Browser unterstützten Schlüssel an. Sollten sich darin Varianten mit RC4 finden, sollte man sie verbieten. Unter Firefox kann man ganz einfach "about:config" in die Adresszeile eingeben, die Warnung bestätigen und nach "RC4" suchen. Dort muss man dann auf jeden einzelnen Eintrag rechts klicken und "umschalten" auswählen. Der Wert ändert sich dann zu "false" (siehe Bild).

Für Chrome/Chromium ist die Sache etwas komplizierter. Hier müssen die entsprechenden Schlüssel beim Programmstart als Parameter übergeben werden. Ein Eintrag auf stackexchange.com erläutert das Vorgehen sehr gut. Am besten, man hinterlegt die Startparameter gleich im Systemaufruf des Programms.

Um den Erfolg zu testen, sollte man den obigen SSL-Test erneut durchführen. Alle Schlüssel mit RC4 (und auch MD5) im Namen sollten jetzt verschwunden sein!

 

Apache absichern

In Zeiten von sparsamen bis sparsamsten Mini-Rechnern, ausgehend vom Raspberry Pi bis zu ausgewachsenen PCs mit Desktop-Prozessoren mit 11 Watt Leistungsaufnahme im Leerlauf (siehe Bauvorschläge), und den aktuellen Datenschutzskandalen, ist ein eigener Server oft sehr verlockend. Umso interessanter wird die Sache, wenn man auch noch Synchronisation von Kalender, Kontakten, Aufgaben und Dateien darauf hosten kann und die Kontrolle darüber behält (siehe dieser Artikel). Den sehr weit verbreiteten Webserver Apache unabhängig vom benutzten Browser auf die sicheren Verschlüsselungsverfahren einzurichten ist dabei mehr Pflicht denn Kür.

Um festzustellen, welche Schlüssel serverseitig akzeptiert werden, kann man entweder das Komandozeilenprogramm sslscan (verfügbar in den meisten Repositories der Linuxdistributionen) oder den Webdienst von SSLLabs nutzen. Sollte man bei Letzterem nicht in der Liste der gescannten Seiten auftauchen wollen, so muss man den Haken bei "Do not show the results on the boards" setzen! Tauchen dort verwundbare Schlüssel auf, so besteht Handlungsbedarf.

Um die Liste der Schlüssel einzuschränken, muss man die Konfigurationsdatei des Webservers anpassen. Üblicherweise findet man sie bei der Standardinstallation oft unter

/etc/apache2/sites-available/default-ssl

Man kann entweder eine Minimalvariante von

SSLCipherSuite HIGH:!aNULL:!MD5

oder eine etwas längere (und noch stärker einschränkende) Variante

SSLProtocol all -SSLv2 -SSLv3
SSLCompression Off
SSLHonorCipherOrder on
SSLCipherSuite "EECDH+AESGCM EDH+AESGCM !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"

am Ende der Datei einfügen. Letztere deaktiviert neben dem als unsicher geltenden Verschlüsselungsprotokoll SSLv2 auch die bisher als sicher erachtete Version SSLv3 und lässt im Prinzip nur noch Schlüssel zu, welche über ellipische Kurven hochgradige Verschlüsselung nach dem Diffie-Hellman-Verfahren erlaubt. Dies ermöglicht eine Technik namens (Perfect) Forward Secrecy (oft mit FS bezeichnet), bei dem es nicht möglich ist, aus einer entschlüsselten auf die restlichen Sitzungen zurück zu schließen, weshalb es dringend eingesetzt werden sollte. Umso erfolgversprechender ist das bei einem Server, den man selbst (am besten auch physisch) unter Kontrolle hat, da man so "echte" Ende-zu-Ende-Verschlüsselung sicherstellen kann.

Diese Maßnahmen sollten die Horrormeldungen bezüglich Verschlüsselung im Internet deutlich entschärfen. Nutzt man auf die erläuterte Weise nur hochgradige Verschlüsselung, für welche zumindest keine Schwächung oder Lücken bekannt sind, so ist es momentan auch für die Geheimdienste, soweit bekannt (zumindest auf diesem Weg), unmöglich zu lauschen.