获取以哈希值或明文形式存在的账户登录名和密码是攻击者的主要目标。凭据转储或凭据泄露有助于攻击者进行横向移动,进一步在组织的网络中扩散,访问受限数据,并以高权限执行命令和程序。
存在许多广为人知且相对简单的凭据窃取攻击,例如转储安全账户管理器(SAM)数据库、利用本地安全机构子系统服务(LSASS)窃取凭据,以及从 NTLMv2 中提取密码等,这些攻击方式已被广泛提及。然而,通过利用安全支持提供程序(SSP)动态链接库(DLL)来获取 Windows 登录凭据是另一种可行的技术,安全团队需要了解并防范这种技术。在本文中,我们将解释攻击者是如何利用安全支持提供程序(SSP)动态链接库(DLL)来访问存储在 Windows 系统中的加密密码和明文密码的。
攻击者是如何利用安全支持提供程序(SSP)的呢?
Windows 操作系统具有身份验证机制,以便在计算机系统启动时或用户账户登录期间自动执行库或程序。组织可以通过将这些程序放置在指定位置,或者在 Windows 注册表项中进行配置来设置此功能。攻击者能够通过修改这些系统配置,或者在系统启动期间注册恶意的动态链接库(DLL)程序(如安全支持提供程序(SSP))来实现持久化控制并提升权限。
什么是安全支持提供程序(SSP)呢?
安全支持提供程序是一种动态链接库(DLL),它执行与安全相关的操作(如身份验证),并使一个或多个安全包可供应用程序使用。
安全支持提供程序接口(SSPI)是 Windows 应用程序编程接口(API)的一个组件,它充当多个安全支持提供程序(SSP)的标准接口。该组件使 Windows 身份验证方法能够轻松扩展,并在无需额外编码的情况下添加新的安全支持提供程序(SSP)。
攻击者可以修改注册表项,以便在 Windows 将安全支持提供程序(SSP)动态链接库(DLL)加载到本地安全机构(LSA)进程中时,注入恶意的安全支持提供程序(SSP)。然后,攻击者就能够提取存储在 Windows 中的加密密码和明文密码,例如已登录用户的域密码或智能卡密码。
使用 Mimikatz 注入 Windows 安全支持提供程序(SSP)
Mimikatz 应用程序支持以下两种实现安全支持提供程序(SSP)的方法。
1.注册安全支持提供程序(SSP)动态链接库(DLL)
在这种手动方法中,Mimikatz 提供了一个名为 mimilib.dll 的 DLL 文件,攻击者会将其复制到与本地安全机构子系统服务(LSASS)相同的位置(C:\Windows\System32)。这个 DLL 文件负责创建 kiwissp.log 文件,该文件以明文形式存储凭据。
有两个注册表项存储了安全支持提供程序(SSP)的配置信息:HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Security Packages
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\OSConfig\Security Packages
以下 PowerShell 命令用于检查注册表项中是否存在安全支持提供程序(SSP)的配置项。如下图所示,当查询结果为空时,攻击者可以添加一些标准的 Windows 身份验证安全支持提供程序(Kerberos、msv1_0、Schannel、wdigest、tspkg 和 pku2u)。
攻击者在注册表编辑器中“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa”
来验证安全支持提供程序(SSP)的相关条目。
每当用户重新启动他们的计算机系统时,Windows 都会在 C:\Windows\System32 下创建一个 kiwissp.log 文件。攻击者可以访问该系统已认证的所有域用户所存储的明文密码。
2.安全支持提供程序的内存中更新
Mimikatz 支持另一种利用内存技术的方法,即使用 “privilege::debug”(权限::调试)和 “misc::memssp”(杂项::内存中的安全支持提供程序)命令将新的安全支持提供程序注入到本地安全机构子系统服务(LSASS)的内存中。
通过运行上述 Mimikatz 命令,攻击者将在 C:\Windows\System32\ 下创建一个 mimilsa.log 文件,该文件包含所有已登录用户的明文密码。
上述两种方法使得攻击者能够向 Windows 系统注入新的安全支持提供程序(SSP),并自动记录本地经过身份验证的凭据。
如何检测和缓解恶意安全支持提供程序(SSP)
SentinelOne Ranger AD 解决方案会持续在活动目录(AD)中监控在域、用户和计算机层面上的漏洞和错误配置情况。该解决方案会监控每一个域控制器,并且当有新的安全包被加载时发出警报。
结论
拥有管理员权限的攻击者能够从被攻陷系统的内存中窃取凭据。攻击者可以篡改注册表项,并添加新的或恶意的安全支持提供程序(SSP)。企业应该部署能够审计和检测域控制器上未经授权修改的解决方案,以避免攻击者利用安全支持提供程序(SSP)。如需了解更多信息,请访问 Singularity Ranger AD。
♚上海甫连信息技术有限公司DocuSign | Okta | Yubikey | SentinelOne | BlackBerry | Cylance | Varonis |HubSpot|