Před pár dny Marc Newlin, který před sedmi lety objevil zranitelnost MouseJack, zveřejnila podrobnosti o chybě zabezpečení, která obchází ověřování Bluetooth který je přítomen již roky a ovlivňuje zásobníky Bluetooth v systémech Android, Linux, macOS a iOS a umožňuje nahrazení úhozů pomocí simulace činnosti vstupního zařízení připojeného přes Bluetooth.
Chyba, identifikovaný jako CVE-2023-45866, nevyžaduje ke zneužití žádný speciální hardware a útok umožňuje přístup ke vstupu z klávesnice, pomocí kterého může útočník provádět akce, jako je provádění příkazů v systému, instalace aplikací a přesměrování zpráv.
"Několik zásobníků Bluetooth má zranitelnosti, které umožňují obejít autentizaci, která umožňuje útočníkovi připojit se k rozpoznatelnému hostiteli bez potvrzení uživatele a vkládat stisky kláves," řekl bezpečnostní výzkumník Marc Newlin, který v srpnu 2023 odhalil chyby dodavatelům softwaru.
Pokud jde o zranitelnost, uvádí se, že konkrétně oklame cílové zařízení, čímž se domnívá, že je připojen ke klávesnici Bluetooth pomocí „mechanismu neověřeného párování“ definovaného ve specifikaci Bluetooth.
Zranitelnost vzniká proto Ovladače HID pro Bluetooth mají režim, který usnadňuje vytváření a navazování šifrovaných připojení vzdáleným periferním zařízením, není vyžadována autentizace, který umožňuje přenos zpráv klávesnice připojenými zařízeními, které jsou zpracovávány zásobníkem HID. Tento scénář podporuje provedení vzdáleného útoku nahrazování zpráv HID bez nutnosti zásahu uživatele. Tento typ útoku lze provést, když je útočník vzdálen až 100 metrů od oběti.
Začal jsem s nějakým výzkumem bezdrátových herních klávesnic, ale ukázalo se, že to byl špatný druh popelnice, takže jsem hledal výzvu v Magic Keyboard od Apple. V mém předchozím výzkumu periferií mi znatelně chyběly dvě věci: Bluetooth a Apple.
Výzkum měl skromné začátky, když jsem si uvědomil, že nevím téměř nic o Bluetooth, macOS nebo iOS. Musel jsem se toho hodně naučit, ale jedna otázka vedla k druhé a brzy jsem informoval o neověřených zranitelnostech vstřikování stisku kláves Bluetooth v systémech macOS a iOS, obě zneužitelné v režimu uzamčení. V tuto chvíli jsem si stále myslel, že Bluetooth je pravděpodobně v pořádku, ale fata morgána zabezpečení Apple se začala vytrácet.
Postup pro párování zařízení bez autentizace je definován ve specifikacích Bluetooth a v závislosti na konfiguraci Bluetooth stacku umožňuje připojit zařízení bez nutnosti potvrzení od uživatele (oběti).
Jak již bylo zmíněno na začátku, aÚtok nevyžaduje žádný specializovaný hardware a lze jej provést z počítače se systémem Linux pomocí běžného Bluetooth adaptéru. Očekává se, že v budoucnu budou zveřejněny další technické podrobnosti týkající se chyby.
Nepatchovaná zařízení jsou zranitelná za následujících podmínek:
- Zařízení Android jsou zranitelné, když je povoleno Bluetooth
- Linux/BlueZ vyžaduje, aby bylo Bluetooth zjistitelné/připojitelné
- iOS y macOS jsou zranitelné, když je povoleno Bluetooth a klávesnice Magic Keyboard byla spárována s vaším telefonem nebo počítačem
V Linuxu byla zranitelnost vyřešena v kódové základně Bluez pomocí nastavení „ClassicBondedOnly“, které bylo nastaveno na „true“. Tato úprava umožňuje zabezpečený režim, který umožňuje navazování připojení pouze po spárování, protože dříve byla tato konfigurace nastavena na „false“, což ohrožuje zabezpečení za účelem vyřešení problémů s kompatibilitou s určitými vstupními zařízeními.
Zásobník Bluetooth používaný v nejnovějších verzích Androidu tuto chybu zabezpečení opravil vyžadováním ověření pro všechna šifrovaná připojení. Opravy pro Android jsou k dispozici pouze ve větvích 11 až 14. U zařízení Pixel byla zranitelnost vyřešena aktualizací firmwaru vydanou v prosinci. U verzí Androidu mezi 4.2.2 a 10 však tato chyba zabezpečení stále existuje.
A konečně, pokud máte zájem dozvědět se o tom více, můžete se podívat na podrobnosti v následující odkaz.