Skip to content

Firefox verbessert den Schutz der Privatsphäre

Als das Tor-Projekt den Tor-Browser entwarf, machten sie sich viele Gedanken zum Schutz der Privatsphäre. Sie versuchten jegliche Gefahren zu identifizieren und diese zu umschiffen. Daraus entstand das Design zum Tor-Browser. Seitdem versuchen die Entwickler, die Schwachstellen in Bezug auf die Privatsphäre im Mozilla Firefox im Griff zu behalten. Neben dem Tor-Button kommen viele individuelle Patches zum Einsatz. Die meisten davon wurden bisher von Mozilla nicht in den Firefox eingepflegt. Doch dies ändert sich jetzt.

Seit Anfang Mai gibt es im Wiki von Mozilla eine Seite, die sich Tor Uplift nennt. Mozilla fängt nämlich nun doch an, Patches vom Tor-Projekt in den Firefox wieder einzubauen. Auf der Wikiseite wird der Fortschritt festgehalten. Bisher kamen 26 Änderungen weiter und an sechs wird gerade aktiv gearbeitet. Sören Hentzschel beschreibt in seinem Blogbeitrag, welche neuen Optionen es im Firefox gibt und wie diese aktiviert werden können.

Insgesamt ist das ein guter Schritt der Entwickler, den Schutz der Privatsphäre im Firefox weiter zu erhöhen. Wie Sören in seinem Beitrag schreibt, engagiert sich Mozilla auch weiterhin stark im Tor-Projekt. Weiter so! :-)

Neues TLS-Zertifikat

Der Webserver hat seit heute ein neues Zertifikat. Ich bin jetzt von CAcert auf Let’s Encrypt umgestiegen. Bei den Übernauten ist die Einrichtung sehr einfach. Nachdem die Befehle uberspace-letsencrypt, letsencrypt certonly und uberspace-prepare-certificate eingegeben wurden, war alles fertig.

Wenn ihr das Zertifikat prüfen wollt, hier ist der SHA-256-Hash:

B8:8A:B3:34:0E:5F:97:6A:88:F0:A7:E7:91:73:F4:50:42:29:0A:73:07:54:68:2D:96:EB:36:29:BB:FC:58:A8

Browser gegen LogJam absichern

Der macht eine Meldung über die LogJam-Schwachstelle die Runde. Ein Besuch der Webseite WeakDH.org offenbarte auch bei meinen Browser-Einstellungen Schwächen. Doch wie sichere ich den gegen die Attacke?

Im Firefox ist das recht einfach: In die Adresszeile einfach about:config eingeben und dann in den Konfigurationseinstellungen nach dem Wert .dhe suchen. Der Punkt vor dhe ist wichtig, dass nur die relevanten Algorithmen gefunden werden. Alle Werte (je nach Version sind das zwei oder mehr) werden auf false gesetzt. WeakDH.org sollte nun keine Warnung mehr anzeigen.

Einstellungen im Tor Browser Bundle

Im Chrome oder Chromium gibt es keine Möglichkeit, die Einstellung über ein Menü zu machen. Der beste Weg, den ich fand, ist, zunächst die Cipher-Suite-Detail-Seite zu besuchen. Dort findet ihr eine Tabelle mit Algorithmen, die euer Browser unterstützt. In der Spalte Spec stehen Zahlen-/Buchstaben-Kombinationen. So findet sich bei mir beispielsweise der Eintrag: (00,0a). Sucht nun nach allen Einträgen, bei denen der Cipher-Suite-Name mit DHE (nicht ECHDE) beginnt und entfernt die Klammern und das Komma von der Spec. Nun fügt ihr noch ein 0x an den Anfang. Im obigen Beispiel wird also aus (00,0a) ein 0x000a. Diese unerwünschten Algorithmen werden als Option dem Chrome oder Chromium übergeben: google-chrome --cipher-suite-blacklist=0x009e,0x0033,0x0032,0x0039,0x0004,0x0005 ist das bei meinem Browser.

