Scopri di più sul libro di Benny Czarny “Cybersecurity Upside Down”

Per saperne di più
Per le traduzioni dei siti utilizziamo l'intelligenza artificiale e, sebbene ci sforziamo di essere accurati, non sempre le traduzioni sono precise al 100%. La vostra comprensione è apprezzata.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint MetaDefender

Di OPSWAT

Siamo lieti di presentare una serie di blog di analisi tecnica incentrati su varie vulnerabilità ed esposizioni comuni (CVE), identificate e corrette con le nostre tecnologie avanzate di rilevamento delle minacce.Tutte le ricerche sono svolte dagli studenti laureati che partecipano al programma OPSWAT Cybersecurity Fellowship, lanciato nel settembre 2023.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
Gli studenti hanno partecipato al programma di borse di studio OPSWAT .

In questo blog spiegheremo la CVE-2019-13720 di Google Chrome e come le organizzazioni possono difendersi dagli attacchi di sfruttamento della CVE-2019-13720.

Che cos'è Google Chrome e quando è stato fondato?

Google Chrome è un browser web multipiattaforma sviluppato da Google e rilasciato ufficialmente il 2 settembre 2008. È stato sviluppato come parte degli sforzi di Google per creare un browser migliore e più moderno. All'epoca offriva molte nuove funzionalità, tra cui la navigazione a schede, la modalità privacy e la sincronizzazione con i servizi Google. Dal suo rilascio, è diventato uno dei browser web più popolari al mondo. Nel 2021, si stima che Google Chrome abbia circa 3,2 miliardi di utenti.

A causa della popolarità di Google Chrome, è diventato un punto focale per la ricerca e gli attacchi, attirando sia hacker etici che malintenzionati. Le vulnerabilità più comuni identificate in Google Chrome includono, tra le altre, il Denial of Services (DoS), la fuga di informazioni e l'esecuzione di codice remoto. Per quanto riguarda la vulnerabilità dell'esecuzione di codice in remoto, esistono due tipi di vulnerabilità in Google Chrome: sandbox escape e non-escape.

Che cos'è CVE-2019-13720?

CVE-2019-13720 è una vulnerabilità Use After Free (UAF) di WebAudio in Google Chrome prima della versione 78.0.3904.87 che consente a un aggressore remoto di sfruttare potenzialmente la corruzione dell'heap tramite una pagina HTML artigianale. Quando la vittima accede a una pagina Web dannosa o apre una pagina HTML artigianale su un browser Google Chrome vulnerabile, il codice dannoso viene eseguito sull'endpoint della vittima. Questo CVE è stato segnalato per la prima volta da Anton Ivanov e Alexey Kulaev nel 2019.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
Informazioni su CVE-2019-13720 su NIST NVD

Da un punto di vista tecnico, è possibile sfruttare una vulnerabilità use-after-free a causa di una race condition tra i thread Render e Audio nel componente audio di Qt WebEngine che consente agli aggressori remoti di eseguire codice shell WebAssembly, con conseguente compromissione del dispositivo della vittima. Per risolvere questo problema, tutti gli utenti di Qt WebEngine devono aggiornare alla versione più recente.

Le fasi di attacco

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
I processi di attacco

Gli aggressori creano un URL speciale con il codice HTML dannoso e inviano un'e-mail di phishing con il link alla vittima. Quando la vittima apre l'e-mail e fa clic sul link, il codice dannoso viene eseguito e consente all'aggressore di assumere il controllo del sistema interessato. I dettagli delle tattiche di codice remoto, come appaiono in un documento HTML, possono essere consultati qui.

Cosa sono le vulnerabilità Use After Free (UAF) e heap spray?

Una vulnerabilità UAF è un tipo di falla di sicurezza che si verifica quando un programma continua a utilizzare la memoria dopo che è stata liberata. Questo può portare a diverse conseguenze negative, tra cui corruzione dei dati, esecuzione di codice arbitrario e crash del sistema.

L'heap spraying è una tecnica di distribuzione del payload che prevede la scrittura di diversi byte in diverse posizioni dell'heap. Ciò comporta l'iniezione di un payload artigianale (cioè dati dannosi) nell'heap della memoria, assicurando che il flusso di esecuzione salti nella memoria spruzzata anziché nel codice originale dell'applicazione. Lo scopo di questo attacco è in genere quello di ottenere il controllo del registro EIP.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
Visualizzazione della tecnica Heap Spray

Che cos'è WebAssembly?

WebAssembly, spesso abbreviato in Wasm, è un nuovo formato di istruzioni binarie che funge da target portatile per la compilazione di linguaggi di alto livello come C/C++, consentendone l'esecuzione a velocità quasi nativa nel motore JavaScript di un browser Web.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
Compilazione del codice in WebAssembly

Tuttavia, poiché WebAssembly può essere compilato da linguaggi che non sono memory-safe, come C/C++, le vulnerabilità di codifica più comuni, come i buffer overflow o le vulnerabilità delle stringhe di formato, possono essere introdotte nei binari WebAssembly compilati in modo incrociato. Questa possibilità di includere vulnerabilità nei moduli WebAssembly ha aumentato la superficie di attacco delle applicazioni Web contemporanee.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
Progettazione di un'applicazione tipica con WebAssembly

