Exploit basé sur Python pour CVE-2014-6287 dans HTTP File Server 2.3.x, fournissant un reverse shell via une charge utile PowerShell encodée en Base64 pour des tests de pénétration autorisés.
Ce dépôt contient un outil d'exploitation basé sur Python conçu pour exploiter la vulnérabilité CVE-2014-6287 dans HTTP File Server (HFS) versions 2.3.x. Cette vulnérabilité permet à un attaquant d'exécuter des commandes arbitraires sur le serveur, ce qui peut conduire à un accès et un contrôle non autorisés.
⚠️ Avertissement :
Cet outil est destiné uniquement à des fins éducatives et de tests de pénétration autorisés. Toute utilisation non autorisée de cet outil contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas d'autorisation explicite de test est illégale et contraire à l'éthique. L'auteur et les contributeurs ne sont pas responsables de toute mauvaise utilisation ou de tout dommage causé par cet outil.
nc) installé sur la machine de l'attaquant.Cloner le dépôt :
git clone https://github.com/francescobrina/hfs-cve-2014-6287-exploit.git
cd hfs-cve-2014-6287-exploit
Installer les dépendances :
Ce script utilise les bibliothèques standard de Python. Assurez-vous d'avoir Python 3.6 ou supérieur installé.
python3 --version
Si vous n'avez pas Python installé, téléchargez-le depuis le site officiel ou utilisez votre gestionnaire de paquets.
Configurer le script :
Ouvrez le fichier exploit.py dans un éditeur de texte et configurez les variables suivantes :
lhost = "VOTRE_IP_LOCALE" # Adresse IP de votre attaquant
lport = 1111 # Port d'écoute
rhost = "IP_CIBLE" # Adresse IP du serveur HFS cible
rport = 80 # Port du serveur HFS cible (par défaut 80)
Démarrer le listener Netcat :
Sur votre machine d'attaquant, démarrez un listener Netcat pour recevoir le shell inversé :
nc -nlvp 1111
Exécuter le script d'exploitation :
Exécutez le script Python d'exploitation :
python3 exploit.py
Le script encodera la commande PowerShell en Base64, enverra une requête HTTP GET au serveur HFS cible et attendra une connexion de shell inversé.
Établir la connexion :
Si l'exploitation réussit, vous devriez recevoir un shell inversé sur votre listener Netcat.
Création de la commande PowerShell :
Le script construit une commande PowerShell qui initie une connexion TCP vers la machine de l'attaquant (lhost:lport). Une fois connectée, elle crée un flux pour envoyer et recevoir des données, établissant ainsi un shell inversé.
Encodage de la commande :
La commande PowerShell est encodée en Base64 en utilisant l'encodage UTF-16LE pour l'obscurcir et contourner d'éventuels filtres de sécurité.
Création de la charge utile :
La commande encodée est intégrée dans une charge utile qui est envoyée dans le cadre d'une requête HTTP GET au point d'accès vulnérable du serveur HFS cible.
Exécution de la charge utile :
Lorsque le serveur HFS traite la requête, il décode et exécute la commande PowerShell, établissant un shell inversé vers l'attaquant.
Assurez-vous que les configurations suivantes sont correctement définies avant d'exécuter l'exploit :
lhost : L'adresse IP de votre machine où Netcat écoute.lport : Le numéro de port sur lequel Netcat écoute.rhost : L'adresse IP de la machine cible exécutant le serveur HFS vulnérable.rport : Le numéro de port du serveur HFS cible (par défaut 80).Exemple de configuration :
lhost = "192.168.1.100"
lport = 1111
rhost = "192.168.1.105"
rport = 80
Aucune connexion de shell inversé :
lhost et rhost sont correctement définis et accessibles.Erreurs de script :
Problèmes avec Netcat :
-nlvp) pour démarrer le listener.Les contributions sont les bienvenues ! Si vous trouvez un problème ou avez des suggestions d'amélioration, veuillez ouvrir une issue ou soumettre une pull request.
Forker le dépôt
Créer une branche de fonctionnalité
git checkout -b feature/VotreFonctionnalite
Valider vos modifications
git commit -m "Ajouter Votre Fonctionnalite"
Pousser vers la branche
git push origin feature/VotreFonctionnalite
Ouvrir une Pull Request
Développé par Francesco Brina.
Email : [email protected]
Ce projet est sous licence MIT License.
Avertissement :
Utilisez cet outil de manière responsable et uniquement sur les systèmes pour lesquels vous avez une autorisation explicite de test. L'auteur n'est pas responsable de toute mauvaise utilisation ou de tout dommage causé par cet outil.
N'hésitez pas à me faire savoir si vous souhaitez d'autres ajustements !