Жаңа компиляцияланған кодтың шамамен 21%-ы Android 13 саны тот басқан әріппен жазылған

Google инженерлері платформаға енгізудің алғашқы нәтижелерін қорытындылады Android Rust тілін дамытуды қолдау. Android 13 Жаңадан қосылған компиляцияланған кодтың шамамен 21%-ы Rust тілінде, ал 79%-ы C/C++ тілінде жазылған. AOSP репозиторийінде (Android платформаның бастапқы кодын әзірлейтін Open Source Project) AndroidRust-та Keystore2 криптографиялық кілт сақтау орны, UWB чиптеріне арналған стек (Ultra-Wideband), DNS-over-HTTP3 хаттамасын іске асыру, AVF виртуалдандыру құрылымы (AVF виртуалдандыру құрылымы) сияқты жаңа компоненттерге қатысты шамамен 1.5 миллион жол код бар.Android Виртуализациялау шеңбері), Bluetooth және Wi-Fi үшін эксперименттік стектері.

Жаңа компиляцияланған кодтың шамамен 21%-ы Android 13 саны тот басқан әріппен жазылған

Жад қателерінен туындаған осалдықтардың қаупін азайту бойынша бұрын қабылданған стратегияға сәйкес, Rust тілі қазіргі уақытта негізінен жаңа кодты әзірлеу және ең осал және маңызды бағдарламалық жасақтама компоненттерін біртіндеп нығайту үшін қолданылады. Барлық платформаны Rust-қа көшірудің жалпы мақсаты жоқ, ал ескі код C/C++ тілінде қалады. Қателер fuzz тестілеуі, статикалық талдау және MiraclePtr (босатылған жад аймақтарына кіру үшін қосымша тексерулер жүргізетін шикі көрсеткіш орама), Scudo жад бөлу жүйесі (malloc/free үшін қауіпсіз ауыстыру) және HWAsan (аппараттық құрал көмегімен мекенжайды анықтау), GWP-ASAN және KFENCE жад қателерін анықтау механизмдері сияқты әзірлеу әдістері арқылы жойылады.

Платформадағы осалдықтардың сипаты туралы статистикаға қатысты Android, жадты қауіпсіз емес өңдейтін жаңа кодтардың саны азайған сайын, жад қателерінен туындаған осалдықтардың саны да азаятыны атап өтілді. Мысалы, жад мәселелерінен туындаған осалдықтардың үлесі 2019 жылы 76%-дан 2022 жылы 35%-ға дейін төмендеді. Абсолютті сандар бойынша, 2019 жылы жадқа қатысты 223 осалдық, 2020 жылы 150, 2021 жылы 100 және 2022 жылы 85 осалдық анықталды (барлық хабарланған осалдық C/C++ кодында болды; Rust кодында әлі күнге дейін ұқсас мәселелер табылған жоқ). 2022 жыл жадқа қатысты осалдықтардың басым болуды тоқтатқан алғашқы жыл болып табылады.

Жаңа компиляцияланған кодтың шамамен 21%-ы Android 13 саны тот басқан әріппен жазылған

Жадқа қатысты осалдық әдетте ең қауіпті болғандықтан, жалпы статистика маңызды мәселелер мен қашықтан пайдалануға болатын мәселелер санының азайғанын көрсетеді. Сонымен қатар, жадқа қатысты емес осалдықтарды анықтау деңгейі соңғы төрт жылда шамамен тұрақты болып қалды - айына 20 осалдық. Жад қателерінен туындаған осалдықтардың арасындағы маңызды мәселелердің үлесі де өзгеріссіз қалады (бірақ мұндай осалдықтардың саны азайған сайын маңызды мәселелер саны да артады).

Жаңа компиляцияланған кодтың шамамен 21%-ы Android 13 саны тот басқан әріппен жазылған

Статистика сонымен қатар жадты қауіпсіз емес өңдейтін жаңа код көлемі мен жадқа қатысты осалдықтардың саны (буфердің толып кетуі, жад босатылғаннан кейін оған қол жеткізу және т.б.) арасындағы корреляцияны көрсетеді. Бұл бақылау қауіпсіз бағдарламалау әдістерін енгізу кезіндегі басты назар қолданыстағы кодты қайта жазудың орнына жаңа кодты жоюға бағытталуы керек деген болжамды қолдайды, себебі анықталған осалдықтардың көпшілігі жаңа кодта болады.

Жаңа компиляцияланған кодтың шамамен 21%-ы Android 13 саны тот басқан әріппен жазылған


Ақпарат көзі: opennet.ru
DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster