SicherheitsanfÀlligkeit in den Bluetooth-Stacks von Linux, macOS, Android und iOS, die die Manipulation von Tasteneingaben ermöglicht

Marc Newlin hat vor sieben Jahren eine Schwachstelle namens MouseJack entdeckt und kĂŒrzlich Informationen ĂŒber eine Ă€hnliche Schwachstelle (CVE-2023-45866) veröffentlicht, die Bluetooth-Stacks unter Android, Linux, macOS und iOS betrifft. Diese ermöglicht es, Tastatureingaben zu simulieren, indem AktivitĂ€ten eines EingabegerĂ€ts, das ĂŒber Bluetooth verbunden ist, nachgeahmt werden. Mit Zugang zur Tastatureingabe kann der Angreifer Aktionen ausfĂŒhren wie das Starten von Befehlen im System, das Installieren von Anwendungen und das Umleiten von Nachrichten.

Die Schwachstelle entsteht dadurch, dass die Host-HID (Human Interface Device) Treiber fĂŒr Bluetooth-GerĂ€te einen Modus haben, der es einem entfernten PeripheriegerĂ€t ermöglicht, verschlĂŒsselte Verbindungen ohne Authentifizierung zu erstellen und zu etablieren. Unter anderem können sich auf diese Weise verbundene GerĂ€te Tastaturmeldungen ĂŒbermitteln, und der HID-Stack verarbeitet diese, was es ermöglicht, eine Fernangriff auf HID-Nachrichten ohne Benutzerinteraktion durchzufĂŒhren. Der Angriff kann durchgefĂŒhrt werden, wĂ€hrend sich der Angreifer bis zu 100 Meter von seinem Ziel entfernt befindet.

Der Mechanismus zur Koppelung von GerĂ€ten ohne Authentifizierung ist in der Bluetooth-Spezifikation definiert und erlaubt es je nach Einstellung des Bluetooth-Stacks, ein GerĂ€t ohne BestĂ€tigung des Benutzers zu verbinden. In Linux muss der Bluetooth-Adapter mit dem BlueZ-Stack fĂŒr versteckte Verbindungen im Erkennungs- und Verbindungsmodus sein. In Android reicht es aus, Bluetooth zu aktivieren. In iOS und macOS muss Bluetooth eingeschaltet und eine kabellose Tastatur verbunden sein, um den Angriff durchzufĂŒhren.

Die Möglichkeit zur Eingabemanipulation wurde in Ubuntu 18.04, 20.04, 22.04 und 23.10 mit einem auf BlueZ basierenden Bluetooth-Stack demonstriert. ChromeOS ist nicht anfĂ€llig, da die Einstellungen des Bluetooth-Stacks dort keine Verbindung ohne Authentifizierung zulassen. In Android betrifft die Schwachstelle GerĂ€te mit Plattformversionen von 4.2.2 bis 14. In macOS wurde die Schwachstelle auf einem MacBook Pro 2022 mit CPU Apple M2 und macOS 13.3.3 sowie einem MacBook Air 2017 mit Intel-CPU und macOS 12.6.7 demonstriert. In iOS wurde die Schwachstelle auf einem iPhone SE mit iOS 16.6 demonstriert. Das Aktivieren des Lockdown-Modus schĂŒtzt nicht vor dem Angriff auf macOS und iOS.

In Linux wurde die Schwachstelle im Code der Bluez-Bibliothek durch das Setzen der Einstellung „ClassicBondedOnly“ auf „true“ behoben, was den Sicherheitsmodus aktiviert, der Verbindungen nur nach einem Pairing zulĂ€sst. Zuvor war der Wert auf „false“ gesetzt, was aus GrĂŒnden der KompatibilitĂ€t mit bestimmten EingabegerĂ€ten zulasten der Sicherheit gelöst wurde.

Im Bluetooth-Stack Fluoride, der in den neuesten Android-Versionen verwendet wird, wurde die Schwachstelle durch die zwingende Anwendung von Authentifizierung fĂŒr alle verschlĂŒsselten Verbindungen behoben. Die Korrekturen fĂŒr Android wurden nur fĂŒr die Versionen 11-14 bereitgestellt. FĂŒr Pixel-GerĂ€te wurde die Schwachstelle im Firmware-Update vom Dezember behoben. FĂŒr Android-Versionen von 4.2.2 bis 10 bleibt die Schwachstelle unbehoben.

Quelle: opennet.ru

60GB SSD 8Gb DDR4