nmaping 1.8__tar.gz → 2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- nmaping-2.0/PKG-INFO +105 -0
- nmaping-2.0/README.md +92 -0
- nmaping-2.0/nmaping/__init__.py +5 -0
- nmaping-2.0/nmaping/nmap.py +285 -0
- nmaping-2.0/nmaping.egg-info/PKG-INFO +105 -0
- {nmaping-1.8 → nmaping-2.0}/nmaping.egg-info/SOURCES.txt +1 -1
- nmaping-2.0/nmaping.egg-info/entry_points.txt +2 -0
- {nmaping-1.8 → nmaping-2.0}/pyproject.toml +5 -8
- nmaping-1.8/PKG-INFO +0 -84
- nmaping-1.8/README.md +0 -71
- nmaping-1.8/nmaping/__init__.py +0 -1
- nmaping-1.8/nmaping/nmap.cpython-313-x86_64-linux-gnu.so +0 -0
- nmaping-1.8/nmaping.egg-info/PKG-INFO +0 -84
- nmaping-1.8/nmaping.egg-info/entry_points.txt +0 -2
- {nmaping-1.8 → nmaping-2.0}/nmaping.egg-info/dependency_links.txt +0 -0
- {nmaping-1.8 → nmaping-2.0}/nmaping.egg-info/requires.txt +0 -0
- {nmaping-1.8 → nmaping-2.0}/nmaping.egg-info/top_level.txt +0 -0
- {nmaping-1.8 → nmaping-2.0}/setup.cfg +0 -0
nmaping-2.0/PKG-INFO
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: nmaping
|
|
3
|
+
Version: 2.0
|
|
4
|
+
Summary: An automation and network scanning utility tool.
|
|
5
|
+
Author-email: "Mr. Tan" <mrtanvai@gmail.com>
|
|
6
|
+
License: Custom License
|
|
7
|
+
Project-URL: Homepage, https://github.com/Mr74nX/nmaping
|
|
8
|
+
Classifier: Programming Language :: Python :: 3
|
|
9
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
10
|
+
Requires-Python: >=3.9
|
|
11
|
+
Description-Content-Type: text/markdown
|
|
12
|
+
Requires-Dist: requests
|
|
13
|
+
|
|
14
|
+
# 🚀 Nmaping - Python Nmap Automation Tool
|
|
15
|
+
|
|
16
|
+
A powerful, safe-by-default **Nmap scanning toolkit** built with Python for network reconnaissance, port scanning, and security auditing.
|
|
17
|
+
|
|
18
|
+
Developed by **Mr Tan**, this tool wraps complex Nmap commands into a simple, interactive, colorful CLI — built for ethical hackers, penetration testers, and cybersecurity learners working on systems they own or are authorized to test.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## ⚡ Key Features
|
|
23
|
+
|
|
24
|
+
- 🧠 **20+ Automated Nmap Scan Modes** — SYN, TCP connect, version, OS, vuln, firewall, Xmas, FIN, Null, and more
|
|
25
|
+
- ⚡ **Timing Control** (`-T0` to `-T5`) for stealth vs. speed
|
|
26
|
+
- 🚀 **Parallel Batch Scanning** — scan multiple targets concurrently (up to 10 workers) with `--min-rate` tuning for speed
|
|
27
|
+
- 🗂️ **Scan History Log** — every scan is recorded (target, type, timestamp, output file) for later review
|
|
28
|
+
- 🔁 **Scan Comparison / Diff** — compare two saved scans to see exactly what changed between runs
|
|
29
|
+
- 🧩 **Custom NSE Script Runner** — run any Nmap script by name (e.g. `http-title`, `ssl-cert`) with input validation
|
|
30
|
+
- 🌐 **CIDR Subnet Discovery** — quick host-discovery sweep across a whole subnet
|
|
31
|
+
- 🧠 **Smart Result Caching** — warns before re-scanning a target scanned in the last 30 minutes
|
|
32
|
+
- 🔐 **Authorization Gate** — requires explicit confirmation of ownership/permission before every scan
|
|
33
|
+
- 🛡️ **Hardened Execution** — targets and ports are validated and scans run via `subprocess` (no shell injection risk)
|
|
34
|
+
- 🎨 Interactive colorful CLI interface
|
|
35
|
+
- 🔄 Auto Update Checker (GitHub Sync)
|
|
36
|
+
- 🌐 Cross-platform (Linux & Windows)
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 🔍 Supported Scan Types
|
|
41
|
+
|
|
42
|
+
- SYN Scan
|
|
43
|
+
- TCP Connect Scan
|
|
44
|
+
- Version Detection
|
|
45
|
+
- OS Detection
|
|
46
|
+
- Aggressive Scan
|
|
47
|
+
- Vulnerability Scan (`--script vuln`)
|
|
48
|
+
- Custom NSE Script Scan
|
|
49
|
+
- Firewall Detection / ACK Scan
|
|
50
|
+
- Xmas / FIN / Null Scans
|
|
51
|
+
- Ping / No-Ping Scans
|
|
52
|
+
- Traceroute
|
|
53
|
+
- Top 1000 Ports / All Ports / Specific Port / UDP Ports
|
|
54
|
+
- Batch Scan (multiple targets, parallel)
|
|
55
|
+
- CIDR Subnet Host Discovery
|
|
56
|
+
- Full Combined Scan
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## ⏱️ Timing Levels
|
|
61
|
+
|
|
62
|
+
| Mode | Flag | Description |
|
|
63
|
+
|------|------|-------------|
|
|
64
|
+
| Paranoid | `-T0` | Maximum stealth |
|
|
65
|
+
| Sneaky | `-T1` | Low detection risk |
|
|
66
|
+
| Polite | `-T2` | Light usage |
|
|
67
|
+
| Normal | `-T3` | Default mode |
|
|
68
|
+
| Aggressive | `-T4` | Fast scanning |
|
|
69
|
+
| Insane | `-T5` | Very fast (lab only) |
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## ⚙️ Requirements
|
|
74
|
+
|
|
75
|
+
- Python 3.8+
|
|
76
|
+
- [Nmap](https://nmap.org/download.html) installed and available on your system `PATH`
|
|
77
|
+
- `requests` (for update checks)
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
pip install nmaping
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 🖥️ Usage
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
python3 -m nmaping
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Follow the on-screen menu to pick a scan type, enter your target, confirm authorization, and choose a timing template. Results are saved automatically to `scan_results/`.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## ⚠️ Legal & Ethical Use
|
|
96
|
+
|
|
97
|
+
This tool is intended **strictly for authorized security testing** — scanning systems you own, or systems you have **explicit written permission** to test (e.g. a client engagement, CTF, or personal lab). Unauthorized scanning of networks or systems you don't control may violate computer-crime laws (such as the U.S. CFAA, UK Computer Misuse Act, or equivalent local laws) even when no exploit is used.
|
|
98
|
+
|
|
99
|
+
Nmaping includes a built-in authorization confirmation step before every scan, but that step relies on the user acting in good faith. **You are solely responsible for ensuring you have permission before scanning any target.**
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## 📜 License
|
|
104
|
+
|
|
105
|
+
Educational and ethical use only. See `LICENSE` for details.
|
nmaping-2.0/README.md
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# 🚀 Nmaping - Python Nmap Automation Tool
|
|
2
|
+
|
|
3
|
+
A powerful, safe-by-default **Nmap scanning toolkit** built with Python for network reconnaissance, port scanning, and security auditing.
|
|
4
|
+
|
|
5
|
+
Developed by **Mr Tan**, this tool wraps complex Nmap commands into a simple, interactive, colorful CLI — built for ethical hackers, penetration testers, and cybersecurity learners working on systems they own or are authorized to test.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## ⚡ Key Features
|
|
10
|
+
|
|
11
|
+
- 🧠 **20+ Automated Nmap Scan Modes** — SYN, TCP connect, version, OS, vuln, firewall, Xmas, FIN, Null, and more
|
|
12
|
+
- ⚡ **Timing Control** (`-T0` to `-T5`) for stealth vs. speed
|
|
13
|
+
- 🚀 **Parallel Batch Scanning** — scan multiple targets concurrently (up to 10 workers) with `--min-rate` tuning for speed
|
|
14
|
+
- 🗂️ **Scan History Log** — every scan is recorded (target, type, timestamp, output file) for later review
|
|
15
|
+
- 🔁 **Scan Comparison / Diff** — compare two saved scans to see exactly what changed between runs
|
|
16
|
+
- 🧩 **Custom NSE Script Runner** — run any Nmap script by name (e.g. `http-title`, `ssl-cert`) with input validation
|
|
17
|
+
- 🌐 **CIDR Subnet Discovery** — quick host-discovery sweep across a whole subnet
|
|
18
|
+
- 🧠 **Smart Result Caching** — warns before re-scanning a target scanned in the last 30 minutes
|
|
19
|
+
- 🔐 **Authorization Gate** — requires explicit confirmation of ownership/permission before every scan
|
|
20
|
+
- 🛡️ **Hardened Execution** — targets and ports are validated and scans run via `subprocess` (no shell injection risk)
|
|
21
|
+
- 🎨 Interactive colorful CLI interface
|
|
22
|
+
- 🔄 Auto Update Checker (GitHub Sync)
|
|
23
|
+
- 🌐 Cross-platform (Linux & Windows)
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 🔍 Supported Scan Types
|
|
28
|
+
|
|
29
|
+
- SYN Scan
|
|
30
|
+
- TCP Connect Scan
|
|
31
|
+
- Version Detection
|
|
32
|
+
- OS Detection
|
|
33
|
+
- Aggressive Scan
|
|
34
|
+
- Vulnerability Scan (`--script vuln`)
|
|
35
|
+
- Custom NSE Script Scan
|
|
36
|
+
- Firewall Detection / ACK Scan
|
|
37
|
+
- Xmas / FIN / Null Scans
|
|
38
|
+
- Ping / No-Ping Scans
|
|
39
|
+
- Traceroute
|
|
40
|
+
- Top 1000 Ports / All Ports / Specific Port / UDP Ports
|
|
41
|
+
- Batch Scan (multiple targets, parallel)
|
|
42
|
+
- CIDR Subnet Host Discovery
|
|
43
|
+
- Full Combined Scan
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## ⏱️ Timing Levels
|
|
48
|
+
|
|
49
|
+
| Mode | Flag | Description |
|
|
50
|
+
|------|------|-------------|
|
|
51
|
+
| Paranoid | `-T0` | Maximum stealth |
|
|
52
|
+
| Sneaky | `-T1` | Low detection risk |
|
|
53
|
+
| Polite | `-T2` | Light usage |
|
|
54
|
+
| Normal | `-T3` | Default mode |
|
|
55
|
+
| Aggressive | `-T4` | Fast scanning |
|
|
56
|
+
| Insane | `-T5` | Very fast (lab only) |
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## ⚙️ Requirements
|
|
61
|
+
|
|
62
|
+
- Python 3.8+
|
|
63
|
+
- [Nmap](https://nmap.org/download.html) installed and available on your system `PATH`
|
|
64
|
+
- `requests` (for update checks)
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
pip install nmaping
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## 🖥️ Usage
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
python3 -m nmaping
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Follow the on-screen menu to pick a scan type, enter your target, confirm authorization, and choose a timing template. Results are saved automatically to `scan_results/`.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## ⚠️ Legal & Ethical Use
|
|
83
|
+
|
|
84
|
+
This tool is intended **strictly for authorized security testing** — scanning systems you own, or systems you have **explicit written permission** to test (e.g. a client engagement, CTF, or personal lab). Unauthorized scanning of networks or systems you don't control may violate computer-crime laws (such as the U.S. CFAA, UK Computer Misuse Act, or equivalent local laws) even when no exploit is used.
|
|
85
|
+
|
|
86
|
+
Nmaping includes a built-in authorization confirmation step before every scan, but that step relies on the user acting in good faith. **You are solely responsible for ensuring you have permission before scanning any target.**
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## 📜 License
|
|
91
|
+
|
|
92
|
+
Educational and ethical use only. See `LICENSE` for details.
|
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# NmapEasy - Powerful Nmap wrapper toolkit
|
|
3
|
+
# Author: Mr Tan | https://github.com/Mr74nX
|
|
4
|
+
|
|
5
|
+
import os
|
|
6
|
+
import re
|
|
7
|
+
import sys
|
|
8
|
+
import time
|
|
9
|
+
import shutil
|
|
10
|
+
import platform
|
|
11
|
+
import argparse
|
|
12
|
+
import subprocess
|
|
13
|
+
from datetime import datetime
|
|
14
|
+
|
|
15
|
+
try:
|
|
16
|
+
import requests
|
|
17
|
+
except ImportError:
|
|
18
|
+
requests = None
|
|
19
|
+
|
|
20
|
+
# ------------------------- Colors -------------------------
|
|
21
|
+
red = "\x1b[38;5;196m"
|
|
22
|
+
green = "\033[38;5;156m"
|
|
23
|
+
blue = "\033[38;5;75m"
|
|
24
|
+
white = "\033[38;5;231m"
|
|
25
|
+
orange = "\033[38;5;208m"
|
|
26
|
+
cyan = "\033[1;36m"
|
|
27
|
+
reset = "\033[0m"
|
|
28
|
+
|
|
29
|
+
# ------------------------- Paths -------------------------
|
|
30
|
+
BASE_DIR = os.path.join(os.path.expanduser("~"), ".nmapeasy")
|
|
31
|
+
RESULTS_DIR = os.path.join(BASE_DIR, "results")
|
|
32
|
+
HISTORY_FILE = os.path.join(BASE_DIR, "history.log")
|
|
33
|
+
|
|
34
|
+
os.makedirs(RESULTS_DIR, exist_ok=True)
|
|
35
|
+
|
|
36
|
+
# ------------------------- Version -------------------------
|
|
37
|
+
def get_version():
|
|
38
|
+
if requests is None:
|
|
39
|
+
return "1.0"
|
|
40
|
+
try:
|
|
41
|
+
return requests.get(
|
|
42
|
+
"https://raw.githubusercontent.com/Mr74nX/Nmap-scaning/main/version.txt",
|
|
43
|
+
timeout=5,
|
|
44
|
+
).text.strip()
|
|
45
|
+
except Exception:
|
|
46
|
+
return "1.0"
|
|
47
|
+
|
|
48
|
+
version = get_version()
|
|
49
|
+
|
|
50
|
+
def clear():
|
|
51
|
+
os.system("cls" if platform.system() == "Windows" else "clear")
|
|
52
|
+
|
|
53
|
+
author_data = f"{orange}Author{white}: {green}Mr Tan\n{orange}GitHub{white}: {blue}https://github.com/Mr74nX"
|
|
54
|
+
logo = f"""{red}
|
|
55
|
+
███▄ █ ███▄ ▄███▓ ▄▄▄ ██▓███
|
|
56
|
+
██ ▀█ █ ▓██▒▀█▀ ██▒▒████▄ ▓██░ ██▒
|
|
57
|
+
▓██ ▀█ ██▒▓██ ▓██░▒██ ▀█▄ ▓██░ ██▓▒
|
|
58
|
+
▓██▒ ▐▌██▒▒██ ▒██ ░██▄▄▄▄██ ▒██▄█▓▒ ▒
|
|
59
|
+
▒██░ ▓██░▒██▒ ░██▒ ▓█ ▓██▒▒██▒ ░ ░
|
|
60
|
+
░ ▒░ ▒ ▒ ░ ▒░ ░ ░ ▒▒ ▓▒█░▒▓▒░ ░ ░
|
|
61
|
+
░ ░░ ░ ▒░░ ░ ░ ▒ ▒▒ ░░▒ ░
|
|
62
|
+
░ ░ ░ ░ ░ ░ ▒ ░░
|
|
63
|
+
░ ░ ░ ░
|
|
64
|
+
{cyan}v{white}={orange}{version}
|
|
65
|
+
{author_data}
|
|
66
|
+
|
|
67
|
+
"""
|
|
68
|
+
|
|
69
|
+
# ------------------------- Validation -------------------------
|
|
70
|
+
IP_RE = re.compile(r"^(\d{1,3}\.){3}\d{1,3}(/\d{1,2})?$")
|
|
71
|
+
HOSTNAME_RE = re.compile(r"^[a-zA-Z0-9]([a-zA-Z0-9\-\.]{0,253})[a-zA-Z0-9]$")
|
|
72
|
+
|
|
73
|
+
def validate_target(target: str) -> bool:
|
|
74
|
+
target = target.strip()
|
|
75
|
+
if not target:
|
|
76
|
+
return False
|
|
77
|
+
if IP_RE.match(target):
|
|
78
|
+
parts = target.split("/")[0].split(".")
|
|
79
|
+
return all(0 <= int(p) <= 255 for p in parts)
|
|
80
|
+
return bool(HOSTNAME_RE.match(target)) or target == "localhost"
|
|
81
|
+
|
|
82
|
+
def prompt_target() -> str:
|
|
83
|
+
while True:
|
|
84
|
+
target = input(f"{orange}=>{green} Enter the target IP or domain{white}:{blue} ").strip()
|
|
85
|
+
if validate_target(target):
|
|
86
|
+
return target
|
|
87
|
+
print(f"{red}=> Invalid target. Try again (e.g. 192.168.1.1 or example.com)")
|
|
88
|
+
|
|
89
|
+
def check_nmap_installed() -> bool:
|
|
90
|
+
return shutil.which("nmap") is not None
|
|
91
|
+
|
|
92
|
+
def authorization_gate(target: str) -> bool:
|
|
93
|
+
print(f"\n{orange}=>{red} LEGAL WARNING{white}: Only scan systems you own or have explicit permission to test.")
|
|
94
|
+
ans = input(f"{orange}=>{green} Confirm you are authorized to scan {blue}{target}{green} (y/n){white}: ").strip().lower()
|
|
95
|
+
return ans == "y"
|
|
96
|
+
|
|
97
|
+
# ------------------------- History / Output -------------------------
|
|
98
|
+
def log_history(target: str, scan_name: str, cmd: str, duration: float):
|
|
99
|
+
ts = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
|
100
|
+
with open(HISTORY_FILE, "a", encoding="utf-8") as f:
|
|
101
|
+
f.write(f"[{ts}] target={target} scan={scan_name} duration={duration:.1f}s cmd={cmd}\n")
|
|
102
|
+
|
|
103
|
+
def output_path(target: str, scan_name: str) -> str:
|
|
104
|
+
ts = datetime.now().strftime("%Y%m%d_%H%M%S")
|
|
105
|
+
safe_target = re.sub(r"[^a-zA-Z0-9_.-]", "_", target)
|
|
106
|
+
safe_scan = re.sub(r"[^a-zA-Z0-9_.-]", "_", scan_name)
|
|
107
|
+
return os.path.join(RESULTS_DIR, f"{safe_target}_{safe_scan}_{ts}.txt")
|
|
108
|
+
|
|
109
|
+
def get_timing_template() -> str:
|
|
110
|
+
print(f"\n{orange}==={green} Select Nmap Timing Template {orange}===")
|
|
111
|
+
print(f"{orange}0{white}.{green} Paranoid {red}({orange}0 {white}-{green} Very Slow, bypass IDS{red}){white}")
|
|
112
|
+
print(f"{orange}1{white}.{green} Sneaky {red}({orange}1 {white}- {green}Slow{red}){white}")
|
|
113
|
+
print(f"{orange}2{white}.{green} Polite {red}({orange}2 {white}- {green}Moderate{red}){white}")
|
|
114
|
+
print(f"{orange}3{white}.{green} Normal {red}({orange}3 {white}- {green}Default Speed{red}){white}")
|
|
115
|
+
print(f"{orange}4{white}.{green} Aggressive {red}({orange}4 {white}- {green}Fast & Recommended{red}){white}")
|
|
116
|
+
print(f"{orange}5{white}.{green} Insane {red}({orange}5 {white}- {green}Extremely Fast{red}){white}")
|
|
117
|
+
t_choice = input(f"\n{orange}=>{green} Choose Speed {red}({green}0-5, Default is 3{red}){white}:{green} ").strip()
|
|
118
|
+
return f"-T{t_choice}" if t_choice in "012345" else "-T3"
|
|
119
|
+
|
|
120
|
+
# ------------------------- Scan Profiles -------------------------
|
|
121
|
+
# name : nmap args template ({port} substituted if present)
|
|
122
|
+
SCAN_PROFILES = {
|
|
123
|
+
"1": ("SYN Scan", "-sS"),
|
|
124
|
+
"2": ("Version Detection", "-sV"),
|
|
125
|
+
"3": ("Vulnerability Scan", "--script vuln"),
|
|
126
|
+
"4": ("OS Detection", "-O"),
|
|
127
|
+
"5": ("No Port (Host Discovery)", "-sn"),
|
|
128
|
+
"6": ("Specific Port", "-p {port}"),
|
|
129
|
+
"7": ("Top 1000 Ports", "--top-ports 1000"),
|
|
130
|
+
"8": ("UDP Scan", "-sU"),
|
|
131
|
+
"9": ("Aggressive Scan", "-A"),
|
|
132
|
+
"10": ("Firewall/ACK Detection", "-sA"),
|
|
133
|
+
"11": ("Default Script Scan", "-sC"),
|
|
134
|
+
"12": ("Traceroute", "--traceroute"),
|
|
135
|
+
"13": ("All Ports", "-p-"),
|
|
136
|
+
"14": ("Ping Scan", "-sP"),
|
|
137
|
+
"15": ("No Ping Scan", "-Pn"),
|
|
138
|
+
"16": ("TCP Connect", "-sT"),
|
|
139
|
+
"17": ("Xmas Scan", "-sX"),
|
|
140
|
+
"18": ("FIN Scan", "-sF"),
|
|
141
|
+
"19": ("Null Scan", "-sN"),
|
|
142
|
+
"20": ("Custom (enter your own flags)", None),
|
|
143
|
+
"21": ("Full Deep Scan (slow, everything)",
|
|
144
|
+
"-A -sS -sV --script vuln -O --top-ports 1000 -sU -sC --traceroute -p-"),
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
# ------------------------- Core Runner -------------------------
|
|
148
|
+
def run_scan(target: str, scan_id: str, timing: str, save: bool = True):
|
|
149
|
+
name, args_template = SCAN_PROFILES[scan_id]
|
|
150
|
+
|
|
151
|
+
if args_template is None:
|
|
152
|
+
args_template = input(f"{orange}=>{green} Enter custom nmap flags{white}: ").strip()
|
|
153
|
+
|
|
154
|
+
if "{port}" in args_template:
|
|
155
|
+
port = input(f"{orange}=>{green} Enter the port number/range{white}:{blue} ").strip()
|
|
156
|
+
args_template = args_template.format(port=port)
|
|
157
|
+
|
|
158
|
+
cmd = f"nmap {args_template} {timing} {target}"
|
|
159
|
+
print(f"\n{orange}=>{green} Running {blue}{name}{green} on {blue}{target}{green} | {orange}{timing}{white}")
|
|
160
|
+
print(f"{orange}=>{white} {cmd}\n")
|
|
161
|
+
|
|
162
|
+
start = time.time()
|
|
163
|
+
try:
|
|
164
|
+
result = subprocess.run(cmd, shell=True, capture_output=True, text=True)
|
|
165
|
+
output = result.stdout + result.stderr
|
|
166
|
+
except Exception as e:
|
|
167
|
+
output = f"Error running scan: {e}"
|
|
168
|
+
duration = time.time() - start
|
|
169
|
+
|
|
170
|
+
print(output)
|
|
171
|
+
print(f"{orange}=>{green} Done in {orange}{duration:.1f}s{white}")
|
|
172
|
+
|
|
173
|
+
log_history(target, name, cmd, duration)
|
|
174
|
+
|
|
175
|
+
if save:
|
|
176
|
+
path = output_path(target, name)
|
|
177
|
+
with open(path, "w", encoding="utf-8") as f:
|
|
178
|
+
f.write(f"Command: {cmd}\nDuration: {duration:.1f}s\n\n{output}")
|
|
179
|
+
print(f"{orange}=>{green} Saved to {blue}{path}{white}")
|
|
180
|
+
|
|
181
|
+
def show_history(limit: int = 15):
|
|
182
|
+
clear()
|
|
183
|
+
print(logo)
|
|
184
|
+
if not os.path.exists(HISTORY_FILE):
|
|
185
|
+
print(f"{red}=> No scan history yet.")
|
|
186
|
+
else:
|
|
187
|
+
with open(HISTORY_FILE, encoding="utf-8") as f:
|
|
188
|
+
lines = f.readlines()[-limit:]
|
|
189
|
+
for line in lines:
|
|
190
|
+
print(f"{green}{line.strip()}{white}")
|
|
191
|
+
input(f"\n{orange}=>{green} Press Enter to menu...")
|
|
192
|
+
|
|
193
|
+
# ------------------------- Interactive Menu -------------------------
|
|
194
|
+
def print_menu():
|
|
195
|
+
clear()
|
|
196
|
+
print(logo)
|
|
197
|
+
print(f"{orange}=> {green}Welcome to NmapEasy")
|
|
198
|
+
for key in [str(i) for i in range(1, 22)]:
|
|
199
|
+
name = SCAN_PROFILES[key][0]
|
|
200
|
+
print(f"{orange}{key}{white}.{green} {name}")
|
|
201
|
+
print(f"{orange}H{white}.{green} View Scan History")
|
|
202
|
+
print(f"{orange}0{white}.{green} Exit")
|
|
203
|
+
|
|
204
|
+
def menu():
|
|
205
|
+
if not check_nmap_installed():
|
|
206
|
+
print(f"{red}=> Nmap is not installed or not in PATH. Install it first (e.g. apt install nmap).")
|
|
207
|
+
sys.exit(1)
|
|
208
|
+
|
|
209
|
+
while True:
|
|
210
|
+
print_menu()
|
|
211
|
+
choice = input(f"{orange}=>{green} Enter your choice{white}:{green} ").strip().upper()
|
|
212
|
+
|
|
213
|
+
if choice == "0":
|
|
214
|
+
print(f"{red}Exiting...")
|
|
215
|
+
sys.exit()
|
|
216
|
+
elif choice == "H":
|
|
217
|
+
show_history()
|
|
218
|
+
continue
|
|
219
|
+
elif choice in SCAN_PROFILES:
|
|
220
|
+
clear()
|
|
221
|
+
print(logo)
|
|
222
|
+
target = prompt_target()
|
|
223
|
+
if not authorization_gate(target):
|
|
224
|
+
print(f"{red}=> Authorization not confirmed. Aborting scan.")
|
|
225
|
+
time.sleep(2)
|
|
226
|
+
continue
|
|
227
|
+
timing = get_timing_template()
|
|
228
|
+
run_scan(target, choice, timing)
|
|
229
|
+
input(f"\n{orange}=>{green} Press Enter to menu...")
|
|
230
|
+
else:
|
|
231
|
+
print(f"{red}Invalid choice. Please try again.")
|
|
232
|
+
time.sleep(1.5)
|
|
233
|
+
|
|
234
|
+
# ------------------------- CLI Mode -------------------------
|
|
235
|
+
def cli_main():
|
|
236
|
+
parser = argparse.ArgumentParser(description="NmapEasy - Powerful Nmap wrapper toolkit")
|
|
237
|
+
parser.add_argument("-t", "--target", help="Target IP or domain")
|
|
238
|
+
parser.add_argument("-s", "--scan", help="Scan profile ID (see --list)")
|
|
239
|
+
parser.add_argument("-T", "--timing", default="-T3", help="Timing template, e.g. -T4 (default -T3)")
|
|
240
|
+
parser.add_argument("-p", "--port", help="Port(s) for scan profile 6")
|
|
241
|
+
parser.add_argument("--no-save", action="store_true", help="Don't save output to a file")
|
|
242
|
+
parser.add_argument("--list", action="store_true", help="List all scan profiles and exit")
|
|
243
|
+
parser.add_argument("-y", "--yes", action="store_true", help="Skip authorization confirmation prompt")
|
|
244
|
+
args = parser.parse_args()
|
|
245
|
+
|
|
246
|
+
if args.list:
|
|
247
|
+
print(logo)
|
|
248
|
+
for key, (name, _) in SCAN_PROFILES.items():
|
|
249
|
+
print(f"{orange}{key}{white}: {green}{name}")
|
|
250
|
+
return
|
|
251
|
+
|
|
252
|
+
if not args.target or not args.scan:
|
|
253
|
+
menu()
|
|
254
|
+
return
|
|
255
|
+
|
|
256
|
+
if not check_nmap_installed():
|
|
257
|
+
print(f"{red}=> Nmap is not installed or not in PATH.")
|
|
258
|
+
sys.exit(1)
|
|
259
|
+
|
|
260
|
+
if not validate_target(args.target):
|
|
261
|
+
print(f"{red}=> Invalid target.")
|
|
262
|
+
sys.exit(1)
|
|
263
|
+
|
|
264
|
+
if args.scan not in SCAN_PROFILES:
|
|
265
|
+
print(f"{red}=> Unknown scan profile. Use --list to see options.")
|
|
266
|
+
sys.exit(1)
|
|
267
|
+
|
|
268
|
+
if not args.yes and not authorization_gate(args.target):
|
|
269
|
+
print(f"{red}=> Authorization not confirmed. Aborting.")
|
|
270
|
+
sys.exit(1)
|
|
271
|
+
|
|
272
|
+
name, template = SCAN_PROFILES[args.scan]
|
|
273
|
+
if template and "{port}" in template:
|
|
274
|
+
if not args.port:
|
|
275
|
+
print(f"{red}=> This profile needs --port.")
|
|
276
|
+
sys.exit(1)
|
|
277
|
+
SCAN_PROFILES[args.scan] = (name, template.format(port=args.port))
|
|
278
|
+
|
|
279
|
+
run_scan(args.target, args.scan, args.timing, save=not args.no_save)
|
|
280
|
+
|
|
281
|
+
if __name__ == "__main__":
|
|
282
|
+
if len(sys.argv) > 1:
|
|
283
|
+
cli_main()
|
|
284
|
+
else:
|
|
285
|
+
menu()
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: nmaping
|
|
3
|
+
Version: 2.0
|
|
4
|
+
Summary: An automation and network scanning utility tool.
|
|
5
|
+
Author-email: "Mr. Tan" <mrtanvai@gmail.com>
|
|
6
|
+
License: Custom License
|
|
7
|
+
Project-URL: Homepage, https://github.com/Mr74nX/nmaping
|
|
8
|
+
Classifier: Programming Language :: Python :: 3
|
|
9
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
10
|
+
Requires-Python: >=3.9
|
|
11
|
+
Description-Content-Type: text/markdown
|
|
12
|
+
Requires-Dist: requests
|
|
13
|
+
|
|
14
|
+
# 🚀 Nmaping - Python Nmap Automation Tool
|
|
15
|
+
|
|
16
|
+
A powerful, safe-by-default **Nmap scanning toolkit** built with Python for network reconnaissance, port scanning, and security auditing.
|
|
17
|
+
|
|
18
|
+
Developed by **Mr Tan**, this tool wraps complex Nmap commands into a simple, interactive, colorful CLI — built for ethical hackers, penetration testers, and cybersecurity learners working on systems they own or are authorized to test.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## ⚡ Key Features
|
|
23
|
+
|
|
24
|
+
- 🧠 **20+ Automated Nmap Scan Modes** — SYN, TCP connect, version, OS, vuln, firewall, Xmas, FIN, Null, and more
|
|
25
|
+
- ⚡ **Timing Control** (`-T0` to `-T5`) for stealth vs. speed
|
|
26
|
+
- 🚀 **Parallel Batch Scanning** — scan multiple targets concurrently (up to 10 workers) with `--min-rate` tuning for speed
|
|
27
|
+
- 🗂️ **Scan History Log** — every scan is recorded (target, type, timestamp, output file) for later review
|
|
28
|
+
- 🔁 **Scan Comparison / Diff** — compare two saved scans to see exactly what changed between runs
|
|
29
|
+
- 🧩 **Custom NSE Script Runner** — run any Nmap script by name (e.g. `http-title`, `ssl-cert`) with input validation
|
|
30
|
+
- 🌐 **CIDR Subnet Discovery** — quick host-discovery sweep across a whole subnet
|
|
31
|
+
- 🧠 **Smart Result Caching** — warns before re-scanning a target scanned in the last 30 minutes
|
|
32
|
+
- 🔐 **Authorization Gate** — requires explicit confirmation of ownership/permission before every scan
|
|
33
|
+
- 🛡️ **Hardened Execution** — targets and ports are validated and scans run via `subprocess` (no shell injection risk)
|
|
34
|
+
- 🎨 Interactive colorful CLI interface
|
|
35
|
+
- 🔄 Auto Update Checker (GitHub Sync)
|
|
36
|
+
- 🌐 Cross-platform (Linux & Windows)
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 🔍 Supported Scan Types
|
|
41
|
+
|
|
42
|
+
- SYN Scan
|
|
43
|
+
- TCP Connect Scan
|
|
44
|
+
- Version Detection
|
|
45
|
+
- OS Detection
|
|
46
|
+
- Aggressive Scan
|
|
47
|
+
- Vulnerability Scan (`--script vuln`)
|
|
48
|
+
- Custom NSE Script Scan
|
|
49
|
+
- Firewall Detection / ACK Scan
|
|
50
|
+
- Xmas / FIN / Null Scans
|
|
51
|
+
- Ping / No-Ping Scans
|
|
52
|
+
- Traceroute
|
|
53
|
+
- Top 1000 Ports / All Ports / Specific Port / UDP Ports
|
|
54
|
+
- Batch Scan (multiple targets, parallel)
|
|
55
|
+
- CIDR Subnet Host Discovery
|
|
56
|
+
- Full Combined Scan
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## ⏱️ Timing Levels
|
|
61
|
+
|
|
62
|
+
| Mode | Flag | Description |
|
|
63
|
+
|------|------|-------------|
|
|
64
|
+
| Paranoid | `-T0` | Maximum stealth |
|
|
65
|
+
| Sneaky | `-T1` | Low detection risk |
|
|
66
|
+
| Polite | `-T2` | Light usage |
|
|
67
|
+
| Normal | `-T3` | Default mode |
|
|
68
|
+
| Aggressive | `-T4` | Fast scanning |
|
|
69
|
+
| Insane | `-T5` | Very fast (lab only) |
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## ⚙️ Requirements
|
|
74
|
+
|
|
75
|
+
- Python 3.8+
|
|
76
|
+
- [Nmap](https://nmap.org/download.html) installed and available on your system `PATH`
|
|
77
|
+
- `requests` (for update checks)
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
pip install nmaping
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 🖥️ Usage
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
python3 -m nmaping
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Follow the on-screen menu to pick a scan type, enter your target, confirm authorization, and choose a timing template. Results are saved automatically to `scan_results/`.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## ⚠️ Legal & Ethical Use
|
|
96
|
+
|
|
97
|
+
This tool is intended **strictly for authorized security testing** — scanning systems you own, or systems you have **explicit written permission** to test (e.g. a client engagement, CTF, or personal lab). Unauthorized scanning of networks or systems you don't control may violate computer-crime laws (such as the U.S. CFAA, UK Computer Misuse Act, or equivalent local laws) even when no exploit is used.
|
|
98
|
+
|
|
99
|
+
Nmaping includes a built-in authorization confirmation step before every scan, but that step relies on the user acting in good faith. **You are solely responsible for ensuring you have permission before scanning any target.**
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## 📜 License
|
|
104
|
+
|
|
105
|
+
Educational and ethical use only. See `LICENSE` for details.
|
|
@@ -4,13 +4,13 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "nmaping"
|
|
7
|
-
version = "
|
|
7
|
+
version = "2.0"
|
|
8
8
|
authors = [
|
|
9
|
-
{ name="
|
|
9
|
+
{ name="Mr. Tan", email="mrtanvai@gmail.com" },
|
|
10
10
|
]
|
|
11
11
|
description = "An automation and network scanning utility tool."
|
|
12
12
|
readme = "README.md"
|
|
13
|
-
requires-python = ">=3.
|
|
13
|
+
requires-python = ">=3.9"
|
|
14
14
|
dependencies = [
|
|
15
15
|
"requests",
|
|
16
16
|
]
|
|
@@ -22,14 +22,11 @@ classifiers = [
|
|
|
22
22
|
]
|
|
23
23
|
|
|
24
24
|
[project.urls]
|
|
25
|
-
Homepage = "https://github.com/
|
|
25
|
+
Homepage = "https://github.com/Mr74nX/nmaping"
|
|
26
26
|
|
|
27
27
|
[tool.setuptools.packages.find]
|
|
28
28
|
where = ["."]
|
|
29
29
|
include = ["nmaping*"]
|
|
30
30
|
|
|
31
|
-
[tool.setuptools.package-data]
|
|
32
|
-
nmaping = ["*.so"]
|
|
33
|
-
|
|
34
31
|
[project.scripts]
|
|
35
|
-
nmaping = "nmaping.nmap:
|
|
32
|
+
nmaping = "nmaping.nmap:main"
|
nmaping-1.8/PKG-INFO
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: nmaping
|
|
3
|
-
Version: 1.8
|
|
4
|
-
Summary: An automation and network scanning utility tool.
|
|
5
|
-
Author-email: Abu Tanim <mrtanvai@gmail.com>
|
|
6
|
-
License: Custom License
|
|
7
|
-
Project-URL: Homepage, https://github.com/mrtan-official/nmaping
|
|
8
|
-
Classifier: Programming Language :: Python :: 3
|
|
9
|
-
Classifier: Operating System :: POSIX :: Linux
|
|
10
|
-
Requires-Python: >=3.13
|
|
11
|
-
Description-Content-Type: text/markdown
|
|
12
|
-
Requires-Dist: requests
|
|
13
|
-
|
|
14
|
-
# 🚀 Nmaping - Python Nmap Automation Tool
|
|
15
|
-
|
|
16
|
-
A powerful and automated **Nmap scanning toolkit** built with Python for network reconnaissance, port scanning, and security auditing.
|
|
17
|
-
|
|
18
|
-
Developed by **Mr Tan**, this tool converts complex Nmap commands into a simple interactive CLI interface for ethical hackers, penetration testers, and cybersecurity learners.
|
|
19
|
-
|
|
20
|
-
---
|
|
21
|
-
|
|
22
|
-
## ⚡ Key Features
|
|
23
|
-
|
|
24
|
-
- 🧠 16+ Automated Nmap Scan Modes
|
|
25
|
-
- ⚡ Timing Control (`-T0` to `-T5`) for stealth & speed
|
|
26
|
-
- 🎨 Interactive Colorful CLI Interface
|
|
27
|
-
- 🔄 Auto Update Checker (GitHub Sync)
|
|
28
|
-
- 🌐 Cross-platform (Linux & Windows)
|
|
29
|
-
- 🛡️ Security & penetration testing tool
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## 🔍 Supported Scan Types
|
|
34
|
-
|
|
35
|
-
- SYN Scan
|
|
36
|
-
- TCP Connect Scan
|
|
37
|
-
- Version Detection
|
|
38
|
-
- OS Detection
|
|
39
|
-
- Aggressive Scan
|
|
40
|
-
- Vulnerability Scan (`--script vuln`)
|
|
41
|
-
- Firewall / IDS Evasion
|
|
42
|
-
- Fast Scan Modes
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## ⏱️ Timing Levels
|
|
47
|
-
|
|
48
|
-
| Mode | Flag | Description |
|
|
49
|
-
|------|------|-------------|
|
|
50
|
-
| Paranoid | `-T0` | Maximum stealth |
|
|
51
|
-
| Sneaky | `-T1` | Low detection risk |
|
|
52
|
-
| Polite | `-T2` | Light usage |
|
|
53
|
-
| Normal | `-T3` | Default mode |
|
|
54
|
-
| Aggressive | `-T4` | Fast scanning |
|
|
55
|
-
| Insane | `-T5` | Very fast (lab only) |
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
## ⚙️ Requirements
|
|
60
|
-
|
|
61
|
-
- Python 3.x
|
|
62
|
-
- Nmaping installed
|
|
63
|
-
```bash
|
|
64
|
-
pipx install nmaping
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
# 🚀 2. PyPI DESCRIPTION (paste this in setup / PyPI long description)
|
|
70
|
-
|
|
71
|
-
txt id="pypi_desc"
|
|
72
|
-
Nmaping is a powerful Python-based Nmap automation toolkit designed for network scanning, port analysis, and security auditing.
|
|
73
|
-
|
|
74
|
-
It simplifies complex Nmap commands into an interactive CLI interface, making it easier for ethical hackers, penetration testers, and cybersecurity learners to perform advanced scans.
|
|
75
|
-
|
|
76
|
-
Features:
|
|
77
|
-
- 20+ automated scan modes
|
|
78
|
-
- Nmap timing control (-T0 to -T5)
|
|
79
|
-
- Vulnerability scanning support
|
|
80
|
-
- OS and service detection
|
|
81
|
-
- Fast and aggressive scan options
|
|
82
|
-
- Cross-platform support (Linux & Windows)
|
|
83
|
-
|
|
84
|
-
This project is intended for educational and ethical use only.
|
nmaping-1.8/README.md
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
# 🚀 Nmaping - Python Nmap Automation Tool
|
|
2
|
-
|
|
3
|
-
A powerful and automated **Nmap scanning toolkit** built with Python for network reconnaissance, port scanning, and security auditing.
|
|
4
|
-
|
|
5
|
-
Developed by **Mr Tan**, this tool converts complex Nmap commands into a simple interactive CLI interface for ethical hackers, penetration testers, and cybersecurity learners.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## ⚡ Key Features
|
|
10
|
-
|
|
11
|
-
- 🧠 16+ Automated Nmap Scan Modes
|
|
12
|
-
- ⚡ Timing Control (`-T0` to `-T5`) for stealth & speed
|
|
13
|
-
- 🎨 Interactive Colorful CLI Interface
|
|
14
|
-
- 🔄 Auto Update Checker (GitHub Sync)
|
|
15
|
-
- 🌐 Cross-platform (Linux & Windows)
|
|
16
|
-
- 🛡️ Security & penetration testing tool
|
|
17
|
-
|
|
18
|
-
---
|
|
19
|
-
|
|
20
|
-
## 🔍 Supported Scan Types
|
|
21
|
-
|
|
22
|
-
- SYN Scan
|
|
23
|
-
- TCP Connect Scan
|
|
24
|
-
- Version Detection
|
|
25
|
-
- OS Detection
|
|
26
|
-
- Aggressive Scan
|
|
27
|
-
- Vulnerability Scan (`--script vuln`)
|
|
28
|
-
- Firewall / IDS Evasion
|
|
29
|
-
- Fast Scan Modes
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## ⏱️ Timing Levels
|
|
34
|
-
|
|
35
|
-
| Mode | Flag | Description |
|
|
36
|
-
|------|------|-------------|
|
|
37
|
-
| Paranoid | `-T0` | Maximum stealth |
|
|
38
|
-
| Sneaky | `-T1` | Low detection risk |
|
|
39
|
-
| Polite | `-T2` | Light usage |
|
|
40
|
-
| Normal | `-T3` | Default mode |
|
|
41
|
-
| Aggressive | `-T4` | Fast scanning |
|
|
42
|
-
| Insane | `-T5` | Very fast (lab only) |
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## ⚙️ Requirements
|
|
47
|
-
|
|
48
|
-
- Python 3.x
|
|
49
|
-
- Nmaping installed
|
|
50
|
-
```bash
|
|
51
|
-
pipx install nmaping
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
# 🚀 2. PyPI DESCRIPTION (paste this in setup / PyPI long description)
|
|
57
|
-
|
|
58
|
-
txt id="pypi_desc"
|
|
59
|
-
Nmaping is a powerful Python-based Nmap automation toolkit designed for network scanning, port analysis, and security auditing.
|
|
60
|
-
|
|
61
|
-
It simplifies complex Nmap commands into an interactive CLI interface, making it easier for ethical hackers, penetration testers, and cybersecurity learners to perform advanced scans.
|
|
62
|
-
|
|
63
|
-
Features:
|
|
64
|
-
- 20+ automated scan modes
|
|
65
|
-
- Nmap timing control (-T0 to -T5)
|
|
66
|
-
- Vulnerability scanning support
|
|
67
|
-
- OS and service detection
|
|
68
|
-
- Fast and aggressive scan options
|
|
69
|
-
- Cross-platform support (Linux & Windows)
|
|
70
|
-
|
|
71
|
-
This project is intended for educational and ethical use only.
|
nmaping-1.8/nmaping/__init__.py
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from .nmap import *
|
|
Binary file
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: nmaping
|
|
3
|
-
Version: 1.8
|
|
4
|
-
Summary: An automation and network scanning utility tool.
|
|
5
|
-
Author-email: Abu Tanim <mrtanvai@gmail.com>
|
|
6
|
-
License: Custom License
|
|
7
|
-
Project-URL: Homepage, https://github.com/mrtan-official/nmaping
|
|
8
|
-
Classifier: Programming Language :: Python :: 3
|
|
9
|
-
Classifier: Operating System :: POSIX :: Linux
|
|
10
|
-
Requires-Python: >=3.13
|
|
11
|
-
Description-Content-Type: text/markdown
|
|
12
|
-
Requires-Dist: requests
|
|
13
|
-
|
|
14
|
-
# 🚀 Nmaping - Python Nmap Automation Tool
|
|
15
|
-
|
|
16
|
-
A powerful and automated **Nmap scanning toolkit** built with Python for network reconnaissance, port scanning, and security auditing.
|
|
17
|
-
|
|
18
|
-
Developed by **Mr Tan**, this tool converts complex Nmap commands into a simple interactive CLI interface for ethical hackers, penetration testers, and cybersecurity learners.
|
|
19
|
-
|
|
20
|
-
---
|
|
21
|
-
|
|
22
|
-
## ⚡ Key Features
|
|
23
|
-
|
|
24
|
-
- 🧠 16+ Automated Nmap Scan Modes
|
|
25
|
-
- ⚡ Timing Control (`-T0` to `-T5`) for stealth & speed
|
|
26
|
-
- 🎨 Interactive Colorful CLI Interface
|
|
27
|
-
- 🔄 Auto Update Checker (GitHub Sync)
|
|
28
|
-
- 🌐 Cross-platform (Linux & Windows)
|
|
29
|
-
- 🛡️ Security & penetration testing tool
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## 🔍 Supported Scan Types
|
|
34
|
-
|
|
35
|
-
- SYN Scan
|
|
36
|
-
- TCP Connect Scan
|
|
37
|
-
- Version Detection
|
|
38
|
-
- OS Detection
|
|
39
|
-
- Aggressive Scan
|
|
40
|
-
- Vulnerability Scan (`--script vuln`)
|
|
41
|
-
- Firewall / IDS Evasion
|
|
42
|
-
- Fast Scan Modes
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## ⏱️ Timing Levels
|
|
47
|
-
|
|
48
|
-
| Mode | Flag | Description |
|
|
49
|
-
|------|------|-------------|
|
|
50
|
-
| Paranoid | `-T0` | Maximum stealth |
|
|
51
|
-
| Sneaky | `-T1` | Low detection risk |
|
|
52
|
-
| Polite | `-T2` | Light usage |
|
|
53
|
-
| Normal | `-T3` | Default mode |
|
|
54
|
-
| Aggressive | `-T4` | Fast scanning |
|
|
55
|
-
| Insane | `-T5` | Very fast (lab only) |
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
## ⚙️ Requirements
|
|
60
|
-
|
|
61
|
-
- Python 3.x
|
|
62
|
-
- Nmaping installed
|
|
63
|
-
```bash
|
|
64
|
-
pipx install nmaping
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
# 🚀 2. PyPI DESCRIPTION (paste this in setup / PyPI long description)
|
|
70
|
-
|
|
71
|
-
txt id="pypi_desc"
|
|
72
|
-
Nmaping is a powerful Python-based Nmap automation toolkit designed for network scanning, port analysis, and security auditing.
|
|
73
|
-
|
|
74
|
-
It simplifies complex Nmap commands into an interactive CLI interface, making it easier for ethical hackers, penetration testers, and cybersecurity learners to perform advanced scans.
|
|
75
|
-
|
|
76
|
-
Features:
|
|
77
|
-
- 20+ automated scan modes
|
|
78
|
-
- Nmap timing control (-T0 to -T5)
|
|
79
|
-
- Vulnerability scanning support
|
|
80
|
-
- OS and service detection
|
|
81
|
-
- Fast and aggressive scan options
|
|
82
|
-
- Cross-platform support (Linux & Windows)
|
|
83
|
-
|
|
84
|
-
This project is intended for educational and ethical use only.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|