**郑重声明:**本文所涉安全技术仅限用于合法研究与学习目的,严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任,本人概不负责。任何形式的转载均须明确标注原文出处,且不得用于商业目的。
🔋 点赞 | 能量注入 ❤️ 关注 | 信号锁定 🔔 收藏 | 数据归档 ⭐️ 评论| 保持连接💬
🌌 立即前往 👉晖度丨安全视界🚀
▶ 信息收集
▶ 漏洞检测
▶ 初始立足点▶ 权限提升
▶ 横向移动 ➢ 密码攻击 ➢ 获取并破解NTLM哈希🔥🔥🔥
▶ 报告/分析
▶ 教训/修复
目录
[1.1 破解Windows哈希实践](#1.1 破解Windows哈希实践)
[1.1.1 获取NTLM哈希](#1.1.1 获取NTLM哈希)
[1.1.1.2 信息搜集:找到目标用户](#1.1.1.2 信息搜集:找到目标用户)
[1.1.1.3 权限提升后运行Mimikatz](#1.1.1.3 权限提升后运行Mimikatz)
[1.1.1.4 使用Mimikatz提取哈希](#1.1.1.4 使用Mimikatz提取哈希)
[1.1.2 破解NTLM哈希](#1.1.2 破解NTLM哈希)
[1.1.2.1 准备哈希文件](#1.1.2.1 准备哈希文件)
[1.1.2.2 确定哈希模式](#1.1.2.2 确定哈希模式)
[1.1.2.3 选择攻击字典和规则文件](#1.1.2.3 选择攻击字典和规则文件)
[1.1.2.4 执行Hashcat破解](#1.1.2.4 执行Hashcat破解)
[1.1.2.5 破解成功与验证](#1.1.2.5 破解成功与验证)
[1.1.2.6 攻击链条总结](#1.1.2.6 攻击链条总结)
[欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论](#欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论)
1.密码破解
1.1 破解Windows哈希实践
核心攻击场景: 本文介绍第一种:获取并破解NTLM哈希。
| 攻击类型 | 目标哈希 | 手法简介 |
|---|---|---|
| 获取并破解NTLM哈希 | 🗝️ NTLM哈希 | 从内存或SAM数据库中提取哈希,并用工具(如Hashcat)破解 |
| 传递NTLM哈希 | 🗝️ NTLM哈希 | 直接使用哈希进行身份验证,绕过密码需求 |
| 获取并破解Net-NTLMv2哈希 | 🔐 Net-NTLMv2哈希 | 通过中间人或欺骗获取挑战-响应包,离线破解 |
| 传递Net-NTLMv2哈希 | 🔐 Net-NTLMv2哈希 | 在支持的环境下复用Net-NTLMv2响应进行身份验证 |
1.1.1 获取NTLM哈希
1.1.1.1背景介绍
本次攻击模拟了一次完整的凭据窃取过程,攻击者从一个合法的RDP远程登录开始,然后从SAM中检索密码,最终提取出关键用户的密码哈希。其核心路径如下图所示:

1.1.1.2 信息搜集:找到目标用户
攻击者首先成功以用户offsec、密码lab远程桌面(RDP) 登录至 MARKETINGWK01 目标主机(IP为 192.168.50.210 )。这步操作如同用合法的钥匙打开了一扇门,进入了目标内部。
登录后,攻击者立即开始侦察 ,使用 Get-LocalUser 命令查看系统上存在的本地用户账户,很快发现了目标------本机另一个名为 nelly 的用户。
**目标:**拿到这个用户的登录凭据。

💡 关键思路:在Windows系统中,用户凭据不仅在登录时缓存,在使用用户帐户运行服务时也可能被存储。这成为了本次攻击的突破口。
1.1.1.3 权限提升后运行Mimikatz
1.以管理员身份运行Mimikatz
要使用像Mimikatz这样的高级工具,需要更高的权限。因此,攻击者以管理员身份运行Windows PowerShell,为后续操作铺平道路。

在获取管理员权限的PowerShell中,攻击者导航至Mimikatz所在路径(C:\tools\),并执行 mimikatz.exe,启动了这款强大的凭据提取神器。

在mimikatz命令环境下,每个命令由一个模块 和一个由两个冒号分隔的命令组成,例如:
bash
Mimikatz# privilege::debug
2.Mimikatz命令介绍
Mimikatz 的强大功能通过其模块化命令 实现。其命令结构遵循 ++模块名::命令名++ 的格式,每个步骤都环环相扣,构成了一个完整的凭证窃取链条。
为了更直观地理解这个攻击流程,以下是其核心命令的执行路径与数据流向示意图:

下表详细说明了图中每个核心步骤的具体作用、目标与产出:
| 步骤 | 命令 | 核心功能与比喻 | 作用目标与关键产出 |
|---|---|---|---|
| 1. 获取钥匙 | privilege::debug |
启动"特权调试" 。 好比拿到一把能打开所有进程房门的万能钥匙(SeDebugPrivilege),为窥探内存数据铺路。 | 为当前Mimikatz会话启用调试权限,从而可以访问和操作其他进程(尤其是LSASS)的内存。 |
| 2. 伪装身份 | token::elevate |
进行"令牌提升" 。 相当于盗用最高管理员的工作证,将自己伪装成系统最高权限者(SYSTEM)。 | 提升当前进程权限,通常将其令牌替换为SYSTEM用户的令牌,以绕过安全限制访问受保护资源。 |
| 3. 搜查内存 | sekurlsa::logonpasswords |
提取"登录凭证" 。 直接闯入系统的凭证保险柜(LSASS进程内存),抢夺当前所有登录会话的密码、哈希和票据。 | 从 LSASS进程内存 中提取当前登录会话 的明文密码、NTLM哈希 、Kerberos票证等。这是获取域用户凭证的主要方式。 |
| 4. 破解仓库 | lsadump::sam |
转储"SAM数据库" 。 攻破本地账户的密码哈希仓库(SAM文件),获取所有本地用户账户的密码哈希副本。 | 从本地的 SAM数据库 文件中提取所有本地用户账户 的 NTLM哈希 。这是获取本地用户凭证的主要方式。 |
💎 总结:
简单来说,使用Mimikatz提取凭证的经典流程是:先拿到调试钥匙(debug) → 再伪装成最高长官(elevate) → 最后根据目标选择是搜查实时保险柜(logonpasswords 获取在线用户凭证)还是破解本地仓库(sam 获取所有本地用户哈希) 。这套组合拳是内网渗透中获取横向移动凭据的关键技术手段。
💡sekurlsa::logonpasswords 和 lsadump::sam 都是提取密码哈希,异同点如下:

1.1.1.4 使用Mimikatz提取哈希
Mimikatz启动后,攻击者利用其功能来转储系统内存中存储的各类凭据 ,其目标直指 nelly 用户的 NTLM哈希。NTLM哈希是Windows系统用于身份验证的一种密码散列形式,获取它相当于拿到了密码的"指纹",可以用于后续的离线破解或"哈希传递"攻击。

通过一系列权限提升与提取操作,攻击已取得关键进展。以下是当前成果与后续目标的清晰总结:
✅ 已完成的攻击成果
-
权限成功提升 :已启用
SeDebugPrivilege调试权限,并将进程令牌提升至SYSTEM级别,具备系统最高访问能力。 -
成功提取哈希 :使用
lsadump::sam命令,从目标主机的 SAM数据库 中成功提取出两个本地用户的 NTLM哈希:-
用户
offsec的 NTLM 哈希(对应已知明文密码:lab) -
目标用户
nelly的 NTLM 哈希(未知密码,为本次破解目标)
-
🎯 下一步核心任务:破解NTLM哈希
-
目标 :集中力量破解获取到的
nelly用户的NTLM哈希值。 -
方法 :将使用离线破解工具(如 Hashcat 或 John the Ripper ),通过字典攻击、暴力破解或彩虹表等方式,尝试恢复其明文密码。
-
意义 :获得
nelly的明文密码后,攻击者将能直接以该用户身份登录,为进一步的横向移动或权限提升打下基础。
至此,攻击已从"获取凭证哈希 "阶段,顺利推进到"破解哈希获取明文"的关键阶段。
1.1.2 破解NTLM哈希
通过前面的步骤,已成功获取了目标用户nelly的NTLM哈希值 。现在进入攻击链的下一关键环节------破解哈希获取明文密码。
1.1.2.1 准备哈希文件
将提取到的NTLM哈希值 复制并保存到Kali攻击机上的nelly.hash文件中,为后续破解做好准备。

💡 技术要点:Mimikatz输出的哈希格式与Hashcat兼容,无需额外格式转换,可直接用于破解。
1.1.2.2 确定哈希模式
Hashcat支持多种哈希类型的破解,每种类型都有对应的模式代码。通过查询Hashcat帮助文档,确认NTLM哈希的模式值为1000。

显示1000对应NTLM哈希,这是Windows系统最常用的密码哈希算法之一。
1.1.2.3 选择攻击字典和规则文件
选择合适的攻击资源是成功破解的关键:
| 资源类型 | 选择文件 | 作用说明 |
|---|---|---|
| 密码字典 | rockyou.txt |
包含超过1400万个常用密码的经典字典,是密码破解的"标配"武器库 |
| 规则文件 | best64.rule |
包含64个最有效的密码变换规则,能自动对字典中的密码进行大小写变换、添加数字后缀等变形操作 |
攻击策略 :使用字典攻击 + 规则变换的组合,既能覆盖常见密码,又能通过规则生成密码的常见变体,大幅提高破解成功率。
1.1.2.4 执行Hashcat破解
准备好所有参数后,执行破解命令:
bash
hashcat -m 1000 nelly.hash /usr/share/wordlists/rockyou.txt \
-r /usr/share/hashcat/rules/best64.rule \
--force
命令参数解析:
-
-m 1000:指定破解目标为NTLM哈希 -
nelly.hash:包含目标哈希的文件 -
-r best64.rule:应用64个最佳规则进行密码变形 -
--force:强制运行(在某些系统上可能需要)
1.1.2.5 破解成功与验证
Hashcat运行后成功破解出nelly用户的明文密码:nicole1

验证流程:
-
立即使用破解得到的凭证
nelly:nicole1尝试RDP远程登录 -
成功登录目标系统
192.168.50.210 -
确认破解结果准确有效

1.1.2.6 攻击链条总结
| 阶段 | 操作 | 工具/技术 | 成果 |
|---|---|---|---|
| 1. 获取哈希 | 提取SAM数据库 | Mimikatz (lsadump::sam) |
获得nelly的NTLM哈希 |
| 2. 准备攻击 | 确定哈希类型 | Hashcat模式查询 | 确认NTLM模式为1000 |
| 3. 选择资源 | 字典+规则组合 | rockyou.txt + best64.rule | 构建高效破解策略 |
| 4. 执行破解 | 离线哈希破解 | Hashcat命令执行 | 获得明文密码nicole1 |
| 5. 验证成果 | RDP远程登录 | 标准RDP客户端 | 成功登录目标系统 |
💡 关键启示
-
简单密码的风险 :
nicole1这类"用户名+简单数字"的密码极易被破解 -
离线破解的效率:使用现代GPU,Hashcat能以每秒数十亿次的速度尝试密码
-
规则的重要性 :
best64.rule这样的智能规则能显著提高字典攻击的覆盖面
🔮 前瞻 :当哈希无法被破解时(如:密码强度极高),攻击者仍有其他利用方式,如哈希传递攻击(Pass-the-Hash) ,这将在后续文章中探讨。
至此,我们完成了一个完整的攻击循环:从初始访问 → 权限提升 → 凭证窃取 → 哈希破解 → 验证利用,展示了内网渗透中凭证攻击的完整链条。
欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论
每一份支持,都是我持续输出的光。
