Penta – Open Source All-In-One CLI Tool To Automate Pentesting



Penta is is Pentest automation tool using Python3.It provides advanced features such as metasploit and nexpose to extract vuln info found on specific servers.

Penta Demo


Install requirements:

Penta requires the following packages

  • Python3.7
  • pipenv

Resolve python package dependency.

$ pipenv install

If you dislike pipenv:

$ pip install -r requirements.txt


$ pipenv run start <options>

If you dislike pipenv:

$ python penta/

Usage: List options

$ pipenv run start -h
usage: [-h] [-target TARGET] [-ports PORTS] [-proxy PROXY]

Penta is Pentest automation tool

optional arguments:
  -h, --help      show this help message and exit
  -target TARGET  Specify target IP / domain
  -ports PORTS    Please, specify the target port(s) separated by comma.
                  Default: 21,22,25,80,110,443,8080
  -proxy PROXY    Proxy[IP:PORT]

Usage: Main menu

[ ] === MENU LIST ===========================================
[0] EXIT
[1] Port scanning Default: 21,22,25,80,110,443,8080
[2] Nmap & vuln scanning
[3] Check HTTP option methods
[4] Grab DNS server info
[5] Shodan host search
[6] FTP connect with anonymous
[7] SSH connect with Brute Force
[99] Change target host
  1. Port scanning
    To check ports for a target. Log output supported.
  2. Nmap
    To check ports by additional means using nmap
  3. Check HTTP option methods
    To check the methods (e.g. GET,POST) for a target.
  4. Grab DNS server info
    To show the info about DNS server.
  5. Shodan host search
    To collect host service info from Shodan.
    Request Shodan API key to enable the feature.
  6. FTP connect with anonymous
    To check if it has anonymous access activated in port 21.
    FTP users can authenticate themselves using the plain text sign-in protocol (Typically username and password format), but they can connect anonymously if the server is configured to allow it. Anyone can log in to the server if the administrator has allowed an FTP connection with an anonymous login.
  7. SSH connect with Brute Force
    To check ssh connection to scan with Brute Force.
    Dictionary data is in data/dict.
  8. Metasploit Frame Work [Auto Scan is Future Work!!!] To check useful msf modules from opened ports. Module DB is in data/msf/module_list.db