Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
linWinPwn — Bash脚本,封装了Active Directory工具,用于通过LDAP、RPC、Kerberos和SMB进行自动枚举、漏洞检查、利用和密码转储。 | Kitploit
工具/GitHubGitHub/lefayjey/linwinpwn
密码破解侦察漏洞扫描器漏洞利用信息收集渗透测试
GitHublefayjey/linwinpwn

linWinPwn

Bash脚本,封装了Active Directory工具,用于通过LDAP、RPC、Kerberos和SMB进行自动枚举、漏洞检查、利用和密码转储。

查看仓库
2.2k3033018小时45分前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

linWinPwn - 使用 Linux 进行 Active Directory 渗透测试的瑞士军刀

描述

linWinPwn 是一个 bash 脚本,封装了多个 Active Directory 工具,用于枚举(LDAP、RPC、ADCS、MSSQL、Kerberos、SCCM)、漏洞检查(noPac、ZeroLogon、MS17-010、MS14-068)、对象修改(密码更改、将用户添加到组、RBCD、Shadow Credentials)以及密码转储(secretsdump、lsassy、nanodump、DonPAPI)。该脚本简化了大量工具的使用:impacket、bloodhound、netexec、enum4linux-ng、ldapdomaindump、lsassy、smbmap、kerbrute、certipy、silenthound、bloodyAD、DonPAPI 以及许多其他工具。

安装

Git 克隆仓库并使用 install.sh 脚本安装依赖

git clone https://github.com/lefayjey/linWinPwn
cd linWinPwn
chmod +x install.sh
./install.sh

或者,使用 Docker Hub 上预构建的 Docker 镜像

docker pull lefayjey/linwinpwn:latest

# Add linWinPwn_docker to PATH
echo -e "docker run --rm --init -it --net=host -v \$(pwd):/opt/lwp-output lefayjey/linwinpwn:latest \$@" | sudo tee "/usr/local/sbin/linWinPwn_docker"
sudo chmod 755 /usr/local/sbin/linWinPwn_docker
# Run linWinPwn_docker (output to host's current directory)
linWinPwn_docker -t <DC_IP>
linWinPwn_docker -t <DC_IP> -d <domain> -u <user> -p <password> --auto

或者从源码构建

docker build -t linwinpwn .
docker run --rm --init -it --net=host -v $(pwd):/opt/lwp-output linwinpwn -t <DC_IP>

使用方法

模式

linWinPwn 脚本可以在交互模式(默认)或自动化模式(仅枚举)下执行。

1. 交互模式(默认) - 打开交互式菜单以分别运行检查

linWinPwn -t <Domain_Controller_IP> [-d <AD_domain> -u <AD_user> -p <AD_password> -H <hash[LM:NT]> -K <kerbticket[./krb5cc_ticket]> -A <AES_key> -C <cert[./cert.pfx]> -o <output_dir>]

2. 自动化模式 - 使用 --auto 参数,运行枚举工具(无利用、修改或密码转储)

使用自动化模式时,根据身份验证方法执行不同的检查。

  • 未认证(未提供凭据)
    • 使用 netexec、enum4linux-ng、ldapdomaindump、ldeep 进行匿名枚举
    • 使用 netexec 进行 RID 暴力破解
    • kerbrute 用户喷洒
    • 对收集的计算机列表进行 Pre2k 身份验证检查
    • 使用收集的用户列表进行 ASREPRoast(并使用 john-the-ripper 和 rockyou 字典破解哈希)
    • 盲 Kerberoast
    • CVE-2022-33679 漏洞利用
    • 使用 krbjack 检查 DNS 不安全更新以进行 AS-REQ 滥用
    • 对已识别服务器进行 SMB 共享匿名枚举
    • 对已识别服务器枚举 WebDav、dfscoerce、shadowcoerce 和 Spooler 服务
    • 检查 ms17-010、zerologon、petitpotam、nopac、smb-sigining、ntlmv1、runasppl 弱点
