Google on kokku võtnud Rusti keele komponentide kasutamise Androidi platvormil. Androidi strateegia uue koodi turvalise arenduse meetodite rakendamiseks on olnud edukas. 2025. aastaks oli esmakordselt mäluhäiretega seotud haavatavuste osakaal alla 20% kõigist haavatavustest. Võrdluseks, 2024. aastal oli see protsent Androidis 24%, 2019. aastal aga 76%. Samal ajal jääb keskmine tööstuse näitaja endiselt 70% tasemele.

Rust-koodi kasutamine Androidi süsteemikomponentide arendamisel algas 2020. aastal. 2025. aastaks ületas Rusti uus kood Androidis igal aastal C ja C++ koodiga lisatava mahu.

Kogutud statistika kinnitab varasemalt väljendatud eeldust, et peamine turvaprobleemide allikas on uus kood, samas kui vana koodi turvalisus sõltub ajast eksponentsiaalselt — vana koodiga vigu tuvastatakse aja jooksul üha harvemini. Lõpuks otsustas Google mitte püüda vana koodi turvaliselt toimivatele keeltele ümber kirjutada, vaid keskenduda sarnaste keelte kasutamisele uue koodi jaoks.
Lisaks turvalisusele on Rusti rakendamine positiivselt mõjutanud arenduse kiirus, tootlikkus ja kvaliteet. Rust-koodi puhul on registreeritud 4 korda vähem muudatuste tagasivõtmisi tänu ettenägematutest vigadest ning ülevaatamise aeg on vähenenud 25%.


Androidi võrreldava suurusega muudatuste hulka kaasates vajavad Rusti muudatused umbes 20% vähem ülevaateid kui nende C++ vasted.

Need näitajad on seletatavad testimise lihtsustamise ja vigade tuvastamise nihkumisega arenduse varastele etappidele, kus vead muutuvad märgatavaks enne, kui arendaja koodi kontrollimisega alustab. Lisaks võimaldas Rusti koodis sandbox-isolatsiooni kõrvaldamine saavutada jõudluse suurenemise.
Viimaste projektide seas, kus Rusti kasutatakse Androidis, on märgitud Linuxi 6.12 tuumas esmakordset laialdast Rusti keeles kirjutatud draiveri kasutamist, samuti Rusti kasutamist püsivara ja rakenduste arendamisel. Lisaks juba kasutatavale tuuma draiverile Rustis arendatakse koostöös ettevõtetega ARM ja Collabora uut GPU draiverit. Rustis on rakendatud Google Play Services'i jaoks protokoll Nearby Presence, mis tuvastab kohalikke seadmeid Bluetoothi kaudu. Uue MLS-protokolli rakendamine, mis on kirjutatud Rustis, on plaanis lisada Google Messages'i järgmisse väljalaskesse. Brauseri mootoris Chromium on Rustis kirjutatud parsereid, mis käsitlevad veebikirja, PNG pilte ja JSON formaati.
Praegu on Androidis Rustis kirjutatud umbes 5 miljonit koodirida, milles on tuvastatud vaid üks potentsiaalne haavatavus, mis tuleneb mäluhaldusprobleemidest. Seega on Rusti koodis haavatavuste tihedus 0,2 haavatust miljoni koodirea kohta. Võrdluseks, C ja C++ keeltes on see näitaja umbes 1000 haavatust miljoni koodirea kohta. Rusti peamine probleemide allikas on unsafe-blocks'ides asuv kood. Sellise koodi osakaal on hinnatud 4%-ni kogu Rustis kirjutatud koodist.
Ülaltoodud haavatavus CVE-2025-48530 leiti Crabby Avif raamatukogus, mis sisaldab parserit ja dekooderit Avif formaadi jaoks. Probleem tuvastati Google'i töötajate poolt enne väljaande väljalaskmist ja see ei puudutanud kasutajaid. Haavatavus oli põhjustatud veast unsafe-block'is, mis viis puhverdamise ülevooluni. Tohutule tähelepanu all on see, et isegi kui viga poleks avastatud, oleks selle kasutamine olnud takistatud Androidis tarnitava mäluhaldussüsteemi Scudo poolt, mis on vaikimisi kasutusel Google Pixel'i ja mõnede teiste seadmete püsivara puhul.
Allikas: opennet.ru
