Zarixxx/zapd

GitHub: Zarixxx/zapd

一款用 C 语言编写的轻量级网络与威胁分析命令行工具,集成端口扫描、VirusTotal 威胁情报、WHOIS 查询和 Ping/Traceroute 功能,无外部依赖,适合安全评估和网络诊断。

Stars: 2 | Forks: 0

``` ███████╗ █████╗ ██████╗ ██████╗ ╚══███╔╝██╔══██╗██╔══██╗██╔══██╗ ███╔╝ ███████║██████╔╝██║ ██║ ███╔╝ ██╔══██║██╔═══╝ ██║ ██║ ███████╗██║ ██║██║ ██████╔╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚═════╝ ``` **网络与威胁分析工具** ![C](https://img.shields.io/badge/Language-C-red?style=flat-square) ![Platform](https://img.shields.io/badge/Platform-Linux-red?style=flat-square) ![License](https://img.shields.io/badge/License-MIT-red?style=flat-square) ![Author](https://img.shields.io/badge/Author-Zarixxx-black?style=flat-square)
ZapD 是一个用 C 语言编写的命令行工具,用于网络和威胁分析。它是原生二进制文件,运行时无外部依赖,无需 Python 或解释器。只需编译一次,即可获得一个可像任何系统工具一样使用的可执行文件。 ## 安装说明 ### 前置条件 - `gcc` — C 编译器(CachyOS/Arch 默认包含) - `openssl` — 仅用于 VirusTotal 模块 ``` sudo pacman -S openssl # para el módulo vt sudo pacman -S traceroute # para zapd ping --trace sudo pacman -S bind-tools # para zapd whois --dns (dig) ``` ### 编译并安装 ``` git clone https://github.com/Zarixxx/zapd.git cd zapd make sudo make install ``` 这会将二进制文件安装到 `/usr/local/bin/zapd`,你可以在任何终端中使用它。 ### 卸载 ``` sudo make uninstall ``` ## 命令 ### `zapd scan` — 端口扫描 对目标的每个端口执行真实的 TCP 或 UDP 连接,以确定哪些端口是开放的、关闭的或被防火墙过滤的。 - **开放** — 端口接受连接,有服务正在监听。 - **关闭** — 主机响应并拒绝连接(RST)。没有服务。 - **过滤** — 没有响应。防火墙正在静默丢弃数据包。 ``` zapd scan [opciones] ``` | 选项 | 描述 | 默认值 | |--------|-------------|---------| | `-p <端口>` | 要扫描的端口范围。格式:`1-1024`、`22,80,443`、`1-65535` | `1-1024` | | `-T <1-5>` | 速度预设(见下表) | `3` | | `-t ` | 覆盖预设的线程数 | — | | `--timeout ` | 覆盖预设的超时时间(秒,支持小数) | — | | `-u` | UDP 模式而非 TCP | 关闭 | | `-r` | 在扫描前随机化端口顺序 | 关闭 | | `-b` | Banner grabbing:尝试读取每个端口上运行的软件信息 | 关闭 | | `-O` | OS fingerprinting:通过 TTL 猜测操作系统 | 关闭 | | `--show-closed` | 同时显示关闭和过滤的端口 | 关闭 | | `-o <文件>` | 将结果保存为 JSON 文件 | — | #### 时间预设 (`-T`) | 级别 | 名称 | 线程 | 超时 | 使用场景 | |-------|--------|-------|---------|---------------| | `-T1` | Paranoid | 1 | 5.0s | 极慢扫描,网络噪音最小 | | `-T2` | Sneaky | 10 | 3.0s | 慢速,低噪音 | | `-T3` | Normal | 100 | 1.5s | 速度/可靠性平衡(默认) | | `-T4` | Aggressive | 300 | 0.8s | 快速,可能会漏掉响应慢的端口 | | `-T5` | Insane | 500 | 0.3s | 极快,可能出现假阴性 | #### 示例 ``` # 扫描最常用的 1024 个端口 zapd scan 192.168.1.1 # 扫描所有端口 zapd scan 192.168.1.1 -p 1-65535 -T4 # 特定端口及 Banner 和 OS 检测 zapd scan 192.168.1.1 -p 22,80,443,3306,5432 -b -O # UDP 扫描 (DNS, SNMP, DHCP, NTP...) zapd scan 192.168.1.1 -u -p 53,67,68,123,161 # 查看被过滤的端口 (firewall) zapd scan 192.168.1.1 -p 1-1024 --show-closed # 随机端口顺序 zapd scan 192.168.1.1 -r -T3 # 保存结果为 JSON zapd scan 192.168.1.1 -p 1-1024 -b -o resultado.json # 组合使用 zapd scan 192.168.1.1 -p 1-65535 -T4 -r -b -O --show-closed -o full.json ``` ### `zapd vt` — VirusTotal 分析 查询真实的 VirusTotal v3 API,针对 70 多个杀毒引擎同时分析 URL、IP、域名或文件哈希。 需要免费的 API key:[virustotal.com/gui/join-us](https://www.virustotal.com/gui/join-us) ``` zapd vt [opciones] ``` | 选项 | 描述 | 默认值 | |--------|-------------|---------| | `-t <类型>` | 分析类型:`url`、`ip`、`domain`、`hash` | `url` | | `-k <密钥>` | VirusTotal API key | 环境变量 `VT_API_KEY` | | `-o <文件>` | 将完整的 JSON 报告保存到文件 | — | #### 配置 API key(仅需一次) ``` echo 'export VT_API_KEY=tu_clave_aqui' >> ~/.zshrc source ~/.zshrc ``` 此后无需再传递 `-k` 参数。 #### 显示内容 - **判定结果** — CLEAN(干净)、SUSPICIOUS(可疑)或 MALICIOUS(恶意) - **统计数据** — 多少引擎将其检测为恶意、可疑或干净 - **信誉** — VT 中 IP/域名的信誉评分 - **国家和 ASN** — 对于 IP,显示国家和 IP 块所有者 - **文件元数据** — 对于哈希:名称、类型、MD5、SHA256 - **检测列表** — 哪些引擎检测到它以及使用的名称 #### 示例 ``` # 分析可疑 URL zapd vt https://sitio-sospechoso.com # 分析 IP 信誉 zapd vt 8.8.8.8 -t ip # 分析域名 zapd vt malware.ejemplo.com -t domain # 通过 MD5 或 SHA256 哈希分析文件 zapd vt d41d8cd98f00b204e9800998ecf8427e -t hash zapd vt e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 -t hash # 直接传递 API key (不使用环境变量) zapd vt https://sitio.com -k TU_API_KEY # 保存完整报告 zapd vt https://sitio.com -o informe.json ``` ### `zapd ping` — Ping 和 Traceroute 向目标发送 ICMP 数据包并显示每次响应的延迟。使用 `--trace` 执行 traceroute,显示你的机器与目标之间的所有跳(路由器)。 ``` zapd ping [opciones] ``` | 选项 | 描述 | 默认值 | |--------|-------------|---------| | `-c ` | 要发送的 ICMP 数据包数量 | `4` | | `--trace` | Ping 后执行 traceroute | 关闭 | | `--max-hops ` | Traceroute 的最大跳数 | `30` | #### 示例 ``` # 基本 Ping zapd ping 8.8.8.8 # 发送更多数据包以获得更好的统计信息 zapd ping google.com -c 20 # Ping + traceroute zapd ping 8.8.8.8 --trace # 带跳数限制的 Traceroute zapd ping google.com --trace --max-hops 15 ``` ### `zapd whois` — WHOIS 和 DNS 直接通过 TCP(端口 43)连接到 WHOIS 服务器,获取有关域名注册者、到期时间、名称服务器等信息。使用 `--dns` 还可以查询域名的所有 DNS 记录。 ``` zapd whois [opciones] ``` | 选项 | 描述 | |--------|-------------| | `--dns` | 查询 DNS 记录:A、AAAA、MX、NS、TXT、CNAME、SOA | | `-o <文件>` | 将结果保存为 JSON | #### 显示内容 - **WHOIS** — 注册商、创建/到期/更新日期、状态、名称服务器、组织、国家 - **DNS** — 使用 `--dns` 时显示域名的所有记录 #### 示例 ``` # 基本 WHOIS zapd whois google.com # WHOIS + 所有 DNS 记录 zapd whois mozilla.org --dns # 查询 IP zapd whois 8.8.8.8 # 保存结果 zapd whois ejemplo.com --dns -o whois.json ``` ## 快速帮助 ``` zapd --help # ayuda general zapd scan --help # ayuda detallada del escáner zapd vt --help # ayuda del módulo VirusTotal zapd ping --help # ayuda del ping/traceroute zapd whois --help # ayuda del WHOIS/DNS zapd --version # versión actual ``` ## 免责声明 请仅在你拥有明确授权的系统和网络上使用 ZapD。未经授权的端口扫描在你所在的司法管辖区可能属于非法行为。作者不对本工具的滥用行为承担责任。
Zarixxx 用 ❤️ 制作
标签:Ask搜索, GitHub, Linux工具, Ping, TCP扫描, traceroute, VirusTotal, WHOIS查询, 协议探测, 原生二进制, 威胁分析, 安全测试工具, 实时处理, 客户端加密, 并发处理, 开源安全工具, 情报分析, 插件系统, 数据统计, 端口扫描, 端口探测, 网络安全, 网络诊断, 自动化侦查工具, 逆向工程平台, 隐私保护