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.
Firefox bietet den Nur-HTTPS-Modus, bei dem Webseiten immer via HTTPS-verschlüsselter Verbindung aufgerufen werden. Firefox Release und ESR Version unterscheiden sich: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
Da seriöse Downloads in der Regel über HTTPS angeboten werden, ist diese Option immer empfehlenswert in allen user.js Konfigurationen aktiviert.
(Es gibt ein paar kleine Bugs in der Implementierung, die diese Sicherheitsfeature umgehen können. Man kann z. B. den HTTP Link auf das Download-Symbol ziehen... aber trotzdem ist es bei uns aktiviert.)
security.ssl.require_safe_negotiation | = true |
security.ssl.treat_unsafe_negotiation_as_broken | = 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).