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-66478-Exploit-Poc — Exploit proof-of-concept per Next.js CVE-2025-66478, che dimostra RCE tramite deserializzazione insicura e contaminazione del prototipo nelle Server Actions. Include un'app vulnerabile e uno script di exploit in Python per la ricerca sulla sicurezza. | Kitploit
Strumenti/GitHubGitHub/namest504/cve-2025-66478-exploit-poc
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneSviluppo Payload
GitHubnamest504/cve-2025-66478-exploit-poc

CVE-2025-66478-Exploit-Poc

Exploit proof-of-concept per Next.js CVE-2025-66478, che dimostra RCE tramite deserializzazione insicura e contaminazione del prototipo nelle Server Actions. Include un'app vulnerabile e uno script di exploit in Python per la ricerca sulla sicurezza.

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

PoC per Next.js CVE-2025-66478

Inglese | 한국어

Questo repository contiene una Prova di Concetto (PoC) per riprodurre e studiare la vulnerabilità Next.js CVE-2025-66478. Consiste in un'applicazione Next.js vulnerabile e uno script di exploit in Python per testare la vulnerabilità.

Cos'è CVE-2025-66478?

Si tratta di una vulnerabilità di Esecuzione di Codice Remoto (RCE) che si verifica nell'elaborazione delle Server Actions di Next.js.

Punti salienti:

  • Causa principale: Deserializzazione non sicura all'interno del protocollo RSC (React Server Components) Flight.
  • Vettore d'attacco: Inquinamento del prototipo tramite la proprietà __proto__.

Riepilogo della vulnerabilità

ElementoDescrizione
CVE IDCVE-2025-66478
TipoEsecuzione di Codice Remoto (RCE)
Causa principaleDeserializzazione non sicura nel protocollo RSC Flight
Gravità (CVSS)10.0 (Critico)
ImpattoEsecuzione arbitraria di comandi di sistema sul server

Meccanismo dell'attacco (Dettaglio tecnico)

  1. Trasmissione del payload: L'attaccante costruisce un payload utilizzando il formato di serializzazione React Flight, iniettando proprietà come __proto__.
  2. Deserializzazione non sicura e inquinamento: Il server deserializza il payload senza una corretta validazione, portando all'inquinamento di Object.prototype.
  3. Gadget Thenable: L'inquinamento inietta una proprietà then in tutti gli oggetti. La logica di Next.js identifica erroneamente questi oggetti come Promise (Thenable).
  4. Esecuzione RCE: Quando il server tenta di eseguire await su questa "falsa Promise", il codice JavaScript malevolo iniettato nel metodo then viene eseguito (ad esempio, child_process.execSync).
root@kitploit:~
sequenceDiagram
    participant Attacker
    participant Server as Next.js Server
    
    Attacker->>Server: POST / (JSON with "__proto__": {"then": ...})
    Note right of Server: JSON Parsing Pollutes Object.prototype
    
    Server->>Server: Application Logic encounters an Object
    
    rect rgb(200, 150, 150)
    Note right of Server: "Thenable" Check Gadget
    Server->>Server: Checks: typeof obj.then === 'function'?
    Server-->>Server: YES (due to pollution)
    end
    
    Server->>Server: Await/Execute malicious .then()
    Note right of Server: Malicious JS Code Runs (RCE)
    
    Server-->>Attacker: Response (Action Redirect / Error info)

Di conseguenza, mentre il server elabora questa Promise manipolata, esegue codice JavaScript iniettato dall'attaccante, che può portare all'esecuzione di comandi di sistema. Il file main.py incluso è un codice di esempio che riproduce questo scenario di attacco.

Versioni interessate

Questa vulnerabilità interessa le applicazioni Next.js che utilizzano l'App Router.

  • Interessate:
    • Next.js 15.x
    • Next.js 16.x
    • Next.js 14.3.0-canary.77 e successive (versioni Canary)
  • Non interessate:
    • Next.js 13.x
    • Versioni stabili di Next.js 14.x
    • Applicazioni che utilizzano solo il Pages Router
    • Edge Runtime

Versioni corrette:

  • 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7
  • 16.0.7
  • 15.6.0-canary.58 (per utenti PPR)

Riferimenti

  • Avviso di sicurezza Next.js
  • NVD - CVE-2025-66478

Struttura dei file

  • next.js/: Codice di esempio dell'applicazione web Next.js vulnerabile.
  • exploit/: Script di esecuzione dell'exploit scritto in Python (main.py).

Prerequisiti

  • Node.js: v18 o superiore consigliato.
  • Python: v3.8 o superiore consigliato.

1. Esecuzione dell'applicazione Next.js

Prima di tutto, devi eseguire il server Next.js di destinazione.

  1. Spostati nella directory next.js:

    root@kitploit:~
    cd next.js
    
  2. Installa le dipendenze:

    root@kitploit:~
    npm install
    # Puoi anche usare yarn o pnpm.
    
  3. Avvia il server di sviluppo:

    root@kitploit:~
    npm run dev
    

    Verifica di poter accedere a http://localhost:3000 tramite il tuo browser.

2. Esecuzione dell'exploit Python

Ora puoi testare la vulnerabilità utilizzando lo script Python.

  1. Spostati nella directory exploit dalla radice del progetto:

    root@kitploit:~
    cd exploit
    
  2. (Opzionale) Si consiglia di utilizzare un ambiente virtuale:

    root@kitploit:~
    python3 -m venv venv
    source venv/bin/activate  # Per Windows: venv\Scripts\activate
    
  3. Installa le librerie necessarie: Il modulo requests è richiesto.

    root@kitploit:~
    pip install requests
    
  4. Esegui lo script:

    root@kitploit:~
    python main.py
    

    Di default, punta all'indirizzo locale (http://localhost:3000). Per testare un indirizzo diverso, usa l'opzione --url:

    root@kitploit:~
    python main.py --url http://target-ip:3000
    

Dichiarazione di non responsabilità

Questo codice è fornito solo per scopi di ricerca sulla sicurezza e didattici. Usare questo strumento contro sistemi o reti senza autorizzazione preventiva è illegale, e l'utente è l'unico responsabile per qualsiasi problema derivante da tale uso.

Scarica lo strumento