Marc Newlin, i cili zbuloi një vulnerabilitet MouseJack shtatë vjet më parë, publikoi informacion rreth një vulnerabiliteti të ngjashëm (CVE-2023-45866), i cili prek stekat Bluetooth të Android, Linux, macOS dhe iOS. Ky vulnerabilitet lejon zëvendësimin e të shtypurve të çelësit duke simuluar aktivitete të një pajisjeje hyrëse të lidhur përmes Bluetooth. Me qasje në hyrjen e tastierës, një sulmues mund të kryejë veprime të ndryshme, siç janë ekzekutimi i komandave në sistem, instalimi i aplikacioneve dhe ridrejtime të mesazheve.
Vulnerabiliteti shkaktohet nga fakti se drejtuesit e hostit HID (Pajisje të Ndërfaqes Njerëzore) për pajisjet Bluetooth kanë një mod që lejon një pajisje periferike të largët të krijojë dhe të vendosë lidhje të koduara pa autentifikim. Pajisjet e tilla të lidhura mund të transmetojnë mesazhe tastiere dhe steku HID i përpunon ato, duke hapur mundësinë për një sulm të zëvendësimit të mesazheve HID, i cili kryhet pa ndërhyrjen e përdoruesit. Ky sulm mund të kryhet deri në 100 metra larg viktimës.
Mekanizmi i lidhjes së pajisjeve pa autentifikim është përcaktuar në specifikimin Bluetooth dhe, në varësi të konfigurimeve të stakut Bluetooth, lejon lidhjen e pajisjes pa konfirmimin e përdoruesit. Për shembull, në Linux, gjatë përdorimit të stakut Bluetooth BlueZ, për lidhjen e fshehtë, adapteri Bluetooth duhet të jetë në modalitetin e zbulesës dhe lidhjes. Në Android, mjafton të aktivizohet mbështetje për Bluetooth. Në iOS dhe macOS për një sulm të suksesshëm duhet të aktivizohet Bluetooth dhe një tastierë pa tel duhet të jetë e lidhur.
Mundësia e zëvendësimit të hyrjes është demonstruar në Ubuntu 18.04, 20.04, 22.04 dhe 23.10 me stakun Bluetooth të bazuar në paketën BlueZ. ChromeOS nuk është i predispozuar ndaj vulnerabiliteteve, pasi konfigurimet e stakut të tij Bluetooth nuk lejojnë lidhje pa autentifikim. Në Android, vulnerabiliteti prek pajisjet me versione të platformës nga 4.2.2 deri në 14. Në macOS, vulnerabiliteti është demonstruar në MacBook Pro 2022 me procesorin Apple M2 dhe macOS 13.3.3, si dhe në MacBook Air 2017 me procesorin Intel dhe macOS 12.6.7. Në iOS, vulnerabiliteti është demonstruar në iPhone SE me iOS 16.6. Aktivizimi i modalitetit Lockdown nuk ofron mbrojtje nga sulmi në macOS dhe iOS.
Në Linux, vulnerabiliteti është eliminuar në kodin e bazës Bluez duke vendosur cilësimin "ClassicBondedOnly" në vlerën "true", duke përfshirë një modalitet të sigurt që lejon vendosjen e lidhjeve vetëm pas çiftimit. Më parë, ishte vendosur vlerë "false", e cila, për shkak të përputhshmërisë me disa pajisje hyrëse, ulte nivelin e sigurisë.
Në stakun Bluetooth Fluoride, i përdorur në versionet e fundit të Android, vulnerabiliteti është eliminuar duke imponuar kërkesën për autentifikim për të gjitha lidhjet e enkriptura. Rregullimet për Android janë lëshuar vetëm për degët 11-14. Për pajisjet Pixel, vulnerabiliteti është eliminuar në përditësimin e firmware të dhjetorit. Për lëshimet e Android nga 4.2.2 në 10, vulnerabiliteti mbetet i pazgjidhur.
Burimi: linux.org.ru
