saitarrun/Xploit404
GitHub: saitarrun/Xploit404
Xploit404 是一个基于终端的渗透测试工具包,通过统一菜单整合 52 个安全工具,为渗透测试和漏洞赏金狩猎提供一站式编排与调用环境。
Stars: 0 | Forks: 0
# Xploit404
一个基于终端的渗透测试工具包。`menu.py` 是一个单一的交互式
启动器,它将 52 个侦察、OSINT、漏洞利用和红队工具 -
包括内置的原始工具以及对系统上已有标准安全工具的轻量封装 -
整合在一个统一的菜单之后,并使用一个共享的会话目标
(域名/用户名) 贯穿您选择的任何工具。
分类包括:域名与网络、身份与社交、搜索与 Dorks、漏洞
与分析、暗网、漏洞利用与框架、Web 应用程序测试、
凭证测试、无线与网络、密码学与加密工具、高级
侦察、初始访问与交付、C2 与指令控制、
后渗透,以及持续安全测试。
运行 `python3 menu.py list` 获取完整的、始终保持最新状态的工具列表,并
运行 `python3 menu.py doctor` 查看您机器上当前已安装并准备就绪的内容 -
两者均从实时工具注册表中读取,因此它们绝不会像此文件中硬编码的列表那样变得过时。
## 关于
**构建使用:** Python 3.10+ (菜单、粘合代码和大多数内置工具)、Go
1.16+ (下方的侦察二进制文件) 和 Bash (`setup.sh`、安装脚本)。有关
完整的 Python 依赖项列表,请参阅 `requirements.txt`。
**涉及的技术以及被封装或内置的著名工具:**
- **侦察与 OSINT** - `amass`, `subfinder`, `assetfinder`, `httpx`,
`puredns`/`massdns`, `theHarvester`, Sublist3r, crt.sh, SecurityTrails,
Wayback Machine, GitHub Dorks, holehe, Sherlock, Osintgram, PhoneInfoga
- **漏洞扫描** - `nuclei`, `nikto`, `sqlmap`, WAF/技术
指纹识别 (Wappalyzer 风格), RetireJS, NVD CVE 查询
- **Web 应用程序测试** - `gobuster`, 内容发现, header
分析, 子域名接管检查
- **凭证测试** - `hydra`, `john` (John the Ripper), `hashcat`,
`aircrack-ng`
- **活动目录 / Windows** - Impacket, BloodHound, Certipy (ADCS),
`pypykatz`
- **C2 与红队框架** - Sliver, Havoc, Mythic, MITRE CALDERA,
Atomic Red Team, Metasploit, SearchSploit
- **钓鱼与交付** - Gophish
- **网络工具** - `nmap`, Wireshark, `chisel`, `proxychains-ng`, Tor
- **暗网** - OnionSearch 及相关的 `.onion` 搜索工具
- **密码学** - Fernet/AES 基于密码的密钥派生实用程序
## 要求
- Python 3.10+ (theHarvester 特别需要 3.12+;首次使用时它会自带自己的 venv,
因此它不会限制工具包的其余部分)
- macOS 或 Linux (Debian/Ubuntu 风格的 `apt`)。Windows 适用于纯 Python
工具,但 `setup.sh` 和大多数系统包工具针对的是 macOS/Linux。
- [Homebrew](https://brew.sh) (macOS) 或 `apt` (Linux) 用于系统软件包
- [Go](https://go.dev) 1.16+ 用于基于 Go 的侦察工具 (在 macOS 上由
`setup.sh` 自动安装;在 Linux 上请先自行安装,
或者让 `setup.sh` 通过 `apt install golang-go` 进行安装)
## 快速设置
```
git clone
cd Xploit404
./setup.sh
```
`setup.sh` 可以安全地重复运行 - 每一步都会跳过已经完成的工作。它会:
1. 在 `.venv` 处创建并激活一个 Python virtualenv,并将
`requirements.txt` 安装到其中
2. 创建 `config/` 和 `output/` 目录,并生成
`config/keys.env` / `.env.local` 模板 (请参阅下方的配置)
3. 安装系统软件包:在 macOS 上通过 Homebrew (`nmap`, `nikto`, `sqlmap`,
`hydra`, `john-jumbo`, `hashcat`, `aircrack-ng`, `wireshark`, `gobuster`,
`exiftool`, `tor`, `exploitdb`, `proxychains-ng`, `amass`, `massdns`,
`chisel`, `go`,以及 `bloodhound`/`metasploit` cask);在 Linux 上通过
`apt` (存在标准软件包的相同工具,以及用于从源码构建下方某个工具的 `build-essential`)
4. 在 Linux 上从源码构建 `massdns` (不存在标准的 apt 软件包,并且
`puredns` 在运行时需要它)
5. 安装 Go 二进制工具 - `assetfinder`, `subfinder`, `httpx`,
`nuclei`, `gau`, `unfurl`, `puredns`, 以及 (仅在 Linux 上,因为 macOS 会从上方的 Homebrew 获取它们) `amass` 和 `chisel` - 到 `~/.local/bin`
6. 内置 Gophish (没有适用于它的 brew/apt 软件包)
7. 最后运行 `python3 menu.py doctor`,以便您可以确切看到哪些已
准备就绪,哪些仍需手动操作
任何步骤中的失败都会记录到 `setup.log` 中,且不会停止其余的
运行;`setup.sh` 会打印任何失败或被跳过的内容的摘要。
完成后:
```
source .venv/bin/activate
python3 menu.py
```
## 需要手动操作的步骤的工具
一些工具被刻意**不进行**自动化安装 - 基于 Docker 的堆栈、
GB 大小的下载或授权软件不应该是安装脚本应在无人值守下安装的内容:
- **Sliver C2** - `INSTALL_SLIVER=1 ./setup.sh` (选择性启用:服务器二进制文件
大小为 260MB+),或参阅[发布版](https://github.com/BishopFox/sliver/releases)
- **Havoc C2** - `git clone https://github.com/HavocFramework/Havoc && make`
- **Mythic C2** - `git clone https://github.com/its-a-feature/Mythic && ./mythic-cli install` (需要 Docker)
- **MITRE CALDERA** - `git clone --recursive https://github.com/mitre/caldera && docker compose up`
- **Atomic Red Team** - `git clone https://github.com/redcanaryco/atomic-red-team`
- **Metasploit, SearchSploit (exploitdb), BloodHound** - 在 macOS 上由 `setup.sh`
覆盖;在 Linux 上,没有一个可靠的 Debian/Ubuntu 标准软件包 - 请从 Kali 仓库安装或手动从官方上游安装
随时运行 `python3 menu.py doctor` 以检查仍缺少什么。
## 配置
**`config/keys.env`** - 可选的 API 密钥,每行一个 `KEY=VALUE`。它已被
git-ignore;同名的真实环境变量始终优先于文件。它支持的每个密钥实际上都会被工具包读取:
| Key | 被用于 | 获取地址 |
|---|---|---|
| `NUMVERIFY_API_KEY` | PhoneInfoga (运营商/线路类型查询) | https://numverify.com |
| `NVD_API_KEY` | CVE 查询 (提高 NVD 速率限制) | https://nvd.nist.gov/developers/request-an-api-key |
| `GH_TOKEN` | GitHub Dorks (避免严格的搜索速率限制) | https://github.com/settings/tokens (`public_repo` 范围) |
| `HIKERAPI_TOKEN` | Osintgram,用于替代 Instagram 登录 | https://hikerapi.com |
**`.env.local`** - 在启动时自动加载 (同样被 git-ignore)。目前
它仅设置 `STRIKER_AUTHORIZED=0`,这控制着 `menu.py --intensive` /
`striker.py --intensive`:强度扫描配置 (更广泛的活动检查,
仍受速率限制) 会拒绝非交互式运行,除非您将此项设置为
`1`,因此脚本化/CI 运行无法静默启用更激进的配置。
交互式菜单自身的 `profile` 命令会要求输入确认的 `AUTHORIZED`
以代替。
## 运行它
```
python3 menu.py # interactive menu
python3 menu.py [args...] # jump straight to a tool, e.g.:
python3 menu.py nmap example.com
python3 menu.py doctor # readiness check for every tool
python3 menu.py list # list all tools by number/category
python3 menu.py help # usage help
```
`python3 striker.py` 是一个完全相同的入口点 - 两者都调用相同的 `main()`。
## 开发
```
python3 -m unittest discover -s tests
```
标签:AD攻击面, ESC4, IP 地址批量处理, OSINT, Python, 安全工具集, 实时处理, 密码管理, 应用安全, 无后门, 请求拦截