Valutazione dell'efficacia dell'applicazione di MiraclePtr per prevenire vulnerabilità in Chrome

Google ha analizzato l'efficacia dell'utilizzo nel codice C++ del tipo MiraclePtr (raw_ptr<T>) al posto dei puntatori tradizionali per proteggersi da vulnerabilità causate dall'accesso a aree di memoria già liberate (use-after-free). MiraclePtr fornisce un'interfaccia per i puntatori che esegue controlli aggiuntivi e termina l'esecuzione in caso di accesso a aree di memoria liberate. Il supporto per MiraclePtr è stato abilitato di default sulle piattaforme Windows e Android a maggio 2022 (in Chrome 102), e sulle piattaforme ChromeOS, Linux e macOS a giugno 2023. La protezione basata su MiraclePtr in Chrome è applicata a tutti i processi, tranne quello che si occupa del rendering (renderer).

Dopo aver esaminato la dinamica della segnalazione delle vulnerabilità e degli arresti anomali, nonché l'analisi degli incidenti di sicurezza e dei risultati dei test di fuzzing, è stato concluso che l'implementazione di MiraclePtr ha fornito una protezione dal 57% delle vulnerabilità di tipo use-after-free, grazie alla transizione all'uso di MiraclePtr per i campi delle classi e i parametri delle callback. Inoltre, si menzionano 5 delle 6 vulnerabilità critiche identificate nell'ultima annata nella versione stabile di Chrome, riconducibili all'analisi dei rapporti sugli arresti anomali legati all'uso di MiraclePtr.

Il costo dell'implementazione di MiraclePtr è un aumento del consumo di memoria, poiché per i puntatori è necessario memorizzare ulteriori 4 byte con il contatore di riferimenti. Il consumo di memoria del processo principale del browser con MiraclePtr aumenta del 5,5-8% nelle versioni per desktop e del 2% nella versione per Android. L'aumento medio del consumo per tutti i processi è valutato tra l'1-3%. Inoltre, sono state registrate singole regressioni utilizzando MiraclePtr che portano a una riduzione delle prestazioni, ma non legate a metriche chiave come il tempo di caricamento e il rendering della pagina. Tra le regressioni identificate, si segnala un ritardo del 1,5% nel primo input in Chrome OS, un rallentamento del 1,5% nell'apertura delle schede sulla piattaforma Android, e un aumento della probabilità di ritardo nell'input a causa della concorrenza nel thread principale (aumento della probabilità del 10% nel 99° percentile).

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