Mozilla ha annunciato Firefox 95. Tra le novità da segnalare una nuova tecnologia di sandboxing denominata RLBox, sviluppata in collaborazione con i ricercatori della della University of Texas e della University of California (San Diego). RLBox migliorerà significativamente la sicurezza offerta dal browser.
Firefox 95, arriva RLBox
Se ad alcuni di voi fischiano le orecchie non è un caso. RLBox è già stato distribuito su Linux, in beta, in occasione del rilascio di Firefox 74. Da oggi è disponibile una versione stabile per tutti i sistemi operativi, anche mobile. Grazie a questo strumento è possibile garantire una maggiore protezione per i moduli del browser.
Il concetto di sandbox non è nuovo, viene usato in quasi tutti i browser per impedire che un exploit possa compromettere il sistema. Firefox isola anche i processi per proteggerli gli uni dagli altri, anche se idealmente la soluzione migliore consisterebbe nell’isolare ogni singolo modulo, ma ciò comporterebbe una riduzione delle performance e un enorme aumento in termini di memoria RAM utilizzata.
RLBox usa WebAssembly per isolare il codice malevolo, in particolare è efficace contro le vulnerabilità accidentali e i cosiddetti “supply-chain attack”. In Firefox 95 vengono isolati i moduli Graphite, Hunspell, Ogg, mentre Expat e Woff2 lo saranno a partire da Firefox 96.
Come funziona? Il codice viene prima compilato in WebAssembly utilizzando Clang e poi, partendo dal compilato WebAssembly, si arriva al codice nativo mediante wasm2c. Quest’ultimo restituisce un sorgente in simil-C da dare nuovamente in pasto a Clang. Questo permette di non utilizzare un secondo generatore di codice (nella beta era stato utilizzato Cranelift). Il passaggio a WebAssembly è solo uno step intermedio, che però introduce due benefici chiave:
- viene impedito l’accesso alla memoria al di fuori di una specifica regione
- il codice non può saltare inaspettatamente in punti dove non dovrebbe andare
Messe insieme, queste restrizioni rendono sicura la condivisione di uno spazio di indirizzi (incluso lo stack) tra codice attendibile e non attendibile, consentendoci di eseguirli nello stesso processo, come facevamo prima.
La bella notizia è che RLBox potrà essere usato anche su altri browser.
Speriamo di vedere questa tecnologia farsi strada in altri browser e progetti software […] RLBox è un progetto autonomo progettato per essere molto modulare e facile da usare, e il team dietro di esso accoglierebbe con favore altri casi d’uso.
Altre novità e note di rilascio
Oltre a RLBox ci sono altre piccole novità minori:
- In Firefox 95 è possibile spostare il pulsante di attivazione/disattivazione del Picture-in-Picture sul lato opposto del video;
- Migliora il decoding video in fullscreen, ciò implica un ridotto consumo di energia quando si guarda Netflix (per esempio);
- Sono state corrette alcune problematiche riguardanti Linux (es. form field popup troppo piccoli su Wayland oppure problemi riguardanti WebGL su Firefox Snap).
Firefox 95 arriverà presto nei repository della vostra distribuzione di riferimento. Se usate Ubuntu o derivate potete aggiornare dal Software Updater. Se non volete attendere potete procedere con il download manuale dal sito ufficiale. Per ulteriori dettagli vi rimando alle note di rilascio di Firefox 95 per Windows, macOS, Linux e Android.
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.