Thunderbird 3 - Sicherheit erhöhen

It's a maexotic world ...


Thunderbird Meine E-Mails lese ich im mutt. Ab und zu erhalte ich aber eine E-Mail von Firmen in HTML (*seufz*), die schiebe ich dann in eine IMAP-Mailbox und lese sie mit Thunderbird. Außerdem verwende ich den Thunderbird als RSS / ATOM Feedreader.

Javascript abschalten

Was mir schon in den Release Candidates sauer aufgestossen ist, und sich in der finalen Version nicht geändert hat, ist die Tatsache, dass es im Gegensatz zu den 2er Versionen nicht mehr möglich ist über die Benutzereinstellungen Javascript abzuschalten. Leider gibt es für den Thunderbird bisher auch kein NoScript Add-On, wie für den Firefox. Da braucht es dann etwas fortgeschrittenere Magie (was für Joe User wahrscheinlich eine ziemlich hohe Hürde darstellt), denn man kann Javascript natürlich immer noch abschalten.

  1. Zuerst muß man in den Config-Editor:
    Diesen erreicht man in der Menüleiste über:
    Extras > Einstellungen > Erweitert > Allgemein
    oder - je nach Version - auch über
    Bearbeiten > Einstellungen > Erweitert > Allgemein
    Dort findet sich die (im Bild rot markierte) Schaltfläche "Konfiguration bearbeiten", die man Anklicken muss.
    Thunderbird Einstellungen
  2. Als nächstes erscheint ein neues Fenster und eine Warnung. Man soll bestätigen, dass man vorsichtig ist. Das geht klar.
  3. Nun ist man im eigentlichen Konfigurationseditor. Oben im Fenster ist eine Eingabezeile, mit der man die Option filtern kann. Hier bitte "javascript" eintragen.
  4. Dies reduziert die Anzahl der Optionen auf ein paar wenige.

    Die, die interessant sind, sind:
    EinstellungsnameStatusTypWert
    javascript.allow.mailnewsStandardbooleanfalse
    javascript.enabledStandardbooleantrue
  5. Die erste der beiden Zeilen ist leider irreführend. Der Eintrag javascript.allow.mailnews ist noch vorhanden, er wird aber von Thunderbird nicht mehr verwendet. In Thunderbird 3 ist Javascript für Mails ausgeschaltet und kann auch nicht aktiviert werden.
  6. Für RSS/ATOM ist aber Javascript noch angeschaltet. Durch einen Doppelklick auf die Zeile mit javascript.enabled wird der Boole'sche Wert von true auf false umgestellt. Das Ziel ist erreicht (siehe Bild oben).
  7. Als Zeichen dafür, dass der Wert vom Benutzer modifiziert wurde, wird die Zeile jetzt in Fettschrift dargestellt.
    EinstellungsnameStatusTypWert
    javascript.enabledvom Benutzer festgelegtbooleanfalse

DNS-Prefetching abschalten

Wenn wir schon im Config-Editor sind, können wir auch gleich noch eine weitere Schwachstelle beseitigen. Mike Cardwell beschreibt in seinem Artikel "Prefetch Exposure on Thunderbird and Webmail" ein Angriffsszenario, das sowohl Thunderbird beim E-Mail-Abruf, als auch Firefox (ab Version 3.5) beim Zugriff auf Webmail-Systeme betrifft. DNS-Prefetching ist ein weiteres Beispiel dafür wie die Prefetching-Manie der Mozilla-Entwickler die Programme schwächt, nur um im Gegenzug ein paar Millisekunden Performance herauszuholen.

