Exploit basato su Python per CVE-2014-6287 in HTTP File Server 2.3.x, che fornisce una reverse shell tramite payload PowerShell codificato in Base64 per test di penetrazione autorizzati.
Questo repository contiene uno strumento di exploit basato su Python progettato per sfruttare la vulnerabilità CVE-2014-6287 in HTTP File Server (HFS) versioni 2.3.x. Questa vulnerabilità permette a un attaccante di eseguire comandi arbitrari sul server, portando potenzialmente ad accesso e controllo non autorizzati.
⚠️ Disclaimer:
Questo strumento è destinato esclusivamente a scopi educativi e di penetration testing autorizzato. L'uso non autorizzato di questo strumento contro sistemi di cui non si è proprietari o per i quali non si ha esplicita autorizzazione al test è illegale e non etico. L'autore e i collaboratori non sono responsabili per qualsiasi uso improprio o danno causato da questo strumento.
nc) installato sulla macchina dell'attaccante.Clona il Repository:
git clone https://github.com/francescobrina/hfs-cve-2014-6287-exploit.git
cd hfs-cve-2014-6287-exploit
Installa le Dipendenze:
Questo script si basa sulle librerie standard di Python. Assicurati di avere Python 3.6 o superiore installato.
python3 --version
Se non hai Python installato, scaricalo dal sito ufficiale o usa il tuo gestore di pacchetti.
Configura lo Script:
Apri il file exploit.py in un editor di testo e configura le seguenti variabili:
lhost = "YOUR_LOCAL_IP" # Your attacker's IP address
lport = 1111 # Port to listen on
rhost = "TARGET_IP" # Target HFS server IP address
rport = 80 # Target HFS server port (default is 80)
Avvia il Listener Netcat:
Sulla tua macchina attaccante, avvia un listener Netcat per ricevere la reverse shell:
nc -nlvp 1111
Esegui lo Script di Exploit:
Esegui lo script Python di exploit:
python3 exploit.py
Lo script codificherà il comando PowerShell in Base64, invierà una richiesta HTTP GET al server HFS target e attenderà una connessione reverse shell.
Stabilisci la Connessione:
Se l'exploit ha successo, dovresti ricevere una reverse shell sul tuo listener Netcat.
Creazione del Comando PowerShell:
Lo script costruisce un comando PowerShell che avvia una connessione TCP verso la macchina dell'attaccante (lhost:lport). Una volta connesso, crea uno stream per inviare e ricevere dati, stabilendo di fatto una reverse shell.
Codifica del Comando:
Il comando PowerShell viene codificato in Base64 utilizzando la codifica UTF-16LE per offuscarlo e bypassare potenziali filtri di sicurezza.
Creazione del Payload:
Il comando codificato viene incorporato in un payload che viene inviato come parte di una richiesta HTTP GET all'endpoint vulnerabile del server HFS target.
Esecuzione del Payload:
Quando il server HFS elabora la richiesta, decodifica ed esegue il comando PowerShell, stabilendo una reverse shell verso l'attaccante.
Assicurati che le seguenti configurazioni siano impostate correttamente prima di eseguire l'exploit:
lhost: L'indirizzo IP della tua macchina dove Netcat è in ascolto.lport: Il numero di porta su cui Netcat è in ascolto.rhost: L'indirizzo IP della macchina target che esegue il server HFS vulnerabile.rport: Il numero di porta del server HFS target (default è 80).Esempio di configurazione:
lhost = "192.168.1.100"
lport = 1111
rhost = "192.168.1.105"
rport = 80
Nessuna Connessione Reverse Shell:
lhost e rhost siano impostati correttamente e raggiungibili.Errori dello Script:
Problemi con Netcat:
-nlvp) per avviare il listener.I contributi sono benvenuti! Se trovi problemi o hai suggerimenti per miglioramenti, apri una issue o invia una pull request.
Forka il Repository
Crea un Branch per la Funzionalità
git checkout -b feature/YourFeature
Esegui il Commit delle Tue Modifiche
git commit -m "Add Your Feature"
Fai Push sul Branch
git push origin feature/YourFeature
Apri una Pull Request
Sviluppato da Francesco Brina.
Email: [email protected]
Questo progetto è concesso in licenza secondo la Licenza MIT.
Disclaimer:
Usa questo strumento in modo responsabile e solo su sistemi per i quali hai esplicito permesso di testare. L'autore non è responsabile per qualsiasi uso improprio o danno causato da questo strumento.
Sentiti libero di farmi sapere se desideri ulteriori modifiche!