Android 14-n ahultasuna Bluetooth LE bidez ustia daiteke

GrapheneOS proiektuaren garatzaileek, AOSP (Android Open Source Project) kode-basearen sardexka segurua garatzen ari direnek, ahultasun bat identifikatu dute Android 14 plataformako Bluetooth pilan, eta horrek urrutiko kodea exekutatu dezake. Arazoa Bluetooth LE bidez transmititutako audio-prozesatzeko kodean jada libre dagoen memoria-eremu batean sartzeak eragiten du (uste-after-free).

Ahultasuna hardened_malloc deian babes gehigarria integratzearen ondorioz identifikatu zen, ARMv8.5 MTE luzapena erabiliz (MemTag, Memory Tagging Extension), memoriaren esleipen eragiketa bakoitzari etiketak lotu eta erakusleen erabilera zuzena egiaztatzea antolatzeko aukera ematen duena. Lehendik askatuta dauden memoria-blokeetan sartzeak, buffer gainezkatzeak, hasieratu aurretik deiak eta egungo testuingurutik kanpo erabiltzeak eragindako ahulezien ustiapena blokeatzeko.

Errorea martxoaren hasieran argitaratu zen Android 14 QPR2 (Hiruhileko Plataformaren kaleratzea) eguneratzetik agertu da. Android 14 plataformaren kode-oinarri nagusian, MTE mekanismoa aukera gisa eskuragarri dago eta oraindik ez da erabiltzen lehenespenez, baina GrapheneOS-en dagoeneko gaituta dago babes gehigarrirako, eta horri esker errorea diagnostikatu ahal izan da eguneratu ondoren. Android 14 QPR2. Akatsak hutsegite bat eragin zuen Samsung Galaxy Buds2 Pro Bluetooth entzungailuak erabiltzean, MTEn oinarritutako babesa gaitzen zuen firmwarearekin. Gertaeraren analisiak erakutsi zuen arazoa Bluetooth LE kudeatzailean jada libre dagoen memoria atzitzearekin lotuta zegoela, eta ez MTE integrazioaren ondoriozko hutsegitearekin.

Ahultasuna GrapheneOS 2024030900 bertsioan konpondu da eta MTE luzapenean oinarritutako hardware babes gehigarririk ez duten telefono-konexioei eragiten die (MTE Pixel 8 eta Pixel 8 Pro gailuetarako soilik gaituta dago gaur egun). Ahultasuna Android 8 QPR14 exekutatzen duten Google Pixel 2 telefonoetan erreproduzitzen da. Pixel 8 serieko telefonoetarako Android-en, MTE modua gaitu daiteke garatzaileen ezarpenetan ("Ezarpenak / Sistema / Garatzaileen aukerak / Memoria etiketa-luzapenak"). MTE gaitzeak memoria-kontsumoa %3 handitzen du gutxi gorabehera, baina ez du errendimendua murrizten.

Iturria: opennet.ru

Gehitu iruzkin berria