KhaosShield/Enum-Flow
GitHub: KhaosShield/Enum-Flow
专为 HackTheBox 设计的综合自动化枚举工具,整合多款安全工具实现从端口发现到 AD 攻击的全流程侦察。
Stars: 0 | Forks: 0
# HTB 枚举工具 v1.1
/
├── enumeration_report.md # Comprehensive report
├── nmap_initial.txt # Initial port scan
├── nmap_detailed.txt # Detailed service scan
├── enum4linux.txt # enum4linux full output
├── gobuster_port80.txt # Web directory results
├── netexec_*.txt # NetExec outputs
├── credential_validation.txt # Credential test results
├── asrep_hashes.txt # AS-REP roastable hashes
├── kerberoast_hashes.txt # Kerberoastable hashes
└── [service]_port[N].txt # Service-specific results
```
**网络范围:**
```
10.10.110.0_24/
├── host_discovery.txt # Live host scan results
├── enumeration_report.md # Combined report
├── 10_10_110_2/ # Per-host subdirectory
│ ├── nmap_initial.txt
│ ├── nmap_detailed.txt
│ └── ...
├── 10_10_110_5/
│ └── ...
└── 10_10_110_100/
└── ...
```
### 终端输出
带有进度指示器的彩色终端输出:
- **绿色**:成功/已发现
- **黄色**:警告/可选
- **青色**:信息/进度
- **红色**:错误/关键发现/利用路径
- **黄色加粗**:漏洞利用命令(可直接复制粘贴)
## Pro Labs 使用
针对 HackTheBox Pro Labs,如 Dante、Offshore 或 RastaLabs:
```
# 先 Discover 所有 live hosts
./htb_enum.py -t 10.10.110.0/24
# 选择 'all' 以 enumerate 每台 host,或挑选特定的
# 结果按 host 子目录组织
```
**Pro Labs 技巧:**
- 从主机发现开始,以绘制网络拓扑
- 对于大型网络,一次枚举一台主机
- 留意主机间的凭据复用
- 检查 BloodHound 输出以查找 AD 攻击路径
## 故障排除
**未发现端口**
使用 ping 验证目标是否可达。检查防火墙规则。
**工具未找到错误**
运行 `sudo ./install.sh` 安装缺失的工具。
**更新 /etc/hosts 权限被拒绝**
使用 sudo 运行:`sudo ./htb_enum.py`
**大型网络超时错误**
使用单主机模式或缩小范围。
**NetExec 架构不匹配错误**
删除过时的数据库:`rm -f ~/.nxc/workspaces/default/smb.db`
**enum4linux 超时**
该工具有 10 分钟超时限制。如需要可使用 Ctrl+Z 跳过。
## 许可证
MIT 许可证 - 详情请参阅 [LICENSE](LICENSE) 文件。
## 致谢
本工具集成并自动化了以下主流安全工具:
- Nmap 作者 Gordon Lyon
- Gobuster 作者 OJ Reeves
- NetExec 作者 Pennyw0rth
- BloodHound 作者 SpecterOps
- enum4linux 作者 Mark Lowe
- Impacket 作者 SecureAuth
- SecLists 作者 Daniel Miessler
- Rich 库作者 Will McGugan
**版本**:v1.1
**作者**:[@KhaosShield](https://github.com/KhaosShield)
**最后更新**:2026 年 2 月 3 日





**适用于 HackTheBox 实验室、Pro Labs 和 CTF 挑战的综合自动化枚举工具**
*作者:[@KhaosShield](https://github.com/KhaosShield)*
## 概述
一款基于 Python 的枚举工具,可自动完成 HackTheBox 实验室、Pro Labs 和 CTF 挑战的侦察工作。它在多个攻击向量上进行系统性枚举,生成详细报告,并将多个主流安全工具集成到单一工作流中。
## v1.1 更新内容
### 功能
- **凭据在 AD 各阶段复用** — 凭据只需输入一次,即可在 BloodHound、Kerberoasting、深度共享枚举和 GPP 提取中共享使用
- **enum4linux 实时终端输出** — 结果直接实时流式传输到终端,并提供解析后的摘要(用户、共享、组、密码策略)
- **关键发现高亮** — 利用路径(psexec、evil-winrm、secretsdump)以带边框的红色面板显示,命令字符串加粗
- **所有 AD 阶段显示进度旋转指示器** — SMB、LDAP 和 Kerberos 枚举现在显示旋转指示器,并提示可使用 Ctrl+Z 跳过
### 错误修复
- LDAP 导出不再卡住(添加了结果/时间限制)
- 修复了 NetExec 凭据验证(`[+]` 模式,服务账户的 LDAP 回退)
- Web 枚举现在可检测端口 8080/8443
- Gobuster VHOST 结果现已解析并报告
- 防止通过凭据进行 Shell 注入
- enum4linux 不再提示输入密码
- 检测到 NetExec DB 架构错误并提供修复说明
## 功能特性
### 核心能力
- **网络范围扫描**,支持自动主机发现
- 使用 nmap 自动发现端口和服务枚举
- 主机名检测,自动集成到 /etc/hosts
- Web 目录暴力破解,支持可配置的递归深度
- 虚拟主机和子域名发现
- Active Directory 枚举,集成 NetExec 和 BloodHound
- 多服务协议枚举(SMB、LDAP、DNS、FTP、SSH 等)
- SSL/TLS 证书分析和漏洞测试
- 生成综合性 Markdown 报告
### Active Directory
- **单次凭据提示** — 输入一次,在所有 AD 子阶段复用
- **NetExec** SMB/LDAP/WinRM/RDP/MSSQL 凭据验证
- **LDAP 回退**,用于 SMB 认证失败的服务账户
- 使用 bloodhound-python 进行 **BloodHound** 数据收集
- 通过 NetExec 和 Impacket 进行 **Kerberoasting**
- 带凭据和不带凭据的 **AS-REP roasting**
- 针对敏感文件的 **深度共享枚举**
- 从 SYSVOL 进行 **GPP 密码提取**
- **凭据矩阵** — 针对所有发现的服务测试凭据
- **利用面板** — 高亮显示 psexec、evil-winrm、secretsdump 命令
### SMB 枚举
- 空会话和访客访问检测
- enum4linux **实时终端流式输出** 和解析结果
- 共享发现和用户枚举
### 高级枚举
- 使用 Nikto 进行 Web 漏洞扫描
- CMS 检测和枚举
- 使用 TestSSL.sh 进行 SSL/TLS 安全测试
- Nuclei 漏洞扫描集成
- NFS 共享枚举
- SNMP 社区字符串发现
- NetBIOS 和 RPC 枚举
## 系统要求
### 必备工具
- nmap - 网络扫描器
- gobuster - 目录/DNS 暴力破解
- netexec - 网络协议利用
### 可选工具
使用以下可选工具增强功能:
| 类别 | 工具 |
|----------|-------|
| Web Fuzzing | feroxbuster, ffuf |
| SMB/AD | smbclient, smbmap, enum4linux, bloodhound-python |
| LDAP/Kerberos | ldapsearch, kerbrute, impacket-scripts |
| DNS | dig, dnsenum |
| Web Scanning | whatweb, nikto, wpscan, joomscan, sqlmap |
| SSL/TLS | testssl.sh, sslscan |
| Network | nbtscan, onesixtyone, responder, ssh-audit |
### Python 要求
- Python 3.8 或更高版本
- rich 库(如缺失会自动安装)
- bloodhound 库(通过 install.sh 安装)
## 安装
### 快速安装
```
# Clone 仓库
git clone https://github.com/KhaosShield/htb-enum.git
cd htb-enum
# 运行 installer
chmod +x install.sh
sudo ./install.sh
```
安装程序将会:
- 安装所有必需和可选工具
- 安装 Python 依赖项
- 从 GitHub 下载 kerbrute
- 可选创建全局符号链接
## 使用方法
### 基本用法
```
# Interactive mode
./htb_enum.py
# 指定目标 IP
./htb_enum.py -t 10.10.11.123
# Network range (Pro Labs)
./htb_enum.py -t 10.10.110.0/24
# IP range notation
./htb_enum.py -t 10.10.110.1-254
# 快速扫描 (跳过 deep enumeration)
./htb_enum.py -t 10.10.11.123 --quick
# Stealth mode (较慢, 更隐蔽)
./htb_enum.py -t 10.10.11.123 --stealth
```
### 命令行选项
```
-t, --target TARGET Target IP, CIDR (10.10.110.0/24), or range (10.10.110.1-254)
-s, --stealth Use stealth mode (slower, quieter scans)
--threads N Number of threads (default: 50)
--quick Quick scan (skip deep enumeration)
-h, --help Show help message
```
### 执行过程中的控制
| 按键 | 操作 |
|-----|--------|
| Ctrl+C | 退出整个脚本 |
| Ctrl+Z | 跳过当前阶段(然后输入 `fg` + Enter 继续) |
## 枚举阶段
### 单主机模式
**阶段 1:初始端口发现**
跨所有端口进行快速 SYN 扫描,以识别开放服务。
**阶段 2:服务与版本检测**
使用版本检测和 NSE 脚本进行详细的 nmap 扫描。
**阶段 3:主机名集成**
使用发现的主机名自动更新 /etc/hosts。
**阶段 4:SSL 证书分析**
从 SSL/TLS 证书中提取信息。
**阶段 5:Web 枚举**
目录暴力破解、VHOST 发现、技术检测。支持端口 80、443、8080 和 8443。
**阶段 6:DNS 枚举**
区域传送尝试和 DNS 记录枚举。
**阶段 7:Active Directory 枚举**
单次凭据提示,执行 NetExec SMB/LDAP 枚举、BloodHound 收集、Kerberoasting、AS-REP roasting、深度共享搜索和 GPP 密码提取。凭据只需输入一次,在所有子阶段复用。利用路径以红色面板高亮显示。
**阶段 8:SMB 枚举**
共享枚举、空会话、用户发现、enum4linux 实时终端输出。
**阶段 9:其他服务**
FTP、SSH、MySQL、MSSQL、RDP、SNMP 枚举。
**阶段 10:高级 Web 评估**
Nikto、CMS 检测、SSL 测试、Nuclei 扫描。
### 网络范围模式
**阶段 0:主机发现**
Ping 扫描以识别网络范围内的存活主机。
**主机选择**
交互式选择要枚举的主机。
**逐主机枚举**
对每个选定的主机运行完整的枚举流水线。
## 输出
### 目录结构
**单主机:**
```
标签:Active Directory, AES-256, BloodHound, CTF工具, HackTheBox, Kerberoasting, LDAP, NetExec, PE 加载器, Plaso, psexec, Python, SMB枚举, 密码管理, 插件系统, 数据统计, 无后门, 模拟器, 漏洞搜索, 漏洞评估, 端口扫描, 网络安全, 自动化枚举, 逆向工具, 隐私保护