linWinPwn -t <Domain_Controller_IP> --auto [-o <output_dir>]
  • 已认证(使用密码、NTLM 哈希、Kerberos 票据、AES 密钥或 pfx 证书)
    • 使用 netexec 进行 DNS 提取
    • BloodHound 数据收集
    • 使用 netexec、enum4linux-ng、ldapdomaindump、bloodyAD、sccmhunter、rdwatool、sccmhunter、GPOParser 进行枚举
    • 生成用于密码破解的字典
    • netexec 查找 user=pass 的账户
    • 对域计算机进行 Pre2k 身份验证检查
    • 使用 certipy 和 certi.py 提取 ADCS 信息
    • kerbrute 查找 user=pass 的账户
    • ASREPRoasting(并使用 john-the-ripper 和 rockyou 字典破解哈希)
    • Kerberoasting(并使用 john-the-ripper 和 rockyou 字典破解哈希)
    • 定向 Kerberoasting(并使用 john-the-ripper 和 rockyou 字典破解哈希)
    • 使用 smbmap、FindUncommonShares 和 cme 的 spider_plus 对所有域服务器进行 SMB 共享枚举
    • 对所有域服务器枚举 WebDav、dfscoerce、shadowcoerce 和 Spooler 服务(使用 cme、Coercer 和 RPC Dump)
    • 检查 ms17-010、ms14-068、zerologon、petitpotam、nopac、smb-signing、ntlmv1、runasppl、certifried 弱点、ldapnightmare、badsuccessor
    • 检查 mssql 权限提升路径
    • 检查 mssql 中继可能性
linWinPwn -t <Domain_Controller_IP>  -d <AD_domain> -u <AD_user> [-p <AD_password> -H <hash[LM:NT]> -K <kerbticket[./krb5cc_ticket]> -A <AES_key> -C <cert[./cert.pfx]>] [-o <output_dir>] --auto

参数

自动配置 - 在运行模块之前,与目标 DC 进行 NTP 同步并向 /etc/hosts 添加条目

linWinPwn -t <Domain_Controller_IP> --auto-config

LDAPS - 使用 LDAPS 而不是 LDAP(端口 636)

linWinPwn -t <Domain_Controller_IP> --ldaps

强制 Kerberos 认证 - 强制使用 Kerberos 身份验证而不是 NTLM(在可能的情况下)

linWinPwn -t <Domain_Controller_IP> --force-kerb

详细输出 - 启用所有详细和调试输出

linWinPwn -t <Domain_Controller_IP> --verbose

接口 - 选择攻击者的网络接口

linWinPwn -t <Domain_Controller_IP> -I tun0
linWinPwn -t <Domain_Controller_IP> --interface eth0

目标 - 选择要扫描的目标(DC、All、IP=IP_or_hostname、File=./path_to_file)

linWinPwn -t <Domain_Controller_IP> --targets All
linWinPwn -t <Domain_Controller_IP> --targets DC
linWinPwn -t <Domain_Controller_IP> -T IP=192.168.0.1
linWinPwn -t <Domain_Controller_IP> -T File=./list_servers.txt

自定义字典 - 选择自定义用户和密码字典

linWinPwn -t <Domain_Controller_IP> -U /usr/share/seclists/Usernames/xato-net-10-million-usernames.txt
linWinPwn -t <Domain_Controller_IP> -P /usr/share/seclists/Passwords/xato-net-10-million-passwords.txt

隧道

当您只能在有限时间内访问 Active Directory 环境,并希望在枚举过程和证据收集过程中更加高效时,linWinPwn 特别有用。 此外,linWinPwn 可以替代在 Windows 上使用枚举工具,以减少创建的痕迹数量(例如 PowerShell 命令、Windows 事件、磁盘上创建的文件),并绕过某些防病毒或 EDR。这可以通过从 Windows 主机(例如 VDI 机器或工作站或笔记本电脑)到远程 Linux 机器(例如渗透测试笔记本电脑或 VPS)创建 SSH 隧道来执行远程动态端口转发,并使用 proxychains 运行 linWinPwn 来实现。

在 Windows 主机上,使用 PowerShell 运行:

ssh.exe kali@<linux_machine> -R 1080 -NCqf

在 Linux 机器上,首先更新 /etc/proxychains4.conf 以包含 socks5 127.0.0.1 1080,然后运行:

linWinPwn_proxychains -t <Domain_Controller_IP>  -d <AD_domain> -u <AD_user> [-p <AD_password> -H <hash[LM:NT]> -K <kerbticket[./krb5cc_ticket]> -A <AES_key> -C <cert[./cert.pfx]>] [-o <output_dir>] [--auto]

当前支持的身份验证

下载工具