Che cos'è una vulnerabilità di tipo race condition?

Una vulnerabilità race condition nel software si verifica quando più processi o thread tentano di accedere contemporaneamente a una risorsa condivisa, causando risultati imprevedibili o interruzioni operative dovute alla tempistica dell'accesso. Quando un programma presenta una vulnerabilità race condition, può causare vari problemi come crash dell'applicazione, corruzione dei dati, risultati errati o incoerenze. Gli aggressori possono sfruttare questa vulnerabilità per ottenere un accesso non autorizzato, far trapelare informazioni, aumentare i privilegi o provocare crash di sistema.

Classificata come una vulnerabilità di tipo race condition, una vulnerabilità TOCTTOU sfrutta l'intervallo di tempo tra la verifica e l'utilizzo di una risorsa.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
Illustrazione di una condizione di gara del software. Fonte: Devopedia 2020 (*) TOCTOU (Tempo di controllo e tempo di utilizzo)

Come funziona CVE-2019-13720?

Per sfruttare questa vulnerabilità, il ricercatore allega del codice JavaScript a un file HTML. Quando un utente lancia il file HTML, lo script tenta di trovare l'indirizzo trapelato creando due thread (thread principale e thread audio) che gestiscono gli stessi dati del buffer. L'indirizzo trapelato dell'oggetto temporary_buffer in ReverbConvolverStage viene quindi utilizzato per ottenere il puntatore del feedforward_array in IIRFilterNode (che condivide la stessa superpagina con il Convolver). Successivamente, il ricercatore cerca di ottenere il puntatore del feedforward_array nel secondo trigger UAF.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
Processo di trigger Use-After-Free

WebAssembly gestisce l'esecuzione del codice shell. Per consentire l'esecuzione del codice shell, il ricercatore tenta di liberare l'IIRFilter e scrive sul GCPreventer fino a ottenere il controllo su dove vengono effettuate le nuove allocazioni senza bisogno di spruzzi. Infine, il ricercatore scrive lo shellcode nella regione Just-In Time (JIT) della memoria. Di conseguenza, all'aggiunta di un evento di errore del lettore di file, il modulo WebAssembly eseguirà il codice shell.

Per eseguire il codice shell associato a questa vulnerabilità, l'utente deve disabilitare la sandbox nella versione vulnerabile di Chrome.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender

Quando il codice shell viene eseguito, apre automaticamente i servizi Notepad sul dispositivo della vittima.

Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender

Metodo di bonifica

MetaDefender Endpoint, an endpoint security solution engineered by OPSWAT, enables users to detect and defend their systems from these attacks. After the user disables the Privacy Sandbox feature (--no-sandbox), MetaDefender Endpoint can detect CVEs and apply the latest Google Chrome patches. After that, the user can update Google Chrome to the latest version manually or activate the “auto-update” feature under the Patch Management tab to let OPSWAT MetaDefender Endpoint automatically update the browser as soon as new patches become available.

To prevent exposure to malicious code, users should use email filter tools to detect phishing attacks and avoid clicking unknown URLs in emails.

Caratteristiche e vantaggi principali di MetaDefender Endpoint

  • Esaminare e correggere le applicazioni a rischio. Le applicazioni vulnerabili o non aggiornate possono essere visualizzate nell'interfaccia utente di MetaDefender Endpoint .
  • Verificare che la protezione anti-malware sia configurata correttamente sul sistema operativo.
  • Garantire la conformità agli standard di sicurezza dell'organizzazione.
  • Garanzia di crittografia del disco rigido.
  • Verifica delle patch del sistema operativo.
  • Molteplici opzioni per la scansione del malware e per la creazione di annunci privi di malware sugli endpoint.
Rimedio alle vulnerabilità di Google Chrome con le soluzioniEndpoint  MetaDefender
MetaDefender Endpoint UI

MetaDefender Endpoint for Endpoint Vulnerability and Application Patching può essere scaricato qui.


Riferimento

  1. https://nvd.nist.gov/vuln/detail/CVE-2019-13720
  2. https://bugs.chromium.org/p/chromium/issues/detail?id=1019226
  3. https://www.w3.org/TR/webaudio/
  4. https://security.gentoo.org/glsa/202004-04
  5. https://www.cve.org/CVERecord?id=CVE-2019-13720
  6. https://packetstormsecurity.com/files/167066/Google-Chrome-78.0.3904.70-Remote-Code-Execution.html
  7. https://devopedia.org/race-condition-software
  8. https://webassembly.org/
  9. https://www.researchgate.net/figure/WebAssembly-high-level-architecture_fig1_360232889
  10. https://www.researchgate.net/publication/331990070_Native_Web_Audio_API_Plugins
  11. https://whitehat.vn/threads/gioi-thieu-ky-thuat-khai-thac-exploit-heap-spray.5056/
  12. https://www.opswat.com/

Rimanete aggiornati con OPSWAT!

Sign up today to receive the latest company updates, stories, event info, and more.