Tutorials

FTP Enumeration

L'FTP File Transfer Protocol è un protocollo utilizzato per il trasferimento di file tra client e server. Durante un'attività di penetration testing, è fondamentale enumerare il servizio FTP per ident

#enumeration

FTP Enumeration

Introduzione

L'FTP (File Transfer Protocol) è un protocollo utilizzato per il trasferimento di file tra client e server. Durante un'attività di penetration testing, è fondamentale enumerare il servizio FTP per identificare potenziali vulnerabilità, come l'accesso anonimo abilitato o credenziali deboli.

Ricerca dei moduli FTP in Metasploit

Per identificare i moduli di Metasploit relativi a FTP, utilizziamo il comando:

bash
search ftp

Per affinare la ricerca, possiamo filtrare i moduli per categoria:

bash
search type:auxiliary name:ftp

Enumerazione e test di accesso anonimo

Un primo test da eseguire è verificare se il server FTP consente l'accesso anonimo. Questo può essere fatto con il modulo:

bash
use auxiliary/scanner/ftp/anonymous
set RHOSTS <IP_TARGET>
run

Se l'accesso anonimo è abilitato, il server potrebbe consentire il download o l'upload di file senza autenticazione.

Brute-force delle credenziali FTP

Se l'accesso anonimo non è disponibile, si può tentare un attacco brute-force utilizzando liste di utenti e password comuni. Il modulo di Metasploit dedicato è:

bash
use auxiliary/scanner/ftp/ftp_login
set RHOSTS <IP_TARGET>
set USER_FILE /usr/share/metasploit-framework/data/wordlists/common_users.txt
set PASS_FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
run

Questo testerà combinazioni di username e password per identificare eventuali credenziali valide.

Controllo della versione del server FTP

Identificare la versione del server FTP in uso è utile per la ricerca di exploit specifici. Il modulo di Metasploit per questa operazione è:

bash
use auxiliary/scanner/ftp/ftp_version
set RHOSTS <IP_TARGET>
run

Una volta ottenuta la versione, possiamo cercare vulnerabilità note con un motore di ricerca come Exploit-DB:

bash
searchsploit <VERSIONE_FTP>

Oppure eseguire una ricerca manuale:

bash
search versione_ftp

Conclusione

L'enumerazione FTP è un passo fondamentale durante un'attività di penetration testing, in quanto può rivelare credenziali deboli o vulnerabilità sfruttabili. Dopo aver identificato la versione del server e testato l'autenticazione, si può procedere con ulteriori verifiche di sicurezza o sfruttamento di eventuali vulnerabilità note.