GrapheneOS projekti arendajad, kes arendavad AOSP (Android Open Source Project) koodibaasi turvalist haru, avastasid Android 14 platvormi Bluetooth steki haavatavuse, mis võib potentsiaalselt põhjustada koodi kauglaadimist. Probleem tuleneb juba vabastatud mäluala (use-after-free) käsitsemisest helikoodi töötlemises, mis edastatakse Bluetooth LE kaudu.
Haavatavus tuvastati, tänu hardened_malloc meetodi ja täiendava kaitse integreerimisele, mis kasutab ARMv8.5 MTE (MemTag, Memory Tagging Extension) laiendust, mis võimaldab siduda sildid iga mälu eraldamise operatsiooniga ja korraldada näidikuteasutuste õigsuse kontrollimise, et blokeerida haavatavuste ärakasutamine, mis tuleneb juba vabastatud mälublokkidele juurdepääsust, puhvriajamistest, juurdepääsudest enne initsialiseerimist ja kasutamisest väljaspool praegust konteksti.
Viga ilmnes alates Android 14 QPR2 (Quarterly Platform Release) uuendamisest, mis avaldati märtsi alguses. Android 14 platvormi põhikoodeksis on MTE mehhanism saadaval valikuna ja ei rakendata vaikimisi, kuid GrapheneOS on selle juba rakendanud täiendava kaitse tagamiseks, võimaldades vigade diagnostikat pärast Android 14 QPR2 versiooni uuendamist. Viga põhjustas kokkuvarisemise Samsung Galaxy Buds2 Pro Bluetooth-kõrvaklappide kasutamisel, mille tarkvaras on aktiveeritud MTE-põhine kaitse. Juhtumi analüüsimine näitas, et probleem on seotud juurdepääsuga juba vabastatud mälule Bluetooth LE töötlejas, mitte MTE integratsiooniga seotud ebaõnnestumisega.
Haavatavus on kõrvaldatud GrapheneOS 2024030900 versioonis ja see puudutab nutitelefone, kus ei ole sisse lülitatud täiendavat riistvaralist kaitset MTE laienduse alusel (MTE on hetkel lubatud ainult Pixel 8 ja Pixel 8 Pro seadmetes). Haavatavus ilmneb Google Pixel 8 nutitelefonides, millel on Android 14 QPR2 põhine versioon. Pixel 8 seeriaga nutitelefonide Androidis saab MTE režiimi lubada arendajate seadetes ("Settings / System / Developer options /Memory Tagging Extensions"). MTE lubamine suurendab mälukasutust ligikaudu 3% võrra, kuid ei vähenda jõudlust.
Allikas: opennet.ru