[Nachtrag] Was bedeutet DNS-Prefetching in diesem Zusammenhang? Der Browser anaylisert die geladene Seite und falls er Hyperlinks findet, führt er die entsprechenden DNS-Anfragen schon proaktiv aus, was er ohne Prefetching erst machen würde, wenn der Benutzer auf den Link klickt. Mozilla argumentiert damit, dass dies in mobilen Netzwerken zu einem starken Preformancegewinn führen würde und außerdem macht es Google Chrome auch. Dass beide Browser kein Prefetching für Hyperlinks in Seiten machen, die per HTTPS abgerufen wurden zeigt, dass den Entwicklern schon klar ist, was sie da eigentlich anstellen.
Durchaus sinnvoll wäre das in "DNS Prefetching for Firefox" beschriebende Vorgehen für Elemente, die zum Aufbau der Seite sowieso geladen würden. Dass Firefox das nicht tut ist ganz klar ein Designfehler und dass sie dieses Problem beheben ist mehr als wünschenwert. Dass sie es aber mit DNS-Abfragen für Hyperlinks mischen und dass man durch Abschalten von Letzterem auch die Behebung des Fehlers abschaltet, ist nicht akzeptabel

Zum Abschalten des DNS-Prefetching muss im Thunderbird und Firefox eine Konfigurationsoption hinzugefügt werden:

  1. Mit der rechte Maustaste in das Fenster des Config-Editors klicken.
  2. In dem daraufhin erscheinenden Popup-Fenster geht man auf
    Neu > Boolean
  3. Nun wird man aufgefordert einen Namen für die Eigenschaft einzugeben:
    network.dns.disablePrefetch

  4. Als nächstes muss man den Wert für die Eigenschaft setzen. true und false werden zur Auswahl angeboten. Da das Prefetching abgeschaltet werden soll, wählen wir
    true
  5. Es sollte nun folgende Zeile angezeigt werden:
    EinstellungsnameStatusTypWert
    network.dns.disablePrefetchvom Benutzer festgelegtbooleantrue
    (falls nicht, in der Filter-Eingabezeile "javascript" löschen und ggfs. durch "prefetch" ersetzen)

Damit ist das DNS-Prefetching abgeschaltet. Wie man im Bild sehen kann, habe ich auch die Option für network.prefetch-next abgeschaltet. Ist diese Option angeschaltet, können Webseiten den Browser anweisen, dass er bestimmte Daten schon im Hintergrund lädt (zB. Bilder, oder weitere Webseiten). Das ist gut gemeint, ermöglicht aber dem Benutzer Daten unterzuschieben, die er vielleicht gar nicht will, also empfehle ich auch diese Option durch einen Doppelklick abzuschalten.

[Nachtrag] Dieses Prefetching wurde zB. von Google auf den Suchergebnisseiten verwendet. Google hat den Browser angewiesen die Links hinter den ersten fünf Treffern schon einmal proaktiv zu laden, damit, wenn der Benutzer sich entscheidet den Link anzuwählen, die Seite schneller lädt. Der negative Effekt ist, dass natürlich die Seitenbetreiber darüber informiert wurden (über den Referrer), nach welchen Suchbegriffen jemand gesucht hat, dass eine ihrer Seiten in den Top 5 Ergebnissen war und auch die IP-Adresse und Browserversion des Suchers, auch wenn dieser den Link nicht anklickt.
Natürlich gäbe es durchaus sinnvolle Anwendungen, etwa in Fotoalben, so dass das nächste Bild schon im Hintergrund geladen würde, während der Benutzer noch das aktuelle betrachtet. Vielleicht findet ja eine feinere Steuerung der Erlaubnis zum Prefetching, basierend auf zB. Host-/Domainnamen, einmal Einzug in das NoScript Add-On oder ein eigens dafür geschriebenes.

Die Fenster des Config-Editors und der Benutzereinstellungen können nun geschlossen werden.




Comments

    • Posted byMartin
    • on
    Vielen Dank für die Beschreibung, genau das habe ich gesucht ;-)

    LG Martin
    Reply
    • Posted byAndreas Henrich
    • on
    es gibt mittlerweile etwas,
    -ThunderNoscript 0.1
    setzt TB 3 UND Thunderbrowse voraus,
    in Thunderbrowse auf diesen Link gehen
    http://www.thunderbrowse.com/thunderblog/download-manager.php?id=1
    Andreas
    Reply
    • Posted byAndreas Henrich
    • on
    Update--Es muss heissen ThunderbirdNoScript 0.1
    Reply