linWinPwn 是一个 bash 脚本,可自动执行许多 Active Directory 枚举和漏洞检查。该脚本基于很多现有工具实现其功能,其中包括:impacket、bloodhound、netexec、enum4linux-ng、ldapdomaindump、lsassy、smbmap、kerbrute、adidnsdump、certipy、silenthound 等。
当你只能在有限的时间内访问 Active Directory 环境,并且您希望自动执行枚举过程并有效地收集证据时,linWinPwn 特别有用。此外,linWinPwn 可以取代 Windows 上枚举工具的使用,以减少操作痕迹(例如 PowerShell 命令、Windows 事件、磁盘上创建的文件)的数量,并绕过某些防病毒或 EDR。这可以通过创建从 Windows 主机到远程 Linux 计算机的 SSH 隧道来执行远程动态端口转发,并使用 proxychains 运行 linWinPwn 来实现。
在 Windows 主机上,使用 PowerShell 运行:
ssh kali@<linux_machine> -R 1080 -NCqf
在 Linux 计算机上,首先更新/etc/proxychains4.conf以包含socks5 127.0.0.1 1080,然后运行:
proxychains ./linWinPwn.sh -t <Domain_Controller_IP>
特征
1. 包含6个模块:ad_enum、kerberos、scan_shares、vuln_checks、mssql_enum、pwd_dump
2. ad_enum模块:
a. 使用 crackmapexec 进行 RID 暴力破解
b. 使用 crackmapexec、enum4linux-ng、ldapdomaindump、ldeep 的匿名枚举
c. 对收集的计算机列表进行 Pre2k 身份验证检查
d. ......
3. vuln_checks模块
a. 所有域服务器上的 WebDav、dfscoerce、shadowcoerce 和 Spooler 服务枚举
b. 检查 ms17-010、ms14-068、zerologon、petitpotam、nopac、smb-signing、ntlmv1、runasppl 漏洞
4. ......
自动化AD域枚举和漏洞检测脚本