Marc Newlin, care a descoperit vulnerabilitatea MouseJack cu șapte ani în urmă, a dezvăluit informații despre o vulnerabilitate similară (CVE-2023-45866), care afectează stivele Bluetooth pentru Android, Linux, macOS și iOS. Această vulnerabilitate permite falsificarea apăsărilor de taste prin simularea activității unui dispozitiv de intrare conectat prin Bluetooth. Odată ce are acces la intrarea de la tastatură, un atacator poate efectua diverse acțiuni, cum ar fi rularea de comenzi în sistem, instalarea de aplicații și redirecționarea mesajelor.
Vulnerabilitatea este cauzată de faptul că driverele gazdelor HID (Dispozitiv de Interfață Umană) pentru dispozitivele Bluetooth au un mod care permite unui dispozitiv periferic la distanță să creeze și să stabilească conexiuni criptate fără autentificare. Dispozitivele conectate pot transmite mesaje de tastatură, iar stiva HID le procesează, ceea ce deschide posibilitatea unei atacuri de falsificare a mesajelor HID, realizate fără implicarea utilizatorului. Această atacă poate fi realizată de la o distanță de până la 100 de metri de victimă.
Mecanismul de asociere a dispozitivelor fără autentificare este definit în specificația Bluetooth și, în funcție de setările stivei Bluetooth, permite conectarea unui dispozitiv fără confirmarea utilizatorului. De exemplu, în Linux, utilizând stiva Bluetooth BlueZ, pentru asocierea din umbră, adaptorul Bluetooth trebuie să fie în modul de descoperire și conectare. În Android, este suficient să activezi suportul Bluetooth. În iOS și macOS, pentru o atacă reușită, Bluetooth trebuie să fie activat și un keyboard wireless să fie conectat.
Posibilitatea de falsificare a intrării a fost demonstrată în Ubuntu 18.04, 20.04, 22.04 și 23.10 cu stiva Bluetooth bazată pe pachetul BlueZ. ChromeOS nu este vulnerabil, deoarece setările sale de stivă Bluetooth nu permit conexiuni fără autentificare. În Android, vulnerabilitatea afectează dispozitive cu versiuni ale platformei de la 4.2.2 la 14. În macOS, vulnerabilitatea a fost demonstrată pe MacBook Pro 2022 cu procesor Apple M2 și macOS 13.3.3, precum și pe MacBook Air 2017 cu procesor Intel și macOS 12.6.7. În iOS, vulnerabilitatea a fost demonstrată pe iPhone SE cu iOS 16.6. Activarea modului Lockdown nu oferă protecție împotriva atacului pe macOS și iOS.
În Linux, vulnerabilitatea a fost remediată în codul sursă Bluez prin setarea opțiunii „ClassicBondedOnly” la „true”, activând modul de siguranță care permite stabilirea conexiunilor doar după asociere. Anterior, opțiunea era setată pe „false”, ceea ce, pentru a menține compatibilitatea cu unele dispozitive de intrare, reducea nivelul de securitate.
În stiva Bluetooth Fluoride, utilizată în versiunile recente de Android, vulnerabilitatea a fost eliminată prin aplicarea obligatorie a autentificării pentru toate conexiunile criptate. Corecțiile pentru Android au fost lansate numai pentru ramurile 11-14. Pentru dispozitivele Pixel, vulnerabilitatea a fost eliminată în actualizarea firmware-ului din decembrie. Pentru versiuni Android de la 4.2.2 la 10, vulnerabilitatea rămâne nerezolvată.
Sursa: linux.org.ru
