Hirdetés bezárása

A memória biztonsága az utóbbi időben a Google fő prioritása, mivel a memóriahibák a szoftverfejlesztés során a legsúlyosabbak. Valójában az ezen a területen lévő sebezhetőségek okozták a kritikus sérülékenységek többségét Androidu egészen tavalyig, amikor a Google létrehozta az új natív kód jelentős részét Androida Rust programozási nyelvben a C/C++ helyett. A szoftveróriás azon dolgozik, hogy támogassa a rendszerében lévő memóriasebezhetőségek enyhítésére szolgáló egyéb eszközöket, amelyek közül az egyik a memóriajelölés. A rendszerrel támogatott eszközökön Android 14 lehet, hogy van egy új, Speciális memóriavédelem nevű beállítás, amely átkapcsolhatja ezt a funkciót.

A Memory Tagging Extension (MTE) az Arm v9 architektúrán alapuló processzorok kötelező hardverfunkciója, amely részletes információkat nyújt. informace a memóriasérülésről, és véd a memóriabiztonsági hibák ellen. Ahogy a Google kifejti: „Magas szinten az MTE minden memóriafoglalást/felszabadítást további metaadatokkal lát el. Jelölőt rendel egy memóriahelyhez, amely azután az adott memóriahelyre utaló mutatókkal társítható. Futás közben a processzor minden beolvasáskor és mentéskor ellenőrzi, hogy a mutató és a metaadat címkék egyeznek-e."

A Google azon dolgozik, hogy támogassa az MTE-t a teljes szoftvercsomagban Android hosszú ideje. Nak nek AndroidAz u 12 hozzáadta a Scudo memóriaelosztót és három MTE üzemmód támogatását a kompatibilis eszközökön: szinkron mód, aszinkron mód és aszimmetrikus mód. A vállalat azt is lehetővé tette, hogy rendszertulajdonságokon és/vagy környezeti változókon keresztül engedélyezze az MTE-t a rendszerfolyamatokhoz. Az alkalmazások egy attribútumon keresztül MTE-támogatást adhatnak hozzá android:memtagMode. Amikor az MTE engedélyezve van a folyamatokhoz Androidu, a memóriabiztonsági hibák egész osztályai, mint például a Use-After-Free és a puffertúlcsordulás, összeomlást okoznak a néma memóriasérülés helyett.

Do Androidu 13 A Google hozzáadott egy Userspace Application Binary Interface-t (ABI), amely kommunikálja a kívánt MTE üzemmódot a rendszerbetöltővel. Ezzel engedélyezheti az MTE-t azokon a kompatibilis eszközökön, amelyek alapértelmezés szerint nem engedélyezettek az MTE-vel, vagy azokon a kompatibilis eszközökön, amelyeken alapértelmezés szerint engedélyezve van. A ro.arm64.memtag.bootctl_supported rendszertulajdonság "true"-ra állítása a rendszeren Android 13 közölte a rendszerrel, hogy a rendszerbetöltő támogatja az ABI-t, és aktivált egy gombot is a fejlesztői beállítások menüben, amely lehetővé tette a felhasználó számára, hogy engedélyezze az MTE-t a következő újraindításkor.

V Androidaz 14-ban azonban az MTE engedélyezése a kompatibilis eszközökön már megkövetelheti a fejlesztői beállítások menüben való búvárkodást. Ha az eszköz Arm v8.5+ processzort használ MTE-támogatással, akkor az eszközmegvalósítás támogatja az ABI-t a kívánt MTE üzemmód kommunikálásához a rendszerbetöltővel, és az új ro.arm64.memtag.bootctl_settings_toggle rendszertulajdonság "true"-ra van állítva. , majd egy új oldal Speciális memóriavédelem v Beállítások → Biztonság és adatvédelem → További biztonsági beállítások. Ez az oldal az új ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS művelettel is elindítható.

Érdekes módon a Google Pixel 2 sorozatot működtető Tensor G7 lapkakészlet Arm v8.2 processzormagokat használ, ami azt jelenti, hogy nem támogatja az MTE-t. Ha a hamarosan megjelenő Google Pixel 8 sorozat az új Arm v9 magokat fogja használni, mint a többi zászlóshajó sorozat androidtelefonokat, akkor a hardverüknek támogatnia kell az MTE-t. A kérdés azonban továbbra is fennáll, hogy a "speciális memóriavédelem" funkció átjut-e a stabil verzióba Android14-ban

A mai nap legolvasottabb

.