Takmer štvrtina Androidu 13 je napísaná v jazyku Rust

Hrdzavý android 13

Android 13 je prvá verzia systému Android, kde väčšina nového kódu pridaného do verzie je v jazyku bezpečnom pre pamäť.

Prostredníctvom blogového príspevku inžinieri Google zverejnila súhrn prvých výsledkov úvodu Podpora vývoja hrdze v systéme Android.

Android 13, skompilovalo sa asi 21 % nového kódu Agregát je napísaný v jazyku Rust a 79 % v C/C++, pričom ide o repozitár AOSP (Android Open Source Project), ktorý vyvíja zdrojový kód pre platformu Android, ktorá má približne 1,5 milióna riadkov kódu Rust.

Kód poskytuje AOSP súvisí s novými komponentmi, ako sú kryptografické úložisko kľúčov Keystore2, zásobník pre čipy UWB (Ultra-Wideband), implementácia protokolu DNS cez HTTP3, virtualizačný rámec AVF (Android Virtualization Framework), experimentálne zásobníky pre Bluetooth a Wi-Fi.

V rade s vyššie prijatou stratégiou na zníženie rizika zraniteľnosti pamäte, Doteraz sa Rust používal najmä na vývoj nového kódu a na postupné posilňovanie bezpečnosti najzraniteľnejších a životne dôležitých softvérových komponentov.

Keďže počet nových kódov nezabezpečených pamäťou vstupujúcich do systému Android klesol, znížil sa aj počet zraniteľností v oblasti zabezpečenia pamäte. Od roku 2019 do roku 2022 klesol zo 76 % na 35 % celkových zraniteľností systému Android. Rok 2022 je prvým rokom, kedy chyby zabezpečenia pamäte nezodpovedajú väčšine zraniteľností systému Android.

Všeobecný cieľ prenosu celej platformy na Rust nie je stanovený a starý kód zostáva v C/C++ a boj proti chybám v ňom prebieha pomocou fuzzing testov, statickej analýzy a použitia podobných techník. použitie typu MiraclePtr (väzba nad nespracovanými ukazovateľmi, ktorá vykonáva dodatočné kontroly prístupu k uvoľneným pamäťovým oblastiam), systému prideľovania pamäte Scudo (bezpečná náhrada za malloc/free) a mechanizmov detekcie chýb pri práci s pamäťou HWAsan (Hardware Assisted AddressSanitizer) , GWP-ASAN a KFENCE.

Čo sa týka štatistík o povahe zraniteľnosti na platforme Android sa zistilo, že ako znižuje množstvo nového kódu, ktorý pracuje s pamäťou nezabezpečeným spôsobom, tiež znižuje počet zraniteľností spôsobených chybami pri práci s pamäťou.

Napríklad podiel zraniteľností spôsobených problémami s pamäťou klesol zo 76 % v roku 2019 na 35 % v roku 2022. V absolútnych číslach bolo v roku 223 identifikovaných 2019 zraniteľností súvisiacich s pamäťou, 150 v roku 2020, 100 v roku 2021 a 85 v roku 2022. neboli nájdené). Rok 2022 bol prvým rokom, kedy zraniteľnosti súvisiace s pamäťou prestali dominovať.

K dnešnému dňu neboli v kóde Android Rust objavené žiadne slabé miesta zabezpečenia pamäte.

Neočakávame, že toto číslo zostane navždy na nule, ale vzhľadom na objem nového kódu Rust v dvoch verziách Androidu a na bezpečnostné komponenty, kde sa používa, je to významný výsledok. Ukazuje, že Rust slúži svojmu zamýšľanému účelu, ktorým je predchádzanie najbežnejšiemu zdroju zraniteľností systému Android.

vzhľadom na to, že zraniteľnosti súvisiace s pamäťou sú často najnebezpečnejšiecelkové štatistiky tiež ukazujú pokles počtu kritických problémov a problémov, ktoré je možné zneužiť na diaľku. Zároveň dynamika detekcie zraniteľností nesúvisiacich s prácou s pamäťou je posledné 4 roky približne na rovnakej úrovni – 20 zraniteľností za mesiac.

Pomer nebezpečných problémov k zraniteľnostiam spôsobeným chybami pamäte je tiež rovnaký (ale so znižovaním počtu zraniteľností klesá aj počet nebezpečných problémov).

Štatistiky tiež sledujú koreláciu medzi množstvom nového kódu, ktorý pracuje s pamäťou nezabezpečeným spôsobom, a počtom zraniteľností súvisiacich s pamäťou (pretečenie vyrovnávacej pamäte, prístup k už uvoľnenej pamäti atď.).

Toto pozorovanie potvrdiť predpoklad že hlavná pozornosť v implementácia techník bezpečného programovania mala by sa dať novému kódu a nie prepisovať existujúci, keďže väčšina zistených zraniteľností je v novom kóde.

Fuente: https://security.googleblog.com/


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.