
Kit de sécurité pour CVE-2025-55182 (React2Shell) — analyser, détecter, corréler et tester la vulnérabilité RCE des composants serveur React
flight risk /flaɪt rɪsk/ — Le protocole Flight de React est la couche de sérialisation derrière les React Server Components. CVE-2025-55182 exploite une faille de désérialisation dans Flight pour réaliser une exécution de code à distance (RCE) sans authentification. Si votre application utilise RSC, c'est un flight risk.
Kit de sécurité pour CVE-2025-55182 (React2Shell) — une vulnérabilité d'exécution de code à distance sans authentification avec un score CVSS de 10,0 dans les React Server Components. Scannez, détectez, corrélez et testez.
| Outil | Description |
|---|
| react2shell-scanner | Scannez les organisations GitHub et les projets GCP pour les dépendances React/Next.js vulnérables. Test d'exploitation autorisé (sonde sûre, lecture de fichier, liste de répertoire, exécution de commande). |
| gcp-ioc-scanner | Interrogez GCP Cloud Logging pour des motifs d'indicateurs de compromission dans plusieurs projets et services K8s. Définitions de IOCs enfichables. |
| gcp-log-correlator | Corrélez les événements de logs GCP par proximité temporelle sur le même pod — par ex., trouvez quelle requête HTTP a déclenché une erreur RCE. |
# Clone
git clone https://github.com/YOUR_USER/flight-risk.git
cd flight-risk
# Install dependencies
pip install -r react2shell-scanner/requirements.txt
pip install pyyaml # for gcp-ioc-scanner
# Make scripts executable
chmod +x react2shell-scanner/bin/*
chmod +x gcp-ioc-scanner/gcp-ioc-scanner
chmod +x gcp-log-correlator/gcp-log-correlator
# Authenticate
gh auth login # GitHub scanning
gcloud auth application-default login # GCP scanning + log analysis
Toutes les commandes s'exécutent depuis la racine du dépôt.
react2shell-scanner/bin/scan-github \
--org YOUR_GITHUB_ORG \
--output ./results/github
react2shell-scanner/bin/scan-gcp \
--project YOUR_GCP_PROJECT \
--output ./results/gcp
react2shell-scanner/bin/scan-all \
--org YOUR_GITHUB_ORG \
--project YOUR_GCP_PROJECT \
--output ./results
python3 react2shell-scanner/cli.py https://your-app.example.com
# Dry run — show payload without sending
python3 react2shell-scanner/cli.py --dry-run --verbose https://your-app.example.com
# Read file via RCE
python3 react2shell-scanner/cli.py --method read-file https://your-app.example.com /etc/hostname
# List directory via RCE
python3 react2shell-scanner/cli.py --method list-dir https://your-app.example.com /app
# Execute command via RCE
python3 react2shell-scanner/cli.py --method exec-cmd https://your-app.example.com "id"
# Batch targets
python3 react2shell-scanner/cli.py --targets targets.txt --output results.json
gcp-ioc-scanner/gcp-ioc-scanner \
--targets gcp-ioc-scanner/examples/targets-example.yaml \
--iocs gcp-ioc-scanner/iocs/cve-2025-55182.yaml \
--start 2026-01-01 \
--end 2026-04-01 \
--output ./results/ioc-scan
gcp-log-correlator/gcp-log-correlator \
--project YOUR_GCP_PROJECT \
--namespace frontend \
--pod-pattern "web-app.*" \
--trigger-filter 'severity=ERROR' \
--preceding-filter 'httpRequest.requestMethod:*' \
--window 30s \
--start 2026-04-01T00:00:00Z \
--end 2026-04-02T00:00:00Z \
--format json,markdown \
--output ./results/correlation
cd react2shell-scanner
docker compose -f docker/docker-compose.yml build
docker compose -f docker/docker-compose.yml run scanner-shell
flight-risk/
├── README.md
├── LICENSE
├── react2shell-scanner/
│ ├── bin/ # scan-github, scan-gcp, scan-all
│ ├── cli.py # CLI de test d'exploitation
│ ├── exploit.py # Logique d'exploitation
│ ├── utils.py # Utilitaires partagés
│ ├── lib/ # Aides Shell + Python
│ ├── vuln-defs/ # Définitions de vulnérabilité enfichables
│ ├── docker/ # Scan conteneurisé
│ ├── examples/ # Scripts d'exemple
│ ├── test-app/ # Montage Next.js vulnérable
│ └── requirements.txt
├── gcp-ioc-scanner/
│ ├── gcp-ioc-scanner # Scanner de logs IOCs
│ ├── iocs/ # Définitions de motifs IOCs
│ └── examples/ # Exemples de configuration cible
└── gcp-log-correlator/
├── gcp-log-correlator # Corrélateur d'événements
└── examples/ # Exemples de corrélation
gh)gcloud)jq| CVSS | 10.0 Critique |
| Vector | Réseau / Sans authentification / Aucune interaction |
| React | 19.0.0 - 19.2.0 (corrigé dans 19.3.0) |
| Next.js | 14.3.0 - 15.3.5, 16.0.0 - 16.0.7 (corrigé dans 15.3.6, 16.0.8) |
| Root cause | Désérialisation non sécurisée dans le protocole Flight de React |
| Impact | RCE complète en tant qu'utilisateur du processus d'application |
Utilisation autorisée uniquement. Cette boîte à outils contient du code d'exploitation. Utilisez-la uniquement contre des systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite explicite de test. Toute utilisation non autorisée peut violer le Computer Fraud and Abuse Act (18 U.S.C. 1030) et les lois équivalentes.
MIT — voir LICENSE.