Wladimir Palant, der Entwickler von Adblock Plus, () im Chromium-basierten Webbrowser Safepay, der Teil des Antivirus-Pakets Bitdefender Total Security 2020 ist und darauf abzielt, die Sicherheit der Nutzer im Internet zu erhöhen (z. B. wird zusätzliche Isolation beim Zugriff auf Banken und Zahlungssysteme bereitgestellt). Die Schwachstelle ermöglicht es den Webseiten, die im Browser geöffnet werden, Arbiträbcodes auf Betriebssystemebene auszuführen.
Das Problem besteht darin, dass der Bitdefender Antivirus HTTPS-Datenverkehr lokal abfängt, indem er das Original-TLS-Zertifikat der Website manipuliert. Auf dem System des Benutzers wird ein zusätzliches Root-Zertifikat installiert, das die Funktionsweise des Inspektionssystems für den Datenverkehr verbirgt. Der Antivirus greift in den geschützten Datenverkehr ein und fügt auf bestimmten Seiten eigenen JavaScript-Code ein, um die Safe Search-Funktion zu implementieren. Bei Problemen mit dem Zertifikat der gesicherten Verbindung ersetzt er die angezeigte Fehlermeldung durch eine eigene Seite. Da die neue Fehlermeldung im Namen des geöffneten Servers ausgegeben wird, haben andere Seiten dieses Servers vollständigen Zugriff auf den von Bitdefender eingefügten Inhalt.
Beim Öffnen einer von einem Angreifer kontrollierten Website kann diese Website eine XMLHttpRequest-Anfrage sendet und dabei ein Problem mit dem HTTPS-Zertifikat simulieren, was zu einer Seite mit einer von Bitdefender gefälschten Fehlermeldung führt. Da die Fehlerseite im Kontext der Domain des Angreifers geöffnet wird, kann dieser den Inhalt der gefälschten Seite mit den Bitdefender-Parametern lesen. Auf der gefälschten Bitdefender-Seite befindet sich auch ein Sitzungsschlüssel, der es über die interne API von Bitdefender ermöglicht, eine separate Safepay-Browsersitzung zu starten, wobei beliebige Befehlszeilenparameter angegeben werden können, um beliebige Systembefehle mit dem Flag "—utility-cmd-prefix" auszuführen. Ein Beispiel für einen Exploit (param1 und param2 sind Werte, die von der Fehlerseite erhalten wurden):
var request = new XMLHttpRequest();
request.open("POST", Math.random());
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.setRequestHeader("BDNDSS_B67EA559F21B487F861FDA8A44F01C50", param1);
request.setRequestHeader("BDNDCA_BBACF84D61A04F9AA66019A14B035478", param2);
request.setRequestHeader("BDNDWB_5056E556833D49C1AF4085CB254FC242", "obk.run");
request.setRequestHeader("BDNDOK_4E961A95B7B44CBCA1907D3D3643370D", location.href);
request.send("data:text/html,nada —utility-cmd-prefix=\"cmd.exe /k whoami & echo\"»);
Wir erinnern daran, dass eine Studie aus dem Jahr 2017 , dass 24 von 26 getesteten Antivirenprodukten, die HTTPS-Traffic durch Zertifikatüberprüfung inspizieren, das allgemeine Sicherheitsniveau der HTTPS-Verbindung verringern.
Aktuelle Verschlüsselungssets wurden nur in 11 von 26 Produkten bereitgestellt. 5 Systeme führten keine Zertifikatsverifizierung durch (Kaspersky Internet Security 16 Mac, NOD32 AV 9, CYBERsitter, Net Nanny 7 Win, Net Nanny 7 Mac). Die Produkte Kaspersky Internet Security und Total Security waren anfällig für Angriffe , während die Produkte AVG, Bitdefender und Bullguard ebenfalls Angriffe erlebten. und . Das Produkt Dr.Web Antivirus 11 erlaubt einen Rückfall auf unsichere Exportverschlüsselungen (Angriff ).
Quelle: opennet.ru
