Google on teinud kokkuleppe Androidi turvalise arendamise meetodite (Safe Coding) rakendamise osas, sealhulgas mĂ€luga ohutult töötavate programmeerimiskeelte kasutamine, staatiliste analĂŒsaatorite rakendamine ja API-de kavandamine turvalisus silmas pidades. Need muudatused on vĂ”imaldanud vĂ€hendada Androidi mĂ€luga seotud haavatavuste osakaalu 76% 2019. aastal 24% 2024. aastaks, mis on oluliselt madalam kui tööstuse keskmine â 70%.
Google'i insenerid on samuti jĂ”udnud jĂ€reldusele, et peamine turvaprobleemide allikas on uus kood, mistĂ”ttu tuleks keskenduda uue koodi arendamismeetodite moderniseerimisele. Olemasolev kood muutub aja jooksul jĂ€rjest usaldusvÀÀrsemaks ja turvalisemaks (turvalisuse eksponentsiaalne sĂ”ltuvus ajast), mistĂ”ttu pole olemasoleva koodi ĂŒmberkirjutamise projektid enam nii tulusad. NĂ€iteks on 5-aastase koodi keskmine haavatavuste tihedus 3,4 korda madalam kui uue koodi puhul. Androidi ja Chromiumi projektide puhul, tĂ€nu mĂ€luga töötamise turvaliste meetodite rakendamisele, on erinevus 7,4 korda.

Seega, kui uues koodis vĂ€ltida mĂ€luga seotud vigu, tuvastatakse aja jooksul sarnaseid vigu vanas koodis jĂ€rjest harvemini. Ăldiselt soovitab Google mitte kirjutada vana koodi ĂŒmber, vaid keskenduda uue koodi loomisele, mis on mĂ€luga ohutult töötav ja tagab ĂŒhilduvuse uue ja vana koodi vahel.
Lisaks haavatavuste arvu vĂ€hendamisele suurendab turvaliste programmeerimise meetodite kasutamine arenduse efektiivsust, tagab kĂ”rgema koodi kvaliteedi ja toob kaasa parema jĂ”udluse. NĂ€iteks vajas QR-koodide genereerimise koodi ĂŒmberkirjutamine Chromimus Rusti keeles, et saavutada 95% suurenenud jĂ”udlus, elimineerides kulusid, mis tekkisid tĂ€iendava liivakasti isolatsiooni rakendamisel.
Arenduse kiirus ja kvaliteet paranevad testimise lihtsustamise ja vigade avastamise edasilĂŒkkamisega varajastesse arendusetappidesse, kus vead muutuvad nĂ€htavaks veel enne, kui arendaja koodi ĂŒle vaatama hakkab. NĂ€iteks on Rusti koodi puhul muutuste tagasisidetide arv ootamatute vigade tĂ”ttu kaks korda madalam kui C++ koodi puhul.
Ăldiselt esitatakse turvaliste programmeerimismeetodite rakendamine kui kĂ”ige tĂ”husam tĂ€napĂ€eva arendusparadigma, mis on asendanud varem kasutatud kolme lĂ€henemist:
- Haavatavuste parandamine pÀrast nende avastamist. AeganÔudev, nÔuab sagedaste vÀrskenduste vÀljaandmist ja nende kiiret edastamist kasutajatele.
- Ennetav kaitse, mis keskendub tehnikate rakendamisele, et muuta haavatavuste Ă€rakasutamine keerulisemaks. Sellise kaitse hind oli jĂ”udluse vĂ€henemine ja pidev mĂ€ng rĂŒndajatega.
- Ajava haavatavuste tuvastamine fuzzing-teste ja sarnaste tööriistade, nagu AddressSanitizer ja MemorySanitizer, abil. Meetod ainult kĂ”rvaldaks sĂŒmptomid, mitte haiguse pĂ”hjuse, ja nĂ”udis pidevat tööd.


Allikas: opennet.ru
