Marc Newlin, kes avastas haavatavuse MouseJack seitsme aasta eest, avaldas teavet sarnase haavatavuse (CVE-2023-45866), mis mõjutab Bluetoothi-virna Androidis, Linuxis, macOS-is ja iOS-is. See haavatavus võimaldab simuleerida sisendseadmest tulenevaid klahvivajutusi, asendades need. Juurdepääs klaviatuuri sisendile võib lubada agressoril teha erinevaid tegevusi, nagu käsu täitmine süsteemis, rakenduste installimine ja sõnumite suunamine.
Haavatavus tuleneb sellest, et Bluetooth-seadmete jaoks mõeldud HID (Human Interface Device) draiverid võivad kaugsideseadmest luua ja seadistada krüpteeritud ühendusi autentimise puudumisel. Sellised ühendatud seadmed saavad edastada klaviatuuri sõnumeid, mida HID-virn töötleb, avades võimalusi HID-sõnumite asendamise kasutamiseks, mis toimub ilma kasutaja osaluseta. Sellist rünnakut saab teostada kuni 100 meetri kaugusel ohvrist.
Seadmise mehhanism Bluetooth-seadmeste ühendamiseks autentimise vajaduseta on määratletud Bluetoothi spetsifikatsioonis ning sõltuvalt Bluetoothi virna seadistustest võimaldab see seadme ühendamist ilma kasutaja kinnitamiseta. Näiteks Linuxis, kasutades BlueZ-põhist Bluetoothi virna, peab Bluetooth-adapter olema peidetud ja ühendusrežiimis. Androidis piisab Bluetooth-toe lülitamisest. iOS-is ja macOS-is peab edukaks rünnakuks olema Bluetooth sisse lülitatud ning traadita klaviatuur ühendatud.
Sisendi asendamise võimalust on demonstreeritud Ubuntu versioonides 18.04, 20.04, 22.04 ja 23.10, mis põhinevad BlueZ-põhisel Bluetoothi virnal. ChromeOS ei ole haavatav, kuna selle Bluetoothi virna seaded ei luba ühendusi ilma autentimiseta. Androidis puudutab haavatavus seadmeid, mille platvormiversioonid jäävad vahemikku 4.2.2 kuni 14. macOSis on haavatavus demonstreeritud 2022. aasta MacBook Pro-l, millel on Apple M2 processor ja macOS 13.3.3, samuti 2017. aasta MacBook Air-l, millel on Intel processor ja macOS 12.6.7. iOS-is on haavatavus demonstreeritud iPhone SE-l, millel on iOS 16.6. Lockdown-režiimi sisselülitamine ei kaitse rünnaku eest macOS-is ja iOS-is.
Linuxis on haavatavus oli kõrvaldatud Bluezi koodibaasis on seadistuse "ClassicBondedOnly" väärtuse seadmine "true" aktiveerinud turvarežiimi, mis lubab ühendusi luua ainult pärast sidumist. Varem oli seadistus "false", mis, et tagada ühilduvus mõningate sisendseadmetega, alandas turvalisuse taset.
Viimastes Androidi versioonides kasutatavas Bluetoothi virnas Fluoride, on haavatavus kõrvaldatud kõikide krüptitud ühenduste autentimise kohustusliku rakendamise teel. Androidi parandused on välja antud vaid 11-14 harude jaoks. Pixel-seadmete jaoks kõrvaldatakse haavatavus detsembri tarkvarauuendusega. Androidi versioonides 4.2.2 kuni 10 jääb haavatavus lahendamata.
Allikas: linux.org.ru
