karthickmessi/WebAppHunter
GitHub: karthickmessi/WebAppHunter
一款零依赖的轻量级 Python 网络漏洞扫描器,集成了多线程端口扫描、Banner 抓取、SSL 证书分析、HTTP 安全头审计和 CVE 模式匹配,并自动生成多格式专业报告。
Stars: 0 | Forks: 0
# NetVulnScanner 🔍
**自动化网络漏洞扫描器**
*作者:Karthickraja S | eJPT 认证*
## 概述
NetVulnScanner 是一款基于 Python 的攻击性安全工具,可自动执行渗透测试的初始阶段——包括 TCP 端口扫描、服务 banner 抓取、SSL/TLS 证书分析、HTTP 安全标头审计和 CVE 模式匹配,随后生成 TXT、JSON 和 CSV 格式的专业报告。
旨在展示入门级职位和实习所需的实际攻击性安全技能。
## 功能
| 功能 | 详情 |
|---|---|
| **多线程端口扫描** | 最多支持 65535 个端口,线程数可配置 |
| **Banner 抓取** | 基于 Raw TCP + HTTP/HTTPS 的 banner 提取 |
| **SSL/TLS 分析** | 证书过期时间、有效性以及配置错误检测 |
| **HTTP 标头审计** | 检查 6 个关键安全标头(HSTS, CSP, X-Frame-Options 等) |
| **CVE 关联** | 针对已知易受攻击的软件版本进行基于模式的匹配 |
| **报告生成** | 输出 TXT、JSON 和 CSV 报告,包含符合 CVSS 标准的严重性评级 |
| **高风险端口标记** | 自动标记危险的开放端口(Telnet, RDP, Redis 等) |
## 安装
```
# Clone repo
git clone https://github.com/KARTHICKRAJA2005S/NetVulnScanner.git
cd NetVulnScanner
# 无外部依赖 — 纯 Python 3 标准库
python3 --version # Requires Python 3.6+
```
## 使用方法
```
# Basic scan (端口 1-1024)
python3 scanner.py 192.168.1.1
# Scan specific ports
python3 scanner.py 192.168.1.1 --ports 22,80,443,8080,3306
# Custom port range
python3 scanner.py example.com --ports 1-5000
# Full scan (全部 65535 个端口)
python3 scanner.py 192.168.1.1 --full --threads 200
# 将报告保存到指定目录
python3 scanner.py 10.0.0.5 --output /tmp/pentest_reports
```
## 示例输出
```
[*] Target: 192.168.1.100 | Ports: 1024 | Threads: 100
[+] Resolved to IP: 192.168.1.100
[+] Reverse DNS: webserver.local
[*] Scanning 1024 ports with 100 threads...
[+] Port 22/tcp OPEN (SSH)
[+] Port 80/tcp OPEN (HTTP)
[+] Port 443/tcp OPEN (HTTPS)
[+] Port 3389/tcp OPEN (RDP)
⚠ HIGH RISK: RDP (brute-force target)
[*] Grabbing service banners...
[Banner] Port 80: Apache/2.4.29 (Ubuntu)
[!] HIGH: Outdated Apache
[*] Checking HTTP security headers...
[-] MISSING: strict-transport-security
[-] MISSING: content-security-policy
[+] Present: x-frame-options: DENY
=================================================================
SCAN RESULTS SUMMARY
=================================================================
Target : 192.168.1.100
Open ports: 4 → [22, 80, 443, 3389]
Total findings: 7
CRITICAL : 0
HIGH : 3
MEDIUM : 2
LOW : 2
[+] Reports saved:
TXT → ./scan_report_192_168_1_100_20250101_1430.txt
JSON → ./scan_report_192_168_1_100_20250101_1430.json
CSV → ./scan_report_192_168_1_100_20250101_1430.csv
```
## ⚠️ 法律免责声明
本工具仅用于**授权的安全评估**。请勿扫描您不拥有或未获得明确书面测试许可的系统。作者不对任何滥用行为负责。
## 使用技术
- Python 3(仅使用标准库 — `socket`, `ssl`, `concurrent.futures`, `json`, `csv`)
- 采用多线程的 TCP 端口扫描
- 通过 Python `ssl` 模块进行 SSL/TLS 检查
- HTTP 标头分析
- CVE 模式匹配数据库
## 简历要点(可直接复制)
```
• Built NetVulnScanner, a Python-based network vulnerability scanner using multi-threaded
TCP port scanning, banner grabbing, SSL certificate analysis, and HTTP security header
auditing — detecting 7+ vulnerability classes across live targets.
• Implemented CVE-pattern matching against 10+ known CVEs, automatic risk classification
using CVSS severity levels, and report generation in TXT/JSON/CSV formats.
```
*我的攻击性安全作品集的一部分 — github.com/KARTHICKRAJA2005S*
标签:Banner Grabbing, Claude, CVE检测, CVSS, eJPT, HTTP安全头, NetVulnScanner, Python, SQL注入检测, SSL/TLS分析, WebAppHunter, Web安全, XSS检测, 安全测试, 密码管理, 插件系统, 攻击性安全, 数据展示, 数据统计, 无后门, 端口扫描, 红队, 网络安全, 蓝队分析, 隐私保护