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-2025-55182 — CVE-2025-55182 Programma di test RCE React | Kitploit
Strumenti/GitHubGitHub/theman001/cve-2025-55182
Scanner di VulnerabilitàGenerazione di PayloadExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneLab e Pratica
GitHubtheman001/cve-2025-55182

CVE-2025-55182

CVE-2025-55182 Programma di test RCE React

Vedi Repository
21 mese 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

CVE-2025-55182 (React2Shell)

Programma di test RCE React per CVE-2025-55182

🔒 Scanner RCE interattivo CVE-2025-55182

Questo script è uno strumento di verifica delle vulnerabilità per CVE-2025-55182, una grave vulnerabilità di esecuzione remota di codice (RCE) presente in React Server Components (RSC) di React 19.x.

Questo strumento determina se la vulnerabilità è presente su un server reale e, a seconda delle opzioni, può eseguire comandi, registrare log oppure testare anche con la modalità RCE in due fasi (module#_load).

⚠️ Questo strumento deve essere utilizzato solo in ambienti di test chiusi e esclusivamente a scopo di audit di sicurezza e verifica delle vulnerabilità.


📋 Riepilogo della vulnerabilità React2Shell (CVE-2025-55182)

VoceDettaglio
Numero vulnerabilitàCVE-2025-55182 (React) / CVE-2025-66478 (Next.js)
Nome vulnerabilitàReact2Shell
Tipo di vulnerabilitàEsecuzione remota di codice (RCE) – nessuna autenticazione richiesta
Gravità (CVSS)10.0 (Critica)
Data di scoperta2025-11-29 (Lachlan Davidson)
Difficoltà di attaccoMolto bassa (livello Log4Shell)
Descrizione della vulnerabilitàVulnerabilità RCE strutturale che, durante l'elaborazione della deserializzazione Flight, consente l'accesso alla catena del prototipo (constructor, __proto__) tramite la notazione a parentesi della funzione requireModule()

🧱 Prodotti e versioni vulnerabili

✅ I progetti che includono funzionalità RSC devono aggiornare alla versione più recente anche i moduli react-server-dom-*, oltre a React, per essere al sicuro.


📚 Indice

  • 🗂️ Struttura della directory
  • 🧩 Funzionalità principali
  • 📦 Installazione
  • 🚀 Esempi di esecuzione
  • 💬 Esempio di inserimento interattivo dei comandi
  • ⚠️ Avvertenze di sicurezza
  • 📚 Riferimenti tecnici
  • 📄 Licenza e condizioni d'uso

🗂️ Struttura della directory

root@kitploit:~
CVE-2025-55182/
├── README.md                     # 전체 개요 및 스캐너 사용법
├── DETECTION_RULES.md            # 탐지/차단용 규칙 모음
├── 설명 및 탐지규칙.md             # 한글 탐지 규칙 설명
├── cve_2025_55182_interactive.py # RCE 검증 스캐너 스크립트
├── requirements.txt              # 스캐너 의존성 목록
├── setup_vulnerable_env.sh       # 취약 환경 일괄 설치 스크립트
├── uninstall_vulnerable_env.sh   # 취약 환경 정리/제거 스크립트
└── vulnerable-react-env/         # React2Shell 취약 서버 실습용 코드
    ├── README.md                 # 실습 환경 사용법
    ├── package.json              # npm 스크립트 및 의존성
    ├── server.js                 # 취약한 Express 백엔드
    ├── public/
    │   └── index.html            # CDN 기반 React 프런트엔드
    └── .gitignore

🧩 Funzionalità principali

✅ Test interattivo per verificare se l'RCE è possibile su un server vulnerabile
✅ Supporto della modalità child_process#execSync (predefinita) o module#_load
✅ Salvataggio dei risultati dei comandi in un file di log
✅ Invio al server dei comandi di sistema inseriti direttamente dall'utente


📦 Installazione

root@kitploit:~
git clone <this-repo>
cd <this-repo>
pip install -r requirements.txt

🚀 Esempi di esecuzione

  1. Test RCE di base (modalità execSync)

    • Esecuzione di comandi tramite child_process.execSync()
    • python cve_2025_55182_interactive.py http://localhost:3000 --rce
  2. Test RCE in due fasi (modalità module#_load)

    • Creazione di un file JS dannoso e successiva esecuzione tramite module#_load
    • python cve_2025_55182_interactive.py http://localhost:3000 --rce --method moduleLoad
  3. Test RCE basato su RSC (opzione --rce2)

    • Esecuzione del payload tramite il percorso di elaborazione dei componenti server di Next.js
    • python cve_2025_55182_interactive.py http://localhost:3000 --rce2
  4. Salvataggio dei risultati dei comandi in un file di log

    • Salva tutti i risultati dei comandi nel file di log specificato
    • python cve_2025_55182_interactive.py http://localhost:3000 --rce --log rce_output.log

🚧 Ambiente di laboratorio per il server React vulnerabile (OCI/Ubuntu)

La cartella vulnerable-react-env contiene un server React + Express deliberatamente vulnerabile in grado di riprodurre CVE-2025-55182.

  1. Configurazione rapida in blocco (consigliata)
    • Eseguendo ./setup_vulnerable_env.sh, in un'unica operazione vengono completati: installazione dei pacchetti apt → installazione di nvm/Node.js 20 → npm install.
    • Al termine, avviare il server con cd vulnerable-react-env && npm start oppure npm run dev.
    • ⚠️ Digitando solo npm run verrà mostrato solo l'elenco degli script. Assicurarsi di specificare il nome dello script, ad esempio npm start (o npm run start).
    • Per pulire l'ambiente, con ./uninstall_vulnerable_env.sh è possibile rimuovere node_modules, i payload moduleLoad e (facoltativamente) Node 20 e nvm.
    • ❗️ Se si verificano errori di dipendenza come ERR_MODULE_NOT_FOUND: Cannot find package 'express', installare node_modules con cd vulnerable-react-env && npm install e quindi eseguire di nuovo npm start.
  2. Configurazione manuale (alternativa)

⚠️ Vietato l'uso per scopi diversi da ricerca/istruzione. Non esporlo su Internet.


💬 Esempio di inserimento interattivo dei comandi

💬 Comando di sistema da inserire: whoami
✅ Codice di risposta: 200
📄 Contenuto della risposta: {"success":true,"result":"www-data"}

💬 Comando di sistema da inserire: id
✅ Codice di risposta: 200
📄 Contenuto della risposta: {"success":true,"result":"uid=1000(hacker) gid=1000(hacker)"}

💬 Comando di sistema da inserire: exit
👋 Uscita.


⚠️ Avvertenze di sicurezza

❌ Non utilizzare mai in ambienti di produzione.
✅ Questo script deve essere utilizzato solo in ambienti di test locali o in VM isolate.
🛠️ La modalità --method moduleLoad crea un file reale in /tmp/evil.js.
🧾 Se si utilizza l'opzione --log, l'output viene salvato in chiaro, quindi limitare l'accesso al file.
🔐 Ogni richiesta verifica l'effettiva esecuzione di codice JavaScript sul server vulnerabile.


📚 Riferimenti tecnici

  • CVE ufficiale: CVE-2025-55182

  • Metodi di exploit:

    1. child_process#execSync
    2. vm#runInThisContext
    3. fs#writeFileSync
    4. module#_load
  • Flusso dell'attacco:

    1. Invio di un multipart/form-data speciale all'endpoint /formaction
    2. Chiamata di requireModule() da parte del server
    3. RCE tramite la catena del prototipo o l'esecuzione di funzioni vincolate

📄 Licenza e condizioni d'uso

Questo progetto è fornito esclusivamente a scopo di ricerca sulla sicurezza, audit e test,
l'uso non autorizzato su sistemi reali è illegale.

Ogni responsabilità legale derivante dall'uso di questo strumento ricade interamente sull'utente.

Scarica lo strumento
Prodotto/StrumentoVersioni vulnerabiliVersioni corrette
React.js19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1
react-server-dom-webpackcome sopra (↑)come sopra
react-server-dom-parcelcome sopra (↑)come sopra
react-server-dom-turbopackcome sopra (↑)come sopra
Next.js 14alcune versioni a partire dalla 14.3.0.canary.77(ufficiosamente) si consiglia di passare alla 15.0.5 o superiore
Next.js 1515.0.0 ~ 15.5.615.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 15.6.0
Next.js 1616.0.0 ~ 16.0.616.0.7
Altri strumentiReact Router RSC, RedwoodJS, Vite RSC Plugin, Parcel RSC Plugin, ecc.È necessario applicare la patch alle dipendenze RSC del relativo progetto
  • Utilizzo completo delle funzionalità (modalità + log)

    • Utilizzo combinato della modalità moduleLoad e del salvataggio del log
    • python cve_2025_55182_interactive.py http://localhost:3000 --rce --method moduleLoad --log rce_output.log
  • Output di debug del payload

    • Stampa il payload nella console prima dell'invio al server
    • python cve_2025_55182_interactive.py http://localhost:3000 --rce --debug

    • sudo apt update && sudo apt install -y curl build-essential
    • curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh -o /tmp/install_nvm.sh && bash /tmp/install_nvm.sh
    • nvm install 20 && nvm use 20
    • cd vulnerable-react-env && npm install
    • npm start (porta predefinita: 3000)
  • Prova della vulnerabilità
    • Collegarsi a http://localhost:3000 dal browser e inviare _payload e cmd tramite il modulo
    • Oppure riprodurre il flusso RCE con gli esempi curl di vulnerable-react-env/README.md