Rust ir apsteigusi C/C++ platformai pievienotā koda apjoma ziņā. Android

Google ir apkopojis Rust komponentu izmantošanu platformā. AndroidĪstenošanas stratēģija Android Drošu jauna koda izstrādes metožu ieviešana ir izrādījusies veiksmīga. 2025. gadā pirmo reizi atmiņas kļūdu izraisīto ievainojamību īpatsvars bija mazāks par 20% no kopējā ievainojamību skaita. Salīdzinājumam, 2024. gadā šis skaitlis bija Android sasniedza 24 %, bet 2019. gadā — 76 %. Tomēr nozares vidējais rādītājs joprojām ir 70 %.

Rust ir apsteigusi C/C++ platformai pievienotā koda apjoma ziņā. Android

Rūsas koda izmantošana sistēmas komponentu izstrādē Android sākās 2020. gadā. 2025. gadā jaunā Rust koda apjoms Android pārsniedza gadā pievienotā C un C++ koda apjomu.

Rust ir apsteigusi C/C++ platformai pievienotā koda apjoma ziņā. Android

Uzkrātā statistika apstiprina iepriekš minēto pieņēmumu, ka drošības problēmu galvenais avots ir jauns kods, savukārt vecākam kodam pastāv eksponenciāla drošības saistība ar laiku — laika gaitā kļūdas vecākā kodā tiek atklātas arvien retāk. Galu galā Google nolēma nemēģināt pārrakstīt vecāku kodu atmiņā drošās valodās, bet gan koncentrēties uz šādu valodu izmantošanu jaunam kodam.

Papildus drošībai, Rust ieviešana ir pozitīvi ietekmējusi izstrādes ātrumu, produktivitāti un kvalitāti. Rust kodā neparedzētu kļūdu dēļ atgriezto versiju skaits samazinājās 4 reizes, un pārskatīšanas laiks samazinājās par 25 %.

Rust ir apsteigusi C/C++ platformai pievienotā koda apjoma ziņā. Android
Rust ir apsteigusi C/C++ platformai pievienotā koda apjoma ziņā. Android

Kad iekļauts sastāvā Android Līdzīga apjoma izmaiņām Rust valodā ir nepieciešams aptuveni par 20 % mazāk labojumu nekā to C++ ekvivalentos.

Rust ir apsteigusi C/C++ platformai pievienotā koda apjoma ziņā. Android

Šie rezultāti tiek izskaidroti ar vienkāršotu testēšanu un kļūdu atklāšanas pārcelšanu uz izstrādes sākumposmiem, kur kļūdas kļūst acīmredzamas pat pirms izstrādātājs sāk koda pārskatīšanu. Turklāt smilškastes tipa papildu slodzes novēršana Rust kodā ir uzlabojusi veiktspēju.

Starp nesenajiem projektiem, kas saistīti ar Rust izmantošanu Android, tiek atzīmēta iesaistīšanās kodolā Linux 6.12 pirmā plaši izmantotā Rust draivera versija, kā arī Rust izmantošana programmaparatūras un lietojumprogrammu izstrādē. Papildus Rust draiverim, kas jau tiek izmantots kodolā, sadarbībā ar ARM un Collabora tiek izstrādāts jauns GPU draiveris šajā valodā. Rust valodā ir ieviests protokols Nearby Presence lokālo ierīču atklāšanai, izmantojot Bluetooth, un tas tiek izmantots Google Play pakalpojumos. Jauna MLS protokola ieviešana, kas rakstīta Rust valodā, ir plānota iekļaušanai nākamajā Google Messages lietotnes laidienā. Chromium pārlūkprogrammas dzinējs izmanto parsētājus tīmekļa fontiem, PNG attēliem un JSON formātam, kas rakstīts Rust valodā.

Pašlaik Android Rust ir aptuveni 5 miljoni koda rindiņu, un ir identificēta tikai viena potenciāla ievainojamība, ko izraisa atmiņas pārvaldības problēmas. Tas nozīmē, ka šādu ievainojamību blīvums Rust kodā ir 0.2 ievainojamības uz miljonu koda rindiņu. Salīdzinājumam, šis skaitlis C un C++ kodam ir aptuveni 1000 ievainojamības uz miljonu koda rindiņu. Galvenais problēmu avots Rust ir kods, kas atrodas nedrošos blokos. Tiek lēsts, ka šī koda daļa ir 4% no visa Rust koda.

Iepriekšminētā ievainojamība CVE-2025-48530 tika atrasta Crabby Avif bibliotēkā, kurā ir iekļauts Avif formāta parsētājs un dekodētājs. Problēmu atklāja Google darbinieki pirms izlaišanas, un tā neietekmēja lietotājus. Ievainojamību izraisa kļūda nedrošā blokā, kas izraisa bufera pārpildi. Tiek atzīmēts, ka pat ja kļūda netiktu pamanīta, tās izmantošanu būtu bloķējis iekļautais. Android Scudo atmiņas piešķiršanas sistēma, kas pēc noklusējuma ir iespējota Google Pixel un dažu citu ierīču programmaparatūrā.

Avots: opennet.ru

Iegādājieties uzticamu mitināšanu vietnēm ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa vietņu mitināšanu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster