Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2024-2887-REPORT — POC disponibile presto | Kitploit
Strumenti/GitHubGitHub/ad3210/cve-2024-2887-report
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPaper e RicercaApprendimento e FormazioneBinary Exploitation
GitHubad3210/cve-2024-2887-report

CVE-2024-2887-REPORT

POC disponibile presto

Vedi Repository
123 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

SSD Advisory – Google Chrome RCE

Fonte: ssd-disclosure.com/ssd-advisory-google-chrome-rce

Riepilogo

Una vulnerabilità critica di esecuzione remota di codice in Google Chrome (versioni 123 e precedenti) che interessa la gestione dei tipi di garbage collection di WebAssembly (WASM). Il bug consente una confusione di tipo che può essere escalata a lettura/scrittura arbitraria della memoria e, infine, all'esecuzione di codice.

Dettagli della vulnerabilità

La vulnerabilità deriva dalla confusione tra gli ID di tipo canonico isorecursivi di WASM e le rappresentazioni wasm::HeapType / wasm::ValueType utilizzate nelle funzioni di conversione da JavaScript a WASM.

Fondamentalmente, un ID di tipo canonico non è vincolato in alcun modo a kV8MaxWasmTypes – può crescere tanto quanto la memoria dell'host lo consente.

Causa principale

La classe ValueType codifica i tipi heap in un campo a 20 bit, ma gli ID di tipo canonico possono superare questo limite. Quando un ID di tipo canonico come:

Scarica lo strumento
root@kitploit:~
tn = t0 + 0x100000 * n

viene troncato a 20 bit, crea un alias con t0, abilitando un attacco di confusione di tipo.

Inoltre, gli ID di tipo canonico che corrispondono a kAny + 0x100000 * n (dove kAny = 1000005) bypassano i controlli di tipo e consentono una confusione di tipo WASM arbitraria.

Sfruttamento

L'avviso descrive lo sfruttamento in tre fasi:

1. Confusione di tipo al confine JS-WASM

Creando moduli WASM con più di 1.000.000 di tipi, gli ID di tipo canonico si avvolgono, consentendo la confusione tra tipi struct e tipi riferimento. I tipi struct creati per sovrapporsi a kAny bypassano i controlli di tipo da JS a WASM.

2. Abuso dei metadati di PartitionAlloc

Modificando i campi di ArrayBuffer che memorizzano il backing-store, l'attaccante ottiene una scrittura arbitraria a un indirizzo in cui il valore scritto è l'indirizzo del metadato. Questo sfrutta le strutture SlotSpanMetadata per divulgare indirizzi di chrome.dll e ottenere scritture arbitrarie in memoria.

3. Esecuzione del codice

L'exploit dirotta la CodePointerTable e sposta l'esecuzione su una catena ROP che contrassegna le regioni di shellcode come eseguibili.

Schema della Proof of Concept

La PoC dimostra:

  • L'accumulo di più di 1.000.000 di tipi canonizzati per innescare l'avvolgimento.
  • La creazione di tipi struct che si sovrappongono a kAny per bypassare i controlli di tipo JS-WASM.
  • Lo sfruttamento della confusione di tipo per leggere posizioni di memoria arbitrarie.
  • L'abuso dei metadati di PartitionAlloc per l'evasione della sandbox e l'esecuzione di codice remoto.

Relazione con lavori precedenti

Si tratta di una variante di CVE-2024-2887, scoperta da Manfred Paul e presentata al Pwn2Own Vancouver 2024. Sfrutta una debolezza simile nella canonizzazione dei tipi attraverso un vettore diverso.

Versioni affette

Google Chrome 123 e precedenti.

Risposta del fornitore

Corretto in Google Chrome 124.

Crediti

Seunghyun Lee (Xion, @0x10n), partecipante a TyphoonPWN 2024.