KhaosShield/htb-enum

GitHub: KhaosShield/htb-enum

面向 HackTheBox 场景的综合自动化枚举工具,整合多款主流安全工具实现从端口发现到 AD 域信息收集的一站式侦察并生成报告。

Stars: 0 | Forks: 0

# HTB 枚举工具 v1.1
![Version](https://img.shields.io/badge/version-1.1-blue.svg) ![Python](https://img.shields.io/badge/python-3.8+-green.svg) ![License](https://img.shields.io/badge/license-MIT-orange.svg) ![Platform](https://img.shields.io/badge/platform-Kali%20Linux-lightgrey.svg) ![Maintained](https://img.shields.io/badge/maintained-yes-brightgreen.svg) **适用于 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 dump 不再卡住(添加了结果/时间限制) - 修复 NetExec 凭据验证(`[+]` 模式,服务账户的 LDAP 回退) - Web 枚举现在检测 8080/8443 端口 - Gobuster VHOST 结果现已解析并报告 - 防止通过凭据进行 Shell 注入 - enum4linux 不再提示输入密码 - 检测 NetExec DB schema 错误并提供修复说明 ## 功能特性 ### 核心能力 - **网段扫描**,自动主机发现 - 自动端口发现和服务枚举(使用 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 凭据验证 - 针对无法通过 SMB 认证的服务账户提供 **LDAP 回退** - 使用 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 模糊测试 | feroxbuster, ffuf | | SMB/AD | smbclient, smbmap, enum4linux, bloodhound-python | | LDAP/Kerberos | ldapsearch, kerbrute, impacket-scripts | | DNS | dig, dnsenum | | Web 扫描 | whatweb, nikto, wpscan, joomscan, sqlmap | | SSL/TLS | testssl.sh, sslscan | | 网络 | nbtscan, onesixtyone, responder, ssh-audit | ### Python 要求 - Python 3.8 或更高版本 - rich 库(如缺失将自动安装) - bloodhound 库(通过 install.sh 安装) ## 安装 ### 快速安装 ``` # 克隆 repository 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 # 指定 target 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 # Quick scan (跳过 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` + 回车继续) | ## 枚举阶段 ### 单主机模式 **阶段 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 扫描以识别网段内的存活主机。 **主机选择** 交互式选择要枚举的主机。 **逐主机枚举** 对每个选定的主机运行完整的枚举流程。 ## 输出 ### 目录结构 **单主机:** ``` / ├── 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: ``` # 先发现所有 live hosts ./htb_enum.py -t 10.10.110.0/24 # 选择 'all' 以 enumerate 每个 host, 或选择特定的 # 结果按 per-host subdirectories 组织 ``` **Pro Labs 技巧:** - 从主机发现开始以映射网络 - 对于大型网络,一次枚举一台主机 - 留意跨主机的凭据复用 - 检查 BloodHound 输出以查找 AD 攻击路径 ## 故障排除 **未发现端口** 使用 ping 验证目标是否可达。检查防火墙规则。 **工具未找到错误** 运行 `sudo ./install.sh` 安装缺失的工具。 **更新 /etc/hosts 权限被拒绝** 使用 sudo 运行:`sudo ./htb_enum.py` **大型网络超时错误** 使用单主机模式或缩小范围。 **NetExec schema 不匹配错误** 删除过期数据库:`rm -f ~/.nxc/workspaces/default/smb.db` **enum4linux 超时** 该工具有 10 分钟超时限制。如需要可使用 Ctrl+Z 跳过。 ## 许可证 MIT 许可证 - 详情请参阅 [LICENSE](LICENSE) 文件。 ## 致谢 本工具集成并自动化了以下主流安全工具: - Nmap by Gordon Lyon - Gobuster by OJ Reeves - NetExec by Pennyw0rth - BloodHound by SpecterOps - enum4linux by Mark Lowe - Impacket by SecureAuth - SecLists by Daniel Miessler - Rich library by Will McGugan **版本**:v1.1 **作者**:[@KhaosShield](https://github.com/KhaosShield) **最后更新**:2026年2月3日
标签:Active Directory, AES-256, BloodHound, Hack The Box, HTB, Kerberos攻击, LDAP, NetExec, Plaso, Python, SMB枚举, SNMP, 主动侦察, 后渗透, 域环境, 密码管理, 插件系统, 数据展示, 数据统计, 无后门, 模拟器, 漏洞评估, 端口扫描, 红队, 自动化枚举, 逆向工具