This file lists all the Python dependencies required to run OmniPentest. Users can install all dependencies in one command using pip.
rich
requests
A straightforward README file that includes essential information about OmniPentest, installation instructions, usage examples, and other relevant details.
# OmniPentest 🛡🔍
**OmniPentest** is an enhanced all-in-one penetration testing tool designed to streamline network security assessments. It integrates subnet scanning, service and OS detection, misconfiguration checks, brute-forcing, sensitive data detection, and comprehensive reporting.
## 🔧 **Features**
- **Subnet Scanning and Host Discovery**
- **Service and OS Detection** using Nmap with vulnerability scripts
- **Misconfiguration Checks** for SMB, FTP, NFS, HTTP(S)
- **Brute-Forcing Credentials** using Hydra
- **Sensitive Data Detection**
- **Reporting** in JSON and CSV formats
- **Rich Console Output**
## 🛠 **Installation**
### 1. **Clone the Repository**
```bash
git clone https://github.com/yourusername/OmniPentest.git
cd OmniPentestEnsure you have Python 3.6 or higher installed.
pip install -r requirements.txtOmniPentest relies on several external tools. Install them as follows:
sudo apt-get update
sudo apt-get install -y nmap hydra smbclient nfs-common telnetbrew install nmap hydra smbclient- Nmap: Download and install from nmap.org
- Hydra: Download from Hydra GitHub and follow installation instructions.
- smbclient: Available as part of Samba for Windows
- telnet: Enable via Control Panel > Programs > Turn Windows features on or off > Telnet Client
Note: Some tools like
showmountandtelnetmight require additional setup or alternative tools on macOS.
Create two files named usernames.txt and passwords.txt in the project directory.
Example usernames.txt:
admin
user
guest
test
root
Example passwords.txt:
password123
admin123
guest
123456
letmein
qwerty
Security Note: Ensure these files are stored securely and have appropriate permissions to prevent unauthorized access.
Run the tool with required arguments:
sudo python3 OmniPentest.py <subnet> --json-report --csv-report --threads 100 --userlist usernames.txt --passlist passwords.txtExample:
sudo python3 OmniPentest.py 192.168.1.0/24 --json-report --csv-report --threads 100 --userlist usernames.txt --passlist passwords.txtOptions:
<subnet>: Target subnet in CIDR notation (e.g., 192.168.1.0/24)--json-report: Generate JSON report--csv-report: Generate CSV report--threads: Number of parallel threads (default: 100)--userlist: Path to username list for brute-forcing--passlist: Path to password list for brute-forcing--vulners-key: (Optional) Vulners API key for enhanced vulnerability scanning--no-brute: (Optional) Skip brute-forcing
OmniPentest provides comprehensive reports in both JSON and CSV formats, detailing live hosts, detected services and operating systems, misconfigurations, brute-forcing results, and sensitive data findings.
- JSON Report:
report.json - CSV Report:
report.csv
OmniPentest relies on the following Python packages:
All dependencies can be installed using the provided requirements.txt file.
Ensure the following external tools are installed and accessible in your system's PATH:
- Nmap: Network scanning and OS detection.
- Hydra: Password brute-forcing tool.
- smbclient: SMB/CIFS client.
- showmount: Lists NFS exports (part of
nfs-commonon many Linux distributions). - telnet: For FTP misconfiguration checks.
Refer to the Installation section for detailed installation instructions.
-
Run with Elevated Privileges: To ensure accurate OS detection and comprehensive scanning, run the tool with elevated privileges (e.g., using
sudoon Unix/Linux systems).sudo python3 OmniPentest.py [OPTIONS] <SUBNET>
-
Brute-Forcing Phase: Brute-forcing can be resource-intensive and may trigger security alerts. Use the
--no-bruteflag to skip this phase if desired. -
Vulners API Key: For enhanced vulnerability scanning, obtain an API key from Vulners and use the
--vulners-keyargument.
MIT License. See LICENSE for details.
Khafagy
Email: Ali5afagy@gmail.com
Linkedin: Linkedin.com/in/khafagy
- Rich Documentation: https://rich.readthedocs.io/en/stable/
- Nmap Official Site: https://nmap.org/
- Hydra Official Repository: https://github.com/vanhauser-thc/thc-hydra
- Vulners API: https://vulners.com/api/