
macOS-Evaluator für CVE-2024-44133 gängiger Browser
Bewertet die Anfälligkeit gängiger macOS-Browser gegenüber CVE-2024-44133.
Enthält außerdem das HTML, das einen Screenshot aufnimmt und ihn zusammen mit der Standortermittlung herunterlädt.

Um den Evaluator auszuführen, der CVE-2024-44133 auf allen gängigen macOS-Browsern bewertet, führen Sie Folgendes aus:
python3 -m pip install -r ./requirements.txt
./hm-surf-eval.py
Nach der Ausführung bewertet das Tool die Fähigkeiten zum TCC-Bypass aller gängigen macOS-Browser.
Die Datei hm-surf.html ist eine Beispiel-HTML-Seite, die CVE-2024-44133 demonstriert.
Sie greift lediglich auf Kamera und Standort zu, zeigt den Standort an (absichtlich mit geringer Genauigkeit) und lädt den Kamera-Screenshot herunter (sie könnte ihn aber genauso gut auf einem Server speichern).
Diese Datei ist für sich genommen kein Exploit und erfordert, dass Kamera-, Mikrofon- und Standortzugriff für den Browser aktiviert sind, z. B. indem ein lokaler Angreifer die browserspezifischen Einstellungen überschreibt.
Diese Fähigkeit kann mit dem Evaluator bewertet werden.
Um die HTML-Seite bequem anzusehen, können Sie ein beliebiges Werkzeug verwenden, z. B. htmlpreview.
Die Programmierung eines Evaluators ist recht einfach - Sie erben von BrowserEvaluatorBase und implementieren zwei Methoden:
get_browser_name - ruft einen menschenlesbaren Browsernamen ab.evaluate - erhält den username und dessen home_dir und bewertet die Anfälligkeit. Die Rückgabe von None bedeutet, dass der Browser nicht anfällig ist, während die Rückgabe einer BrowserResults-Instanz anfällige Ergebnisse liefert.Beachten Sie, dass es auch eine Basisklasse ChromiumEvaluatorBase für Chromium-basierte Browser gibt, was bedeutet, dass Sie die übliche Methode get_browser_name sowie eine Methode get_preference_filepath implementieren müssen, die einen Präferenzdateipfad für das angegebene Home-Verzeichnis zurückgibt. Sie müssen evaluate für Chromium-basierte Browser nicht implementieren; das wird von der Basisklasse übernommen.