Wie sieht es bei anderen Browsern aus? Meines Wissens kann man den Internet Explorer nicht so detailliert steuern. Ich freue mich über Hinweise und nehme die gern mit in den Beitrag auf. Schließlich sollte das Ergebnis der Webseite dann wie unten aussehen. :-)

Keine Angriffsmöglichkeit durch LogJam

Lenovo-Laptops mit SuperFish-AdWare

Die aktuellen Nachrichten über Wanzen in Festplatten oder geknackte SIM-Karten hören sich auf der einen Seite sehr bedrohlich an, auf der anderen Seite werden viele dies abtun, als Verschwörungstheorie oder »Betrifft-mich-nicht«. Doch dann war von Barbies zu lesen, die alles mithören und ins Internet übertragen und Samsung warnt, vor seinen Fernsehgeräten nichts Privates zu erzählen. Im letzteren Fall werden die Daten im Klartext übertragen und damit kann jeder mithören, was vor dem gerät erzählt wird. Der große Lauschangriff mal ganz anders.

Ansicht des Zertifikats im Zertifikatsmanager
Detailansicht des Zertifikats von Chris Palmer (@fugueish)
Lenovo reiht sich nun ebenfalls in die Liste der Hersteller ein, die offensichtlich wenig auf die Privatsphäre der Käufer geben. Verschiedene Medien (The Next Web, Forbes, Heise, ZEIT Online, Golem u.a.) meldeten, dass Lenovo auf Laptops die Software SuperFish Visual Discovery vorinstalliert. Dies ist Adware, d. h. sie blendet Werbung auf Webseiten ein. Dies wird dadurch bewerkstelligt, indem ein Schnippsel JavaScript geladen wird und die unerwünschten Inhalte überträgt. Doch damit gaben sich die Hersteller der Software nicht zufrieden. In die vorab installierten und damit vertrauenswürdigen Zertifikate wurde auch ein Zertifikat eingefügt. Immer wenn nun eine verschlüsselte, sichere Webseite besucht wird, kommt das Zertifikat nicht von der ursprünglichen Webseite, sondern von der SuperFish-Software. Damit kann die Software den verschlüsselten Datenverkehr mitlesen und diese Daten auch manipulieren. Dieser so genannte Man-in-the-Middle-Angriff ist eine klassische Angriffstechnologie und dient in der Regel nicht guten Zwecken.
Code zur Installation des Zertifikats
Code, der versucht, das Zertifikat in verschiedenen Browsern zu installieren (via @supersat)

Die EFF beobachtet seit längerem den Status von Zertifikaten mit dem SSL Observatory und meldete, dass sie in dem Datensatz 44.000 dieser SuperFish-Mitm-Zertifikate fanden. Das Bild links zeigt ein wenig Quellcode. Demnach versucht die Software ihr Zertifikat in verschiedene Browser zu importieren. Das erklärt auch, warum u.a. auch Firefox betroffen ist. Denn im Gegensatz zu Google Chrome nutzt dieser nicht die Zertifikatsverwaltung von Windows.

Robert Graham hat neben anderen Forschern das Zertifikat aus der Software extrahiert und in kurzer Zeit das Passwort ermittelt (Das Passwort »komodia« liefert dann auch den Hinweis auf den Komodia SSL Digestor). Wie er schreibt, benötigte er keine Spezialkenntnisse. Ein geschickter Angreifer kann dies ebenfalls tun. Damit lässt sich dann auch für Dritte sämtliche verschlüsselte Kommunikation brechen. Aber der Superfish Software scheint auch der Status fremder Zertifikate egal zu sein. In einer Diskussion auf Hacker News berichtete jemand, dass die Software beliebige (auch ungültige) fremde Zertifikate akzeptiert. Ähnliches geht auch mit fakehost.lenovo.com oder CanIBesuperFished.com. Insgesamt reißt die Software damit ein riesengroßes Loch in die Sicherheit der Rechner. Mich erinnerte das spontan an den Fall von Sony, die auch Malware auf die Rechner installieren.

