Skip to content

FTPBuster is a powerful command-line brute-forcing tool designed to brute-force FTP, SFTP, and explicit FTPS servers by performing dictionary-based attacks.

License

Notifications You must be signed in to change notification settings

s-r-e-e-r-a-j/FTPBuster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 

Repository files navigation

FTPBuster

FTPBuster is a powerful command-line brute-forcing tool designed to brute-force FTP, SFTP, and explicit FTPS servers by performing dictionary-based attacks. It is intended for ethical hacking and penetration testing


Features

  • Brute-force support for FTP, SFTP, and explicit FTPS (AUTH TLS only)
  • Supports single username/password and username/password wordlists
  • Real-time progress: tried, remaining, speed, elapsed time, ETA
  • Optional option to save valid credentials to a file
  • Multithreaded for speed (maximum threads: 50 for better accuracy)
  • Automatically handles UTF-8 encoded wordlists, with fallback to Latin-1 if UTF-8 fails

⚠️ Legal Disclaimer

FTPBuster is intended for educational and authorized security testing purposes only. Unauthorized use of this tool against systems without explicit permission is illegal and strictly prohibited. The author is not responsible for any misuse, damage, or legal consequences resulting from the use of this tool.


Requirements

  • Python 3.x
  • paramiko library

Install dependencies:

pip3 install paramiko

Note for Kali, Parrot, Ubuntu 23.04+ users:

If you see an error like:

error: externally-managed-environment

then use:

pip3 install paramiko --break-system-packages

Compatibility

Linux (Debian, RedHat, Arch, etc.)


installation

1. Clone the Repository

git clone https://github.com/s-r-e-e-r-a-j/FTPBuster.git

2. Navigate to the FTPBuster directory

cd FTPBuster

3. Run Installer

sudo python3 install.py

then type y for install

4. Run the tool

ftpbuster [options]

Required Arguments

Option Description
-t, --target Target IP address or domain
-P, --protocol Protocol to use: FTP, SFTP, FTPS
-u, --user-file Username wordlist
--user Single username
-p, --pass-file Password wordlist
--password Single password

You must provide either a wordlist or a single value for both username and password.

Optional Arguments

Option Description
--port Custom port (default: 21 for FTP/FTPS, 22 for SFTP)
--threads Number of threads (default: 10, max: 50 enforced for better accuracy)
--timeout Timeout in seconds (default: 10)
--outfile Optional option to save valid credentials to a file

Examples

FTP with wordlists

ftpbuster -t 192.168.1.5 -P FTP -u /home/kali/Desktop/users.txt -p /home/kali/Desktop/passwords.txt

SFTP with single username

ftpbuster -t 192.168.1.5 -P SFTP --user root -p /home/kali/Desktop/passwords.txt

FTPS with output file

ftpbuster -t ftp.example.com -P FTPS -u /home/kali/Desktop/user.txt -p /home/kali/Desktop/pass.txt --outfile /home/kali/Desktop/valid.txt

Uninstallation

Run the install.py script

sudo python3 install.py

Then Type n for uninstall


License

This project is licensed under the GNU General Public License v3.0

About

FTPBuster is a powerful command-line brute-forcing tool designed to brute-force FTP, SFTP, and explicit FTPS servers by performing dictionary-based attacks.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages