Viele Websites bieten inzwischen HTTPS-Verschlüsselung an. Diese sichere Datenübertragung wird häufig nicht genutzt, obwohl es möglich wäre. Mit wenig Aufwand lässt sich die Nutzung von HTTPS für Websites erzwingen, die diese Option anbieten.
Oft gibt man aus Faulheit in der URL Leiste des Browsers nur "www.privacy-handbuch.de" ein oder noch einfacher "privacy-handbuch.de". Daraufhin sendet der Browser einen einfachen HTTP Request an den Webserver. Gut konfigurierte Webserver antworten mit einem 301 Status (Redirect Response) und schicken den Surfer auf die HTTPS verschlüsselte Webseite, aber das ist nicht immer der Fall. Außerdem ist der unverschlüsselte Response auf dem Weg manipulierbar.
Mit dem HTTPS-First-Mode kann man das Standardverhalten ändern. Wenn man diesen Mode aktiviert, wird Firefox bei Eingabe einer verkürzten URL zuerst die HTTPS Seite probieren und bei einem Fehler automatisch auf die HTTP Version wechseln. Das ist ein bisschen sicherer.
Denn HTTPS-First-Mode aktiviert man unter "about:config" mit folgender Einstellung:
dom.security.https_first = trueDer Nur-HTTPS-Modus (bzw. https-only-mode) ist konsequenter. Wenn er aktiviert ist, wird Firefox immer HTTPS verwenden und einen Fehler anzeigen, wenn das nicht möglich ist.
(Wenn HTTPS-First und Nur-HTTPS gleichzeitig aktiviert werden, gewinnt der strengere Nur-HTTPS-Mode.)
Den HTTPS-Only-Mode kann man in den grafischen Einstellungen in der Sektion "Datenschutz und Sicherheit" ganz unten aktivieren und Ausnahmen aktivieren: Alternativ ist es möglich, unter "about:config" folgenden Wert setzen: dom.security.https_only_mode = trueAußerdem kann man Ausnahmen für Webseiten definieren, für die kein HTTPS erzwungen werden soll. Die Konfiguration des Routers ist somit problemlos möglich. ;-)
Damit die Ausnahmen für der HTTPS-only Mode beim Beenden des Browsers nicht gelöscht werden, ist sicherzustellen, dass folgender Wert unter "about:config" gesetzt ist: privacy.clearOnShutdown.siteSettings = false
Es ist aber nicht unbedingt nötig, für alle HTTP Seiten Ausnahmen zu definieren. Wenn keine Ausnahme definiert wurde und eine HTTPS Verbindung nicht möglich ist, wird eine Warnung angezeigt. Man kann mit einem Klick die unverschlüsselte HTTP Seite trotzdem aufrufen:
Für lokale Verbindungen zum eigenen Rechner wird kein HTTPS erzwungen. Man kann z.B. den Druckserver CUPS unter Linux wie gewohnt im Browser administrieren.
Wenn man auch für http://localhost oder http://127.0.0.1 ein Upgrade auf HTTPS erzwingen möchte, könnte man folgenden Wert setzen (aber warum?): dom.security.https_only_mode.upgrade_local = true
Wenn einige Webseiten mit dieser Einstellung nicht aufrufbar sind, dann sitzt ein Man-in-the-Middle in der TLS-Verschlüsselung (das kann z.B. ein Virenscanner sein).
Enterprise Root Certificates werden bei Firefox die Root Zertifikate des Betriebssystems genannt. Es gibt unter Umständen Gründe, warum Firefox diese Root Zertifikate zusätzlich zur Validierung von HTTPS Verbindungen nutzen sollte. In Firmen ist es beispw. oft üblich eigene Root Zertifikate für interne Webseiten und HTTPS Proxy Server zu verteilen. Wenn Virenscanner als MitM den HTTPS Traffic scannen wollen, nutzen sie auch oft diesen Weg.
Es gibt aber auch Gründe, die dagegen sprechen, diese Zertifikate zu nutzen und nur dem Zertifikatsspeicher von Firefox zu vertrauen. Man steuert das Verhalten mit der Variable: security.enterprise_roots.enabled = false (Default)
Wenn bei einer HTTPS Verbindung der Zertifikatsfehler "CertError: Man-in-the-Middle" auftritt, aktiviert Firefox automatisch die "Enterprise Root Certificates" und versucht erneut, das fehlerhafte Zertifikat zu validieren. Diese automatische Aktivierung verhindert man mit: security.certerrors.mitm.auto_enable_enterprise_roots = false Bei Bedarf kann man Verwendung von Enterprise Root Certificates, die im Betriebssystem installiert wurden, selbst aktivieren (z.B. in Firmenumgebungen).TLS Cipher sollte man im Browser im allgemeinen nicht modifizieren. Wenn der Browser eine SSL-verschlüsselte Verbindung zu einem Webserver aufbaut, sendet er eine Liste der unterstützten TLS-Features, Cipher und der nutzbaren elliptischen Kurven für EC-Crypto. Die Reihenfolge und Inhalt ist unterschiedlich für verschiedene Browser und Versionen.
Wenn man an den SSL-Ciphern rumspielt und schwache Cipher wie AES-CBC-SHA deaktiviert, kreiert man möglicherweise ein individuelles Erkennungsmerkmal anhand dessen man beim Aufruf einer verschlüsselten Webseite wiedererkennbar ist.
Deshalb ist es für spurenamres Surfen keine gute Empfehlung, an den Einstellungen für TLS Ciphern rumzuspielen. Es ist besser, einen aktuellen Firefox bzw. Firefox ESR zu verwenden und es bei den Einstellungen der Entwickler der NSS Crypto Lib zu belassen.