Google ha pubblicato un post sul blog dedicato alla sicurezza per evidenziare la drastica riduzione delle vulnerabilità di Android dovute alla memoria. Ciò è stato possibile grazie all’uso di linguaggi di programmazione “memory-safe”, come Rust. L’azienda di Mountain View sottolinea l’importanza del suo approccio secure-by-design, denominato Safe Coding.
Eliminare le vulnerabilità alla fonte
La soluzione più ovvia per eliminare le vulnerabilità è riscrivere il codice da zero. Ciò richiederebbe però molte risorse (tempo e soldi), quindi Google ha deciso di lasciare il codice originario (ovviamente apportando modifiche per correggere i bug) e contemporaneamente usare un linguaggio di programmazione “memory-safe” per le nuove funzionalità di Android.
Questo approccio ha permesso di ridurre le vulnerabilità causate dai problemi di memoria dal 76% del 2019 al 24% del 2024. Il numero è diminuito da oltre 200 nel 2019 a meno di 50 nel 2024. In passato sono state utilizzate tre principali strategie per combattere le vulnerabilità di memoria. Inizialmente si interveniva solo dopo la scoperta dei bug, cercando di rilasciare le patch nel minor tempo possibile.
Un’altra strategia prevede l’implementazione di misure proattive per ridurre la probabilità di exploit. Altri metodi consentono di scoprire proattivamente le vulnerabilità, ma si risolvono solo i sintomi e non la causa principale. L’approccio Safe Coding adottato da Google si è rivelato più efficace.
Per le nuove funzionalità di Android viene utilizzato il linguaggio Rust che garantisce un maggiore controllo dell’allocazione di memoria e quindi una netta diminuzione delle relative vulnerabilità.