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
react2shell-poc-CVE-2025-55182 — Prova di concetto per CVE-2025-55182, una vulnerabilità RCE critica in Next.js Server Actions. Sfrutta la deserializzazione insicura nel protocollo React Flight per eseguire comandi arbitrari tramite inquinamento del prototipo e bypass della sandbox. | Kitploit
Strumenti/GitHubGitHub/tamagorengs/react2shell-poc-cve-2025-55182
Analisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebApprendimento e FormazioneSviluppo Payload
GitHubtamagorengs/react2shell-poc-cve-2025-55182

react2shell-poc-CVE-2025-55182

Prova di concetto per CVE-2025-55182, una vulnerabilità RCE critica in Next.js Server Actions. Sfrutta la deserializzazione insicura nel protocollo React Flight per eseguire comandi arbitrari tramite inquinamento del prototipo e bypass della sandbox.

Vedi Repository
28 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

React2Shell PoC (CVE-2025-55182)

Uno script Proof-of-Concept (PoC) per React2Shell (CVE-2025-55182), una vulnerabilità critica di esecuzione remota di codice (RCE) che colpisce le applicazioni Next.js che utilizzano Server Actions.

[!WARNING] Disclaimer: Questo strumento è solo per scopi educativi e di test autorizzati. Non sono responsabile per qualsiasi uso improprio.

Descrizione

Questo script sfrutta una vulnerabilità di deserializzazione insicura nel protocollo "Flight" dei React Server Components. Permette a utenti non autenticati di eseguire codice JavaScript arbitrario sul server, portando a una parziale esecuzione remota di codice (RCE).

Caratteristiche

  • Payload Robusto: Utilizza un controllo di compatibilità per trovare require (global.require o tramite il costruttore del modulo), assicurandosi che funzioni sulle versioni moderne di Node.js (v14+).
  • Configurazione Dinamica: Specifica URL target e comando tramite flag CLI.
  • Gestione degli Errori: Gestione elegante degli errori di connessione.

Installazione

  1. Clona il repository.
  • Installa le dipendenze:
  • root@kitploit:~
    pip install -r requirements.txt
    

    Utilizzo

    root@kitploit:~
    python3 react2shell.py -u <TARGET_URL> [-c <COMMAND>]
    
    ArgomentoDescrizionePredefinito
    -u, --urlObbligatorio. L'URL target (es., http://localhost:3000/).N/A
    -c, --cmdOpzionale. Il comando da eseguire sul server.id

    Esempi

    Verifica identità utente:

    root@kitploit:~
    python3 react2shell.py -u http://127.0.0.1:3000/
    

    Elenca contenuti directory:

    root@kitploit:~
    python3 react2shell.py -u http://127.0.0.1:3000/ -c "ls -la"
    

    Leggi un file sensibile:

    root@kitploit:~
    python3 react2shell.py -u http://127.0.0.1:3000/ -c "cat /etc/passwd"
    

    Analisi Tecnica

    L'exploit sfrutta una catena di Prototype Pollution e Deserializzazione Insicura all'interno della gestione delle Server Actions di Next.js per React Server Components (RSC).

    1. Punto di Ingresso: L'header Next-Action segnala al server di elaborare una Server Action.
    2. Prototype Pollution: Il payload JSON inietta una proprietà then dannosa ("$1:__proto__:then"). Questo inganna il gestore di richieste asincrone del server, facendogli trattare il payload come un "Thenable" (oggetto simile a una Promise).
    3. Iniezione di Codice: Quando il server tenta di risolvere questa falsa Promise, elabora l'oggetto _response. Il campo _prefix è normalmente utilizzato per il buffering interno dello stream, ma manipolandolo possiamo iniettare JavaScript grezzo.
    4. Bypass della Sandbox: Negli ambienti moderni Next.js/Webpack, la funzione require è spesso rimossa dallo scope globale per prevenire RCE. Lo script bypassa questo attraversando la catena dei prototipi di process.mainModule:
      root@kitploit:~
      var require = global.require || global.process.mainModule.constructor._load;
      
      Questo recupera il caricatore interno dei moduli, permettendoci di importare child_process ed eseguire comandi di sistema.
    5. Esecuzione ed Esfiltrazione: Il codice iniettato viene eseguito in modo sincrono (execSync), e l'output viene lanciato come oggetto Error. Questo errore viene serializzato e restituito al client nel corpo della risposta HTTP, permettendoci di vedere l'output del comando.

    Riconoscimenti

    Questo strumento è stato sviluppato con l'assistenza di Gemini 3 Pro.

    Scarica lo strumento