I ricercatori di Exodus Intelligence un punto debole nel processo di correzione delle vulnerabilità nel codice di base di Chrome/Chromium. Il problema risiede nel fatto che Google rivela informazioni che le correzioni apportate sono relative a problemi di sicurezza solo dopo il rilascio, ma
aggiunge nel repository il codice per risolvere la vulnerabilità nel motore V8 prima della pubblicazione del rilascio. Per un certo periodo, le correzioni vengono testate e si crea una finestra temporale in cui la vulnerabilità viene corretta nel codice, ma rimane non risolta sui sistemi degli utenti.
Analizzando le modifiche nel repository, i ricercatori hanno notato l'aggiunta del 19 febbraio e in tre giorni sono riusciti a preparare , che colpisce le versioni attuali di Chrome (l'exploit pubblicato non includeva componenti per eludere l'isolamento sandbox). Google ha rapidamente rilasciato l'aggiornamento Chrome 80.0.3987.122, risolvendo il problema relativo all'exploit proposto (CVE-2020-6418). La vulnerabilità era stata inizialmente individuata dagli ingegneri di Google ed era causata da un problema nella gestione dei tipi nell'operazione JSCreate, che può essere sfruttata tramite il metodo Array.pop o Array.prototype.pop. È interessante notare che un problema simile era stato in Firefox la scorsa estate.
I ricercatori hanno anche notato che la creazione di exploit è stata semplificata grazie all'inclusione nel meccanismo (invece di memorizzare il valore completo a 64 bit, vengono memorizzati solo i bit inferiori unici del puntatore, il che consente di ridurre notevolmente l'uso della memoria nell'heap). Ad esempio, alcune strutture dati all'inizio dell'heap, come la tabella delle funzioni incorporate, gli oggetti “native context” e del garbage collector, ora vengono posizionati a indirizzi imballati prevedibili e scrivibili.
È interessante notare che quasi un anno fa Exodus Intelligence ha una dimostrazione analoga della possibilità di creare un exploit basato sull'analisi del registro pubblico delle correzioni in V8, ma, a quanto pare, non sono state tratte le giuste conclusioni. Al posto dei ricercatori
di Exodus Intelligence, avrebbero potuto trovarsi malintenzionati o servizi segreti, che, durante la creazione dell'exploit, avrebbero potuto sfruttare la vulnerabilità in modo nascosto per giorni o addirittura settimane prima del rilascio di una nuova versione di Chrome.
Fonte: opennet.ru
