FTP Weak Password Scanner Using Python (Challenge)

# Introduction This project starts with implementing an FTP weak password scanner using Python, providing an introduction to Python penetration testing techniques. The experiment involves understanding FTP server principles, using the ftplib library, and other related knowledge. 1. Understanding FTP servers: Learn about FTP servers, their purpose, and how they work. 2. Using the FTPlib library: Utilize the ftplib library in Python to implement an FTP anonymous scanner and a brute-force password cracker. 3. Using the argparse library: Learn how to handle command-line arguments using the argparse library in Python. 4. Setting up an FTP server on Ubuntu: Follow instructions to set up an FTP server locally for testing purposes. This project is of moderate difficulty and is suitable for users with a basic understanding of Python. It is a good opportunity to enhance and solidify their knowledge of Python fundamentals and gain practical experience in Python penetration testing techniques. ## 👀 Preview ```bash python3 ftpScanner.py -H 127.0.0.1 -f pwd.txt ``` ```bash [-] 127.0.0.1 FTP Anonymous logon failure! [+] Trying: ftp:ftp [+] Trying: root:root [+] Trying: root:toor [+] Trying: admin:admin [+] Trying: geust:geust [+] Trying: admin:123456 [+] 127.0.0.1 FTP Login successful: admin:123456 [+] Host: 127.0.0.1 Username: admin Password: 123456 [*]-------------------Scan End!--------------------[*] ``` ## 🎯 Tasks In this project, you will learn to: - Understand the working principles of FTP servers. - Use the ftplib library in Python to implement an FTP anonymous scanner. - Implement a brute-force password cracker for FTP servers using a password dictionary. - Handle command-line arguments using the argparse library. - Set up an FTP server on Ubuntu for testing purposes. ## 🏆 Achievements In this project, you will learn: - How to interact with FTP servers using Python. - How to implement scanning for anonymous logins and weak passwords. - How to handle command-line arguments in Python. - How to set up an FTP server on Ubuntu.

|60 : 00

Click the virtual machine below to start practicing