Advanced Port Scanner & Reconnaissance Tool
Zapscan is a powerful, C++ based CLI tool that wraps Nmap to provide a user-friendly and aesthetically pleasing interface for network reconnaissance. It simplifies complex Nmap flags into easy-to-remember commands while adding features like input sanitization, logging, and automated dependency checks.
- ⚡ Fast & Optimized: Built with C++17 for speed and efficiency.
- 🛡️ Secure: Input sanitization prevents command injection vulnerabilities.
- 📋 Logging System: Automatically save scan results to timestamped log files.
- 🔍 15+ Scan Modes:
- Aggressive Scan: Complete OS, service, and script detection.
- Stealth/No-Ping: Scan hosts that block ping requests.
- Vulnerability: Check for common vulnerabilities (if scripts available).
- UDP & Traceroute: Deep network analysis options.
- 🛠️ Easy Build: Ships with
CMakesupport and a one-clicksetup.sh.
git clone https://github.com/MRX-72/zapscan.git
cd zapscan
bash setup.shRequirements: cmake, g++, nmap.
mkdir build && cd build
cmake ..
make
sudo make installSyntax: zap <flags> <target>
| Goal | Command | Description |
|---|---|---|
| Quick Check | zap -Fz <target> |
Scans top 100 common ports. |
| Full Recon | zap -Az <target> |
OS detect, version scan, script scan, traceroute. |
| Save Logs | zap -Lz -Az <target> |
Saves output to zapscan_YYYYMMDD.log. |
| Bypass Ping | zap -Pnz <target> |
Scans hosts that block ICMP ping. |
| All-in-One | zap -All <target> |
The most comprehensive scan mode available. |
| Flag | Nmap Equivalent | Function |
|---|---|---|
-Az |
-A |
Aggressive Scan (OS/Version/Script/Trace) |
-Fz |
-F |
Fast Scan (Top 100 ports) |
-Bz |
(default) | Basic Scan (Top 1000 ports) |
-Oz |
-O |
Operating System Detection |
-sVz |
-sV |
Service Version Detection |
-sCz |
-sC |
Default Script Scan |
-Pnz |
-Pn |
No-Ping / Treat Host as Online |
-Uz |
-sU |
UDP Scan (Note: Slow) |
-Trz |
--traceroute |
Trace path to host |
-Whois |
whois |
Domain/IP Whois Lookup |
-Dz |
dns-brute |
DNS Enumeration Script |
-T4z |
-T4 |
Aggressive Timing Template |
-Gz |
ping |
Simple Ping Check |
-Sz <p> |
-p <p> |
Scan Specific Port |
-Rz |
-p <start>-<end> |
Interactive Range Scan |
Contributions are welcome! Please fork the repository and submit a pull request.
- Fork it.
- Create your feature branch (
git checkout -b feature/AmazingFeature). - Commit your changes (
git commit -m 'Add some AmazingFeature'). - Push to the branch (
git push origin feature/AmazingFeature). - Open a Pull Request.
Distributed under the MIT License. See LICENSE for more information.
Created by MRX-72