H

PTH(Pass The Hash) 攻击分析

HackApt-37 Team已验证会员

黑客倉庫站長

贡献: 83%

PTH(Pass The Hash) 攻击​

1 概述​

在获得主机的本地管理员组成员帐户的密码NTLM之后,无需破解密码清除文本。使用PTH方法将管理员帐户和NTLM注入当前会话作为凭据。使用这些凭据渗透并获得周围主机的管理许可。
另一个主机必须具有相同的帐户,并且是管理员组的成员
在Windows NT 5.X系统中,管理员组帐户的网络登录可以获得系统管理权限
在Windows NT 6.X及以后,管理员组的网络登录(SID而非500)帐户无法获得系统管理权限,并且管理员的网络登录(SID 500)帐户可以获得系统管理权。
这种攻击适合:
域/工作组环境
您可以获得哈希,但是条件不允许爆破哈希
Intranet与当前机器中存在相同的密码

2 UAC​

用户帐户控制是Windows Vista(以及后来的操作系统版本)中的一组新的基础架构技术,可以帮助防止系统破坏恶意程序(有时称为“恶意软件”),同时还可以帮助组织部署更可管理的平台。
使用UAC,应用程序和任务始终在非管理员帐户的安全上下文中运行,除非管理员专门授予管理员级别访问系统的访问。 UAC防止自动安装未经授权的应用程序安装,从而防止对系统设置的无意更改。
用户帐户控制(UAC)是新版本Windows的核心安全功能,也是其最常被误解的安全功能之一。
HKEY_LOCAL_MACHINE \ SOFTWORD \ MICROSOFT \ WINDOWS \ CurrentVersion \ Policies \ System \ System \ FelterAdministratortoken,UAC由上述注册表键值确定,并且默认设置为0。如果设置为1,则具有SID 500的管理员无法通过网络登录获得高率。
HKEY_LOCAL_MACHINE \ SOFTWORD \ MICROSOFT \ WINDOWS \ CurrentVersion \ Policies \ System \ System \ LocalAccountTokenFilterPolicy。如果注册表中有此关键值并将其设置为1,则所有管理组成员都可以通过网络登录获得很高的权限。并控制上表条目中FilterAdministratortoken的价值。

3 攻击​

Mimikatz的PTH功能需要本地管理员的权限,这取决于其实施机制。首先需要有关高级流程LSASS.EXE的信息。
对于8.1/2012R2,在Win 7/2008R2/8/2012上安装补丁KB2871997,您可以使用AES键代替NT Hash
使用Mimikatz首先获得Hash:
1
2
特权:DEBUG
Sekurlsa:logonPasswords
获得哈希后

3.1 工作组​

1
sekurlsa3:pth /user:Administrator /domain:Workgroup /ntlm:ccef208c6485269c20db2cad21734fe7
微软还修补了PTH,但是在测试中,发现在修补后,正常通过后,哈希无法再成功,除了默认管理员(SID 500)帐户。使用此帐户,您仍然可以使用“通过哈希远程IPC连接”。

3.2 域内用户​

前提是:域用户是本地管理组的成员
1
sekurlsa3:pth /user:eviluser /domain:adsec.com /ntlm3:ccef208c6485269c20db2cad21734fe7
域内的用户不受补丁的影响。

4 KB2871997​

更改此功能的更改包括:使用本地帐户来防止网络登录和远程交互式登录到域- 加入ED机器.
20200429143726.png-water_print

安装KB2871997补丁后,其他方面的更改并不多。该补丁将在本地帐户中添加S-1-5-113 SID,并将S-1-5-114 SID添加到管理组中的本地帐户,以便通过域策略来方便地管理,例如完全禁止从域策略中获得此类帐户的网络登录。

5 针对 RDP 的 hash 传递攻击​

谈到哈希通行证攻击(PTH),我认为一般的是psexec wce mimikatz和其他直接执行命令。
本节介绍了一种使用mimikatz + nthash启动mstsc.exe的方法,以实现远程登录到Windows桌面,这对无法执行命令并且无法破解密码的环境有很大帮助。
原理(条件)是远程目标需要使用限制的管理模式,因为此模式支持Kerberos身份验证,您可以使用哈希登录。
1
sekurlsa3:pth /user:user name /domain:domain name /ntlm3:用户的ntlm hash /run:'mstsc.exe /listricticaladmin'
如果禁用了限制的管理模式,请使用以下命令启用它:
1
mimikatz.exe'sekurlsa:pth /user:user name /domain:domain name /ntlm: the用户的ntlm hash /run33:powershell.exe'''
修改弹出式PowerShell窗口中的注册表:
1
2
Enter -pssession -computer目标
new -itemproperty -path'hklm: \ system \ currentControlset \ control \ lsa'-name'disablererternationdmin' -value' -value'0'-propertytype dword -force -force -force

6 防御​

HKEY_LOCAL_MACHINE \ SOFTWORT \ MICROSOFT \ WINDOWS \ CurrentVersion \ Policies \ Policies \ System \ System \ FelterAdministratortoken,System之一具有管理员批准模式。 UAC由上述注册表密钥值判断,默认设置为0。如果设置为1,则具有SID 500的管理员将无法通过网络登录获得高权限。
20200429143747.png-water_print
 
后退
顶部