I metodi di gestione sicura della memoria hanno ridotto significativamente il numero di vulnerabilità in Android.

Google ha concluso i risultati dell'iniziativa di implementazione di metodi di sviluppo sicuro (Safe Coding) su Android, come l'uso di linguaggi di programmazione che garantiscono un'adeguata gestione della memoria, l'applicazione di analizzatori statici e la progettazione di API con una prospettiva di sicurezza. Questi cambiamenti hanno ridotto la quota di vulnerabilità legate alla memoria in Android dal 76% nel 2019 al 24% nel 2024, un valore significativamente inferiore alla media del settore, che si attesta al 70%.

Gli ingegneri di Google hanno anche concluso che la principale fonte di problemi di sicurezza proviene dal nuovo codice e pertanto l'attenzione dovrebbe essere focalizzata sulla modernizzazione dei metodi di sviluppo del nuovo codice. Il codice esistente nel tempo diventa più testato e sicuro (si osserva una dipendenza esponenziale della sicurezza dal tempo), il che rende meno vantaggioso investire in progetti di riscrittura del codice esistente. Ad esempio, il codice di 5 anni ha in media una densità di vulnerabilità 3.4 volte inferiore rispetto al nuovo codice. Per i progetti Android e Chromium, grazie all'implementazione di metodi di gestione sicura della memoria, la differenza è di 7.4 volte.

I metodi di gestione sicura della memoria hanno ridotto significativamente il numero di vulnerabilità in Android.

Pertanto, se si prevengono gli errori nella gestione della memoria nel nuovo codice, nel tempo gli errori simili nel vecchio codice saranno individuati sempre meno frequentemente. In generale, Google raccomanda di non riscrivere il vecchio codice, ma di concentrarsi sulla scrittura di nuovo codice in linguaggi che gestiscono la memoria in modo sicuro e di garantire la portabilità tra il nuovo e il vecchio codice.

Oltre a ridurre il numero di vulnerabilità, l'uso di metodi di programmazione sicuri aumenta la produttività dello sviluppo, consente una qualità del codice superiore e ha un impatto positivo sulle prestazioni. Ad esempio, la riscrittura del codice per la generazione di codici QR in Chromium utilizzando il linguaggio Rust ha portato a un aumento delle prestazioni del 95% grazie all'eliminazione delle spese generali causate dalla necessità di un'ulteriore isolamento sandbox.

La velocità e la qualità dello sviluppo aumentano grazie alla semplificazione dei test e all'anticipazione della rilevazione degli errori nelle fasi iniziali dello sviluppo, fase in cui gli errori diventano visibili ancora prima che lo sviluppatore inizi il controllo del codice. Ad esempio, i tassi di rollback delle modifiche: per il codice in Rust, il numero di rollback dovuti alla scoperta di errori imprevisti è due volte inferiore rispetto al codice in C++.

In generale, l'adozione di metodi di programmazione sicuri è presentata come la più efficace attuale paradigma di sviluppo, che ha sostituito i tre approcci precedentemente utilizzati:

  • Correzione delle vulnerabilità dopo la loro scoperta. Costosa, richiede frequenti aggiornamenti e la loro tempestiva distribuzione agli utenti.
  • Protezione preventiva, concentrata sull'applicazione di tecniche che rendono più difficile l'exploitation delle vulnerabilità. Il prezzo di tale protezione è stata una diminuzione delle prestazioni e un continuo gioco del gatto col topo con gli attaccanti.
  • La rilevazione precoce delle vulnerabilità attraverso l'uso di test di fuzzing e strumenti come AddressSanitizer e MemorySanitizer. Questo metodo affrontava solo i sintomi, non la causa del problema, e richiedeva un lavoro costante.

I metodi di gestione sicura della memoria hanno ridotto significativamente il numero di vulnerabilità in Android.
I metodi di gestione sicura della memoria hanno ridotto significativamente il numero di vulnerabilità in Android.


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