Zranitelnost v Bluetooth stackích Linuxu, macOS, Androidu a iOSu, která umožňuje substituci stisků kláves

Marc Newlin, který před sedmi lety odhalil zranitelnost MouseJack, zveřejnil informace o podobné zranitelnosti (CVE-2023-45866), která se týká Bluetooth stacků Androidu, Linuxu, macOS a iOS, a umožňuje podvržení stisků kláves prostřednictvím simulace aktivity vstupního zařízení připojeného přes Bluetooth. S přístupem k vstupu z klávesnice může útočník provádět činnosti jako spouštění příkazů v systému, instalaci aplikací a přesměrování zpráv.

Zranitelnost je způsobena tím, že hostitelské ovladače HID (Human Interface Device) pro Bluetooth zařízení mají režim, který umožňuje vzdálenému perifernímu zařízení vytvářet a navazovat šifrovaná spojení bez autentifikace. Mezi jiným, připojená zařízení tímto způsobem mohou zasílat zprávy z klávesnice a HID stack je zpracovává, což umožňuje provádět útoky na vzdálené podvržení HID zpráv, prováděné bez účasti uživatele. Útok může být proveden, když se útočník nachází až 100 metrů od oběti.

Mechanismus párování zařízení bez autentifikace je definován ve specifikaci Bluetooth a v závislosti na nastavení Bluetooth stacku umožňuje připojetí zařízení bez potvrzení od uživatele. V Linuxu při použití Bluetooth stacku BlueZ musí být Bluetooth adaptér v režimu objevování a párování. V Androidu stačí zapnout podporu Bluetooth. V iOS a macOS musí být Bluetooth zapnuto a bezdrátová klávesnice připojena, aby útok proběhl.

Možnost podvržení vstupu byla demonstrována v Ubuntu 18.04, 20.04, 22.04 a 23.10 s Bluetooth stackem založeným na balíčku Bluez. ChromeOS zranitelnosti není vystaven, protože nastavení Bluetooth stacku v něm neumožňuje spojení bez autentifikace. V Androidu se zranitelnost dotýká zařízení s verzemi platformy od 4.2.2 do 14. V macOS byla zranitelnost demonstrována na MacBook Pro 2022 s CPU Apple M2 a macOS 13.3.3 a MacBook Air 2017 s CPU Intel a macOS 12.6.7. V iOS byla zranitelnost demonstrována na iPhone SE s iOS 16.6. Aktivace režimu Lockdown nechrání před útokem na macOS a iOS.

Ve Linux byla zranitelnost odstraněna v kódové základně Bluez nastavením parametru „ClassicBondedOnly“ na hodnotu „true“, což aktivuje bezpečný režim povolující spojení pouze po spárování. Dříve byla nastavena hodnota „false“, která snižovala úroveň zabezpečení, aby se vyřešily problémy s kompatibilitou s některými vstupními zařízeními.

Ve Bluetooth stacku Fluoride, používaném v posledních verzích Androidu, byla zranitelnost odstraněna zavedením povinného ověřování pro všechna šifrovaná spojení. Opravy pro Android byly vytvořeny pouze pro větve 11-14. Pro zařízení Pixel byla zranitelnost odstraněna v prosincové aktualizaci firmwaru. Pro verze Androidu od 4.2.2 do 10 zranitelnost zůstává neopravená.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster