Webadmin 1.580 RCE PoC (CVE-2012-2982)
Ce dépôt contient un proof-of-concept (PoC) en Python pour Webmin version 1.580, qui est vulnérable à une exécution de commande à distance (RCE) en raison d'une désinfection incorrecte des entrées.
La vulnérabilité se trouve dans le composant file/show.cgi et permet à un utilisateur Webmin authentifié ayant accès au module File Manager d'exécuter des commandes système arbitraires en tant que root.
Ce PoC a été développé à des fins éducatives et de recherche et testé dans un environnement de laboratoire contrôlé (TryHackMe).
⚠️ Ce projet est destiné strictement à des fins éducatives et à des tests de sécurité autorisés uniquement.
🛡️ Détails de la vulnérabilité
- Produit: Webmin
- Version: 1.580
- CVE: CVE-2012-2982
- Type de vulnérabilité: Exécution de commande à distance authentifiée
- Impact: Permet aux utilisateurs authentifiés d'exécuter des commandes système arbitraires sur le serveur
- La vulnérabilité existe en raison d'une validation insuffisante des entrées dans le composant
file/show.cgi de Webmin 1.580
- Les entrées contrôlées par l'utilisateur sont mal gérées par les commandes shell backend
- Les caractères spéciaux tels que le tube (
|) ne sont pas désinfectés
- Un attaquant authentifié peut injecter des commandes shell arbitraires
- Les commandes injectées sont exécutées avec les privilèges du processus Webmin (root)
Dans ce PoC :
- Une URL malveillante est envoyée à
show.cgi
- Les caractères tube sont utilisés pour contourner la logique de gestion de fichiers prévue
- Des commandes système arbitraires sont exécutées sur le serveur
Exécution de l'exploit
Utilisation
# Usage:
# python3 webmin.py <target> -u <username> -p <password> -c "<command>"
# Example:
python3 webmin.py https://10.10.10.10:10000 -u admin -p admin123 -c "id"
🛡️ Crédits
- Découverte de la vulnérabilité: CVE-2012-2982 a été initialement découverte par Weston Wagner de American InfoSec Group
- Ce dépôt fournit une implémentation indépendante de preuve de concept à des fins éducatives