# HTTPS Everywhere

HTTPS Everywhere ist ein Browser-Plug-in für die Webbrowser: Mozilla Firefox, Opera und seit 2012 auch für Google Chrome, mit dem Ziel, die Verbindungen zu Websites automatisch verschlüsselt anzufordern. Es wird als freie Software von der Electronic Frontier Foundation (EFF) in Zusammenarbeit mit dem Tor Project entwickelt. Da die meisten Browser inzwischen auch ohne Plug-in so eingestellt werden können, dass sie nur noch HTTPS-Seiten akzeptieren, wurde die Entwicklung von HTTPS Everywhere Ende 2022 eingestellt.

## Funktionsweise

Standardmäßig werden Verbindungen zu den meisten Websites über das unverschlüsselte HTTP-Protokoll aufgebaut. Das erlaubt es Angreifern, den Netzwerkverkehr abzuhören oder sogar zu manipulieren. Um dem entgegenzuwirken, bieten viele Website-Betreiber auch eine verschlüsselte Verbindung über HTTPS an. In den Fällen, in denen die Verwendung der verschlüsselten Verbindung optional ist, bleibt es dem Benutzer überlassen, darauf zu achten, dass die angeforderte Website per HTTPS übertragen wird.
An dieser Stelle nimmt HTTPS Everywhere dem Benutzer die Arbeit ab und ersetzt HTTP-Anfragen durch HTTPS-Anfragen, sofern der Server dies unterstützt. Das funktioniert mit den Seiten, die von der EFF auf HTTPS-Tauglichkeit überprüft und der internen Liste des Add-ons hinzugefügt wurden. In diesen Listen können mit Hilfe regulärer Ausdrücke auch komplexere Umleitungen definiert werden.
Solche Regeln für einzelne Websites lassen sich in den Einstellungen aktivieren oder deaktivieren. Es ist möglich, eigene Regeln (englisch rulesets) für bestimmte Websites zu definieren. Möchte man seine selbst erstellten Regeln für die anderen Nutzer veröffentlichen, besteht die Möglichkeit, diese mittels eines pull request auf GitHub zur Verfügung zu stellen oder an eine speziell dafür eingerichtete E-Mail-Adresse zu senden.
Mit Version 4.0.2 wurde eine Option implementiert, die es mit einem Klick ermöglicht, unsichere HTTP-Verbindungen komplett zu blockieren.
Seit 2020 (Version 83) kann Firefox so eingestellt werden, dass es nur HTTPS verwendet. Falls eine Website nur über das unsichere HTTP erreicht werden kann, erfolgt der Zugriff erst nach expliziter Zustimmung durch den Nutzenden. In Google Chrome gibt es diese Option seit Version 94 (September 2021). Die Entwickler von HTTPS Everywhere kündigten daraufhin an, die Entwicklung der Erweiterung Ende 2021 einzustellen.

## SSL Observatory

Ab Version 2.0 enthält das Add-on das SSL Observatory. Ist die Funktion aktiviert, überprüft das Add-on beim Aufruf einer Website das SSL-Zertifikat mit einer auf dem EFF-Server bereitgestellten Liste.
So kann überprüft werden, ob es sich bei dem ausgelieferten Zertifikat um das bekanntlich zu einer Website gehörige handelt oder möglicherweise ein Man-in-the-Middle-Angriff stattfindet. Außerdem wird der Benutzer gewarnt, wenn unsichere kryptografische Verfahren verwendet werden.
Die EFF gibt an, eintreffende Anfragen möglichst anonym zu behandeln.

## Fortwährende Regelsatz-Aktualisierungen

Mit der am 3. April 2018 veröffentlichten Version 2018.4.3 wurde die Funktion „Continual Ruleset Updates“ eingeführt. Diese Update-Funktion führt einen Regelsatz-Abgleich innerhalb von 24 Stunden durch, um stets möglichst aktuelle HTTPS-Regeln anwenden zu können. Eine Website, genannt „www.https-rulesets.org“, wurde von der EFF eigens hierfür eingerichtet. Diese Option, genannt „Regelsätze automatisch aktualisieren“, kann in den Add-on-Einstellungen deaktiviert werden. Vor Einführung dieses Update-Mechanismus wurden die Regelsätze lediglich bei App-Updates aktualisiert. Auch nach Einführung dieser Funktion werden bei App-Updates häufig sogenannte „bundled Rulesets“, also implementierte Regelsätze, mitgeliefert.

## Kritik

Durch das Prüfen der Zertifikate mittels des SSL Observatory werden die aufgerufenen Webadressen an die EFF übertragen. Diese Funktion ist daher datenschutzrechtlich bedenklich, sie muss jedoch auch explizit vom Nutzer aktiviert werden.
Es werden nicht alle Websites auf eine sichere Verbindung (HTTPS) umgestellt, wie der Name es suggeriert (englisch: HTTPS Everywhere, deutsch: HTTPS überall), sondern nur bestimmte Websites, die in der sogenannten HTTPS Everywhere Atlas-Datenbank eingetragen sind.