Was lässt sich nun gegen die Infektion tun? Die Software selbst ist in der Liste der installierten Programme von Windows zu finden und kann dort einfach deinstalliert werden. Allerdings bleiben eine Reihe von Einträgen in der Registry und das Zertifikat noch erhalten. Hier ist dann Handarbeit angesagt. Dazu müsst ihr den certmgr von Windows öffnen und das Zertifikat entfernen. Bei der EFF gibt es eine Schritt-für-Schritt-Anleitung, wie das zu tun ist.

Lenovo hat mittlerweile reagiert und einerseits ein schönes Statement bei Twitter abgegeben:

Daneben gibt es eine Veröffentlichung, die den Vorfall klar als Vulnerability mit hohem Impact benennt. Die Veröffentlichung hat auch eine Liste der Produkte, die betroffen sind.

ZenMate als Anonymisierungsprogramm

Kürzlich führte ich einen Workshop zum technischen Datenschutz und Verschlüsselung durch. Während Workshops zeigte ich den Teilnehmern verschiedene Werkzeuge, unter anderem auch den Tor Browser. Dabei meinte ein Teilnehmer, dass er ZenMate einsetzt und dies genauso sicher wie der Tor Browser ist.

Wechsel des Orts bei ZenMateWas ist ZenMate? Auf der Webseite verspricht die Anwendung Verschlüsselung sowie anonymes Browsen. Der Internetverkehr wird durch virtuelle private Netze (VPNs) geleitet. Das Plugin lässt sich einfach installieren und fragt anschliessend nach einer E-Mail-Adresse. Nachdem eine E-Mail-Adresse eingegeben wurde, wird das Plugin nach einer kleinen Wartezeit aktiv. In der Browserleiste im Firefox erscheint ein grünes Schild und nach einem Klick lässt sich rechts unten der Ort wechseln (Change Location). Auf Empfehlung des Teilnehmers wählten wir im Kurs Hong-Kong aus und fühlten uns geschützt. Doch wie sieht die Realität aus?

Ich nutze für Tests auf Anonymisierung meist die Seite IP-Check. Nach dem Start des Tests und einer kurzen Wartezeit ergab sich folgendes Bild:

Anzeige der realen IP-Adresse in ZenMate

Das Plugin leitet zwar die Verbindungen über das VPN weiter und nutzt einen Server in Hong-Kong (oder auch anderen Städten). Weitere Browsereinstellungen bleiben jedoch unangetastet. Im Beispiel oben war es das Flash-Plugin, was in vielen Browsern standardmäßig aktiv ist, das sogar die reale, gerade verwendete IP-Adresse preisgegeben hat. Mit der manuellen Deaktivierung von Flash wird die eigene IP-Adresse nicht mehr unmittelbar erkannt. Allerdings bleiben noch genügend andere Möglichkeiten übrig das Onlineverhalten der Benutzer zu verfolgen.

Letztlich stecken die Entwickler des Tor Browsers sehr viel Zeit und Energie, Lücken im Firefox zu schließen. Daher wäre es schon sehr verwunderlich, wenn sich gleiches Ziel, nämlich anonymes Browsen, mit einem einfachen Plugin erreichen ließe.

Wer also ZenMate einsetzen will, sollte sich der Risiken im Klaren sein und ggf. selbst weitere Anpassungen im Browser vornehmen. Eventuell funktioniert die Kombination des JondoFox-Profils mit ZenMate besser. Diesen Versuch überlasse ich euch. Ihr könnt gern einen Kommentar hinterlassen. :-)

Wie funktioniert eigentlich Heartbleed

Lest ihr regelmäßig Bugreports oder Meldungen über Schwachstellen bei SSL/TLS? Wie fühlt ihr euch so? Zur Erinnerung:

SSL added and removed here!
Ausschnitt aus einer Folie aus dem MUSCULAR-Programm der NSA

