Circa il 21% del nuovo codice compilato in Android 13 è scritto in Rust.

Gli ingegneri di Google hanno fornito i primi aggiornamenti sull'integrazione del supporto per lo sviluppo in linguaggio Rust nella piattaforma Android. In Android 13, circa il 21% del nuovo codice compilabile aggiunto è scritto in Rust, mentre il 79% è in C/C++. Nel repository AOSP (Android Open Source Project), dove si sviluppano i codice sorgente della piattaforma Android, ci sono circa 1,5 milioni di righe di codice in Rust, collegate a nuovi componenti come il sistema di archiviazione delle chiavi crittografiche Keystore2, lo stack per chip UWB (Ultra-Wideband), l'implementazione del protocollo DNS-over-HTTP3, il framework di virtualizzazione AVF (Android Virtualization Framework) e stack sperimentali per Bluetooth e Wi-Fi.

Circa il 21% del nuovo codice compilato in Android 13 è scritto in Rust.

In conformità con la strategia precedentemente adottata per ridurre il rischio di vulnerabilità causate da errori nella gestione della memoria, il linguaggio Rust viene attualmente utilizzato principalmente per lo sviluppo di nuovo codice e per migliorare gradualmente la sicurezza dei componenti software più vulnerabili e critici. Non si ha come obiettivo generale la migrazione dell'intera piattaforma a Rust, e il codice precedente rimane in C/C++, mentre la risoluzione degli errori in esso viene effettuata attraverso tecniche come il fuzzing, l'analisi statica e metodi simili all'utilizzo di MiraclePtr (un wrapper sopra i puntatori raw che esegue controlli aggiuntivi per l'accesso a aree di memoria liberate), il sistema di distribuzione della memoria Scudo (una sostituzione sicura di malloc/free) e meccanismi di individuazione degli errori nella gestione della memoria come HWAsan (Hardware-assisted AddressSanitizer), GWP-ASAN e KFENCE.

Per quanto riguarda le statistiche sulle vulnerabilità nella piattaforma Android, si nota che con la diminuzione del nuovo codice non sicuro nella gestione della memoria, c'è anche una riduzione del numero di vulnerabilità causate da errori nella gestione della memoria. Ad esempio, la percentuale di vulnerabilità dovute a problemi di memoria è scesa dal 76% nel 2019 al 35% nel 2022. In numeri assoluti, nel 2019 sono state identificate 223 vulnerabilità legate alla gestione della memoria, nel 2020 150, nel 2021 100 e nel 2022 85 (tutte le vulnerabilità segnalate nel codice C/C++, non sono stati trovati problemi simili nel codice Rust). Il 2022 è diventato il primo anno in cui le vulnerabilità legate alla memoria non sono più predominanti.

Circa il 21% del nuovo codice compilato in Android 13 è scritto in Rust.

Dato che le vulnerabilità legate alla gestione della memoria sono generalmente tra le più pericolose, nelle statistiche complessive si nota anche una diminuzione del numero di problemi critici e di quelli che possono essere sfruttati da remoto. Nel contempo, la dinamica di individuazione delle vulnerabilità non legate alla gestione della memoria è rimasta pressoché costante negli ultimi 4 anni — 20 vulnerabilità al mese. È rimasta stabile anche la percentuale di problemi pericolosi tra le vulnerabilità causate da errori di gestione della memoria (ma poiché il numero di queste vulnerabilità diminuisce, diminuisce anche il numero di problemi pericolosi).

Circa il 21% del nuovo codice compilato in Android 13 è scritto in Rust.

Nelle statistiche si monitora anche la correlazione tra il volume di nuovo codice non sicuro nella gestione della memoria e il numero di vulnerabilità legate alla memoria (overflow del buffer, accesso a memoria già liberata, ecc.). Questa osservazione conferma l'ipotesi che l'attenzione principale nell'implementazione delle tecniche di programmazione sicura dovrebbe concentrarsi sul nuovo codice piuttosto che sulla riscrittura di quello esistente, poiché la maggior parte delle vulnerabilità identificate riguarda il nuovo codice.

Circa il 21% del nuovo codice compilato in Android 13 è scritto in Rust.


Fonte: opennet.ru
Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster