Simple FTP Fuzzer – Metasploit Module
If you want to show your respect for my free tools and free support, please consider a small donation :
Download :
FTP Fuzzer - Metasploit Module (6.0 KiB)
Update (July 2010) : the ftp fuzzer has been merged into the Metasploit tree. You do no longer need to download the script here. If you are using the latest version of Metasploit (svn update), then you can find the fuzzer in the modules/auxiliary/fuzzers/ftp folder (file is called ftp_pre_post.rb.
Usage :
Navigate to the metasploit folder, go into ‘modules’ and then into ‘auxiliary’
Create a subfolder called ‘fuzzer’ and place the fuzz_ftp.rb file in that folder
Open Metasploit console and select the module
_ _
_ | | (_)_
____ ____| |_ ____ ___ ____ | | ___ _| |_
| \ / _ ) _)/ _ |/___) _ \| |/ _ \| | _)
| | | ( (/ /| |_( ( | |___ | | | | | |_| | | |__
|_|_|_|\____)\___)_||_(___/| ||_/|_|\___/|_|\___)
|_|
=[ msf v3.3-dev [core:3.3 api:1.0]
+ -- --=[ 429 exploits - 261 payloads
+ -- --=[ 21 encoders - 8 nops
=[ 199 aux
msf > use auxiliary/fuzzer/fuzz_ftp
msf auxiliary(fuzz_ftp) > show options
Module options:
Name Current Setting Required Description
---- --------------- -------- -----------
DELAY 0.5 no Delay between connections
ENDSIZE 20000 no Fuzzing string endsize
PASS anonymous@test.com no Password
RHOSTS yes The target address range or CIDR identifier
RPORT 21 yes The target port
STARTATSTAGE 1 no Start at this test stage
STARTSIZE 10 no Fuzzing string startsize
STEPSIZE 10 no Increase string size each iteration with this number of chars
THREADS 1 yes The number of concurrent threads
USER anonymous no Username
msf auxiliary(fuzz_ftp) >
Important options are :
RHOSTS = the ip address of the FTP server
USER and PASS = set to a valid/working Username & Password combination
The fuzzer has 5 stages :
- Issue no command, only send evil data
- Fuzz the USER command
- Fuzz the PASS command (after a valid USER command/login was executed)
- Fuzz all FTP commands (after a valid login was performed), one command, one fuzz string per session
- Fuzz all FTP commands (after a valid login was performed), one command with all fuzz combinations for that command per session
You can edit the fuzz data and FTP commands yourself (if you want to) by editing the fuzz_ftp.rb file
Start fuzzing ? Just issue the ‘run’ command. When the fuzzer cannot connect anymore, the fuzzing process will be halted, and the last sent string will be displayed.
Leave a Reply