Das heißt, drei Monate in Folge gab es schwere Sicherheitslücken in Software zur Verschlüsselung. Ganz unwillkürlich fühlt man sich an die Folien aus dem NSA-Programm MUSCULAR erinnert.

Die letztgenannte Schwachstelle ist vermutlich die bislang schwerste. Denn damit ist es möglich, den Arbeitsspeicher eines Computers auszulesen. Dies funktioniert sowohl auf der Seite des Servers wie auch beim Clientprogramm. Dazu ist es notwendig, dass das Programm OpenSSL verwendet und eine Erweiterung von SSL namens Heartbeat aktiviert hat. Dies ist beispielsweise bei Android in der Version 4.1.1 der Fall. Mozilla Firefox hingegen nutzt die NSS-Bibliothek und ist nicht betroffen. Die Webserver nutzen hingegen recht oft die OpenSSL-Bibliothek und sind damit betroffen, falls die Version 1.0.1 bis 1.0.1f von OpenSSL verwendet wird. Sollte jemand von euch die Software nutzen, so upgraded auf mindestens 1.0.1g oder deaktiviert Heartbeat in OpenSSL. Gerade letzteres kann man aus meiner Sicht problemlos tun. Denn bisher fand ich keinen sinnvollen Anwendungsfall für Heartbeat.

Doch wie funktioniert diese Lücke eigentlich? Heartbeat (RFC 6520) ist eine Erweiterung für TLS. Ein Teilnehmer einer Verbindung sendet beliebige Daten an den Empfänger. Dieser antwortet mit einer Kopie dieser Daten und zeigt somit, dass die Verbindung noch steht und alles in Ordnung ist. Das Problem dabei ist, dass in einer Anfrage zwei Längenfelder vorhanden sind. Ein Angreifer sendet einfach ein Byte Daten und behauptet, er hätte 64 kB gesendet. OpenSSL liest nun die 64 kB aus dem eigenen Puffer und sendet die Daten zurück an den Angreifer. Der Angreifer kann den Angriff immer und immer wieder starten und erhält so eventuell immer wieder ein neues Stück Arbeitsspeicher (siehe Kommentar von Florian Diesch). Bruce Schneier hat mit seinen Worten vollkommen recht:

Catastrophic" is the right word. On the scale of 1 to 10, this is an 11.
https://www.schneier.com/blog/archives/2014/04/heartbleed.html

Ich hatte in meinem 30C3-Vortrag schon ein OpenSSL-Beispiel reingenommen. Das sollte zeigen, wie kompliziert es sein kann, mit der Software sicheren Code zu schreiben. Auch andere sind, über die Codequalität gestolpert. Daher sind Leute gefragt, die einen detaillierten Blick auf OpenSSL werfen und die Software verbessern. Dazu zählt auch die bessere Lesbarkeit des Codes oder gute Dokumentation.

Wenn ihr wissen wollt, ob ihr betroffen seit, schaut lokal auf die OpenSSL-Version, nutzt die Zeile openssl s_client -connect example.com:443 -tlsextdebug 2>&1| grep ‘server extension “heartbeat” (id=15)’ || echo safe oder verwendet den Testservice von Lutz Donnerhacke oder Filippo Valsorda.

Weiterlesen:

Passwort und Nutzername im Dump der Daten von Yahoo! Mail

Firefox 27 mit TLS 1.2

Jetzt ist der Zeitpunkt gekommen, an dem ich meine Anleitung zu sicheren SSL-Einstellungen löschen kann. Der aktuelle Firefox ist in der Version 27 erschienen. Wie angekündigt, unterstützt der Browser nun standardmäßig TLS 1.1 und 1.2. Damit werden die TLS-Einstellungen über about:config hinfällig. Die Seite How’s my SSL zeigt den Firefox mit Standardeinstellungen als Probably OK an. Sogar Seiten mit AES im GCM-Modus werden korrekt verschlüsselt.

tweetbackcheck