ArjunV110/ProMapper

GitHub: ArjunV110/ProMapper

ProMapper 是一个跨平台网络侦察工具,用于端口扫描、服务检测和安全评估,帮助用户快速发现网络资产和潜在风险。

Stars: 0 | Forks: 0

# promapper **生产级跨平台网络扫描器** —— Linux、macOS、Windows、Android Termux。 ``` pip install promapper promapper scanme.nmap.org -p 22,80 --banner ``` ## 功能特性 | 类别 | 能力 | |----------|-------------| | **扫描技术** | TCP Connect、SYN stealth、UDP、FIN、NULL、Xmas、ACK、Window、Maimon、Idle | | **操作系统检测** | TTL/window 指纹识别(13 个签名) | | **服务检测** | Banner 抓取、SSL/TLS 证书检查、SSH 密钥提取 | | **网络分析** | 22 种技术模式、15 种 WAF 签名、目录暴力破解、API 发现 | | **网络情报** | GeoIP(城市级)、ASN/ISP、WHOIS、Shodan、MAC 厂商查询 | | **云/CDN** | AWS、Azure、GCP、Cloudflare、Akamai、Fastly 等 20+ 个提供商 | | **安全** | CVE 版本匹配、蜜罐检测、暴力破解(SSH/FTP/HTTP/Telnet) | | **输出** | 终端(方框字符)、JSON、XML、CSV(防注入)、grepable、HTML | | **监控** | 持续扫描、差异检测、桌面通知 | | **跨平台** | Linux、macOS、Windows、Termux | ## 一键安装命令 一条命令即可 **完全** 安装 PROMAPPER —— 克隆仓库、安装系统包、所有可选的 Python 依赖项以及 PROMAPPER 本身,适用于任何操作系统: ``` bash <(curl -s https://raw.githubusercontent.com/ArjunV110/ProMapper/master/install.sh) ``` 适用于 Linux、macOS、Windows (Git Bash) 和 Android Termux。将安装所有组件:scapy、cryptography、paramiko、dnspython、traceroute、whois —— 无需手动操作。 ## 安装说明 ### 从源代码安装(推荐) ``` git clone https://github.com/ArjunV110/ProMapper.git cd ProMapper pip install -e . ``` ### 直接使用(无需安装) ``` git clone https://github.com/ArjunV110/ProMapper.git cd ProMapper promapper scanme.nmap.org ``` ### 可选依赖项 ``` pip install promapper[full] # All extras pip install promapper[scapy] # SYN/FIN/NULL/Xmas/ACK/Window/Maimon scans pip install promapper[crypto] # SSL certificate fingerprints pip install promapper[paramiko] # SSH brute-force pip install promapper[dnspython] # Custom DNS resolver ``` ## 使用方法 ``` promapper [options] ``` ### 目标指定 | 参数 | 描述 | |----------|-------------| | `target` | IP 地址、主机名、CIDR(例如 `192.168.1.0/24`)或文件 | | `-iL FILE` | 从文件读取目标 | | `-p PORTS` | 端口范围(例如 `22,80,443` 或 `1-1024`) | | `--exclude-ports PORTS` | 要排除的端口 | ### 扫描技术 | 标志 | 扫描类型 | 需要 | |------|-----------|----------| | (默认) | TCP Connect | 无 | | `-sU` | UDP | 无 | | `-sS` | SYN stealth | scapy | | `-sF` | FIN | scapy | | `-sN` | NULL | scapy | | `-sX` | Xmas | scapy | | `-sA` | ACK | scapy | | `-sW` | Window | scapy | | `-sM` | Maimon | scapy | | `--idle-scan ZOMBIE` | Idle scan | scapy | ### 检测功能 | 标志 | 描述 | |------|-------------| | `-sV` | 服务版本检测 | | `-O` | 操作系统指纹识别 | | `--banner` | Banner 抓取 | | `--ssl-cert` | SSL/TLS 证书检查 | | `--http-tech` | HTTP 技术检测 | | `--dir-bust [WORDLIST]` | 目录暴力破解 | | `--api-discovery` | API 端点发现 | | `--subdomain-enum [WORDLIST]` | 子域名枚举 | | `--detect-waf` | WAF 检测 | | `--detect-cdn` | CDN 检测 | | `--detect-cloud` | 云提供商检测 | | `--detect-honeypot` | 蜜罐检测 | | `--cve` | CVE 检查 | | `--ssh-key` | SSH 主机密钥提取 | | `--traceroute` | 路由跟踪 | | `--brute ssh,ftp,http,telnet` | 暴力破解 | ### 信息收集 | 标志 | 描述 | |------|-------------| | `--geo` | 地理位置查询 | | `--asn` | ASN/ISP/ORG 查询 | | `--whois` | WHOIS 查询 | | `--shodan` | Shodan 查询(需设置 `SHODAN_API_KEY`) | | `--mac-vendor` | MAC 厂商查询 | ### 输出格式 | 标志 | 格式 | |------|--------| | (默认) | 终端(带颜色方框字符) | | `-oJ FILE` | JSON | | `-oX FILE` | XML | | `-oN FILE` | 普通(终端) | | `-oC FILE` | CSV(防注入) | | `-oG FILE` | Grepable | | `--html FILE` | HTML 报告 | | `-v` | 详细模式 | ### 性能 | 标志 | 描述 | |------|-------------| | `-T 0-5` | 时序模板(0=极端谨慎,3=正常,5=疯狂) | | `--threads N` | 最大线程数(默认 100) | | `--timeout SEC` | 套接字超时(默认 2.0 秒) | | `--rate-limit N` | 每秒数据包数 | | `--random-delay MIN,MAX` | 随机延迟范围 | ## 架构 ``` promapper/ ├── promapper.py ← Entry point ├── pyproject.toml ← Package config (pip install) ├── README.md ├── LICENSE ← MIT └── promapper/ ← Python package ├── __init__.py ← Package metadata ├── __main__.py ← python -m promapper ├── cli.py ← CLI, argparse, main loop ├── config.py ← Immutable ScanConfig, constants ├── datatypes.py ← PortResult, HostResult ├── scanner.py ← Core engine (ports, ping, traceroute, banner, SSL) ├── detection.py ← OS, WAF, CDN, cloud, honeypot, CVE, HTTP tech ├── lookup.py ← Geo, WHOIS, Shodan, MAC vendor ├── brute.py ← Brute force (SSH, FTP, HTTP, Telnet) ├── formatters.py ← 6 output formats ├── state.py ← State persistence, diff, notifications └── orchestrator.py ← scan_host pipeline (20 stages) ``` ## 输出示例 ``` ┌─ Host Overview ──────────────────────────────────────────────────────┐ │ Hostname scanme.nmap.org │ │ IP Address 45.33.32.156 │ │ Reverse DNS scanme.nmap.org │ │ Latency 234.6 ms │ └──────────────────────────────────────────────────────────────────────┘ ┌─ Open Ports ─────────────────────────────────────────────────────────┐ │ PORT PROTO STATE SERVICE VERSION │ │ ──── ───── ────────── ──────────────────── ────────────── │ │ 22 TCP open ssh │ │ 80 TCP open http │ └──────────────────────────────────────────────────────────────────────┘ Banner (22/tcp): SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.13 Banner (80/tcp): HTTP/1.1 200 OK (Server: Apache/2.4.7) ``` ## 许可证 MIT
标签:CDN识别, CVE匹配, DNS查询, GeoIP定位, Nmap替代品, OSINT工具, Web技术检测, 云提供商识别, 代码生成, 子域名枚举, 实时处理, 密码管理, 批量测试, 插件系统, 操作系统指纹识别, 数据统计, 服务检测, 渗透测试工具, 目录爆破, 端口扫描, 系统安全, 网络安全, 网络安全扫描器, 跨平台工具, 逆向工具, 隐私保护