Gli sviluppatori di Chromium, browser Web principalmente sviluppato e aggiornato da Google che costituisce la base di Chrome e di altri prodotti concorrenti (tra cui Microsoft Edge), hanno annunciato che a breve verranno supportate le librerie di terze parti scritte in Rust.
Rust è un linguaggio di programmazione compilato (in un altro articolo abbiamo parlato delle differenze tra compilazione e interpretazione) sviluppato da Mozilla Research in collaborazione con la comunità open source.
Rust è uno degli linguaggi più amati, se non quello preferito in assoluto, perché già in sede di progettazione si è voluto porre l’accento su aspetti quali le prestazioni, il controllo dell’allocazione di memoria, la sicurezza e la concorrenza.
L’aggiunta del supporto in Chromium consentirà di portare codice Rust nei file binari di Chrome già entro il prossimo anno. La decisione guarda in primis al tema della sicurezza: Rust offre una maggiore sicurezza sulla scrittura in memoria rispetto al C++ e vieta comportamenti potenzialmente dannosi come la lettura di variabili non ancora scritte, l’accesso oltre i limiti fissati dagli array, la dereferenziazione di puntatori nulli o non validi, l’uso di iteratori invalidati.
Lo stesso docente e ricercatore Sönke Huster, nell’individuare una pericolosa falla nel kernel Linux sfruttabile via WiFi e corretta in Android solo a gennaio 2023, ha fatto presente che se i moduli WLAN fossero stati scritti in Rust molte delle vulnerabilità non si sarebbero presentate affatto.
Convertendo progressivamente Chromium e Chrome all’utilizzo di Rust, Google vuole mettere alla porta gran parte dei potenziali problemi dovuti alle condizioni di buffer overflow.
L’azienda guidata da Sundar Pichai è stata infatti costretta a rilasciare diversi aggiornamenti critici per sanare pericolose vulnerabilità in Chrome.
I tecnici di Google si sono soffermati sulle limitazioni e sui problemi di interoperabilità tra C++ e Rust: la strada è però ormai tracciata tanto che Rust è sempre più protagonista anche in Android.