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
Outils/GitHubGitHub/shambhavim18/cve-2019-15107-lab
Outils DéfensifsSécurité des ConteneursAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationLabs et Pratique
GitHub
shambhavim18/cve-2019-15107-lab

cve-2019-15107-lab

Labo basé sur Docker démontrant CVE-2019-15107, la RCE non authentifiée de Webmin, couvrant le déploiement, l'exploitation, la détection et la remédiation.

Voir le dépôt
il y a 8h 55mPas 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-2019-15107 – Laboratoire RCE non authentifié Webmin

1. Présentation du projet

Ce projet démontre la CVE-2019-15107, une vulnérabilité critique d'exécution de code à distance (RCE) dans Webmin, au sein d'un environnement Docker contrôlé et isolé. Le laboratoire couvre l'intégralité du cycle de vie de la vulnérabilité, du déploiement et de l'exploitation à la détection et à la remédiation.

2. Prérequis et exigences d'environnement

Prérequis-

1.Docker Desktop (installé et en cours d'exécution)
2.Docker Compose
3.Terminal / PowerShell avec prise en charge de curl.exe

Exigences d'environnementOS : Windows / Linux / mac-

1.OS (environnement hôte local)

2.Disponibilité du port : le port 10000 doit être libre sur la machine hôte.

3. Application vulnérable et version

1.Application : Webmin
2.Version vulnérable : 1.910 (versions affectées : 1.880 à 1.920)
3.Version corrigée/patched : 1.930 et supérieures 4.Type de vulnérabilité : Neutralisation incorrecte d'éléments spéciaux utilisés dans une commande OS (CWE-78) 5.Score CVSS : 9.8 (Critique)



4. Étapes d'installation et de configuration

1.Clonez ou téléchargez ce dépôt de projet sur votre machine locale.

2.Ouvrez votre terminal et naviguez vers le répertoire du projet contenant docker-compose.yml.

3.Assurez-vous que Docker Desktop est actif sur votre système.

5. Comment démarrer et arrêter le laboratoire

Comment démarrer le laboratoire-

Exécutez la commande suivante depuis le répertoire racine du projet pour récupérer et démarrer le conteneur vulnérable en mode détaché : docker-compose up -d

Vous pouvez vérifier l'état du conteneur en exécutant : docker compose ps

Accédez à l'interface de l'application dans votre navigateur web à l'adresse : https://localhost:10000 (acceptez l'avertissement de certificat SSL local).

Comment arrêter le laboratoire-

Pour arrêter et supprimer l'environnement de conteneur en cours d'exécution, exécutez : docker-compose down

6. Comment exploiter la vulnérabilité

La vulnérabilité existe dans le point de terminaison de changement de mot de passe non authentifié (/password_change.cgi), où les paramètres d'entrée sont transmis directement au shell système sans assainissement approprié.

Exécutez la commande suivante dans votre terminal (PowerShell/Bash) pour exécuter une commande de diagnostic (id) comme preuve de concept :

curl.exe -k https://localhost:10000/password_change.cgi -e "https://localhost:10000" -d "user=root&pam=&old=test|id&new1=test&new2=test"

7. Résultats attendus

Exploitation réussie : le serveur traite le caractère pipe injecté (|), déclenchant une exécution de commande non authentifiée avec les privilèges root. Le terminal affichera une preuve de réponse HTML accompagnée du retour du shell du conteneur (uid=0(root)), confirmant la réussite de l'exécution de code à distance.

8. Comment exécuter le mécanisme de détectionLa détection de cette vulnérabilité peut être effectuée via :

1.Identification de version : inspecter la version de l'instance Webmin en cours d'exécution pour vérifier si elle se situe dans la plage vulnérable (1.880 à 1.920).

2.Surveillance réseau / des journaux : inspecter les journaux d'accès du serveur web ou du WAF pour les requêtes HTTP POST entrantes dirigées vers /password_change.cgi contenant des caractères de contrôle shell suspects (tels que | ou ;) dans les valeurs des paramètres.

9. Remédiation

Pour atténuer et résoudre la CVE-2019-15107 :

1.Mise à niveau : mettez à niveau Webmin vers la version 1.930 ou supérieure, qui assainit correctement les entrées transmises aux modules sous-jacents.

2.Contrôle d'accès : restreignez l'accès réseau au port 10000 à l'aide de pare-feu ou de tunnels VPN pour éviter toute exposition directe aux réseaux non fiables.

10. Notes de dépannage

1.Démon Docker non démarré : si vous rencontrez des erreurs de connexion, assurez-vous que Docker Desktop est complètement démarré et vérifiez à l'aide de docker version.

2.Conflit de port (10000 déjà utilisé) : assurez-vous qu'aucune autre application ou service local n'occupe le port 10000.

3.Erreur de syntaxe curl dans PowerShell : utilisez curl.exe au lieu de curl standard dans Windows PowerShell pour éviter les problèmes de mappage de paramètres avec l'alias Invoke-WebRequest intégré à PowerShell.

Télécharger l’outil