攻击者将恶意行为与日常IT活动相结合,可避免暴露自己的身份,并在较长时间内不被发现。例如,大家通常想到的什么是最快和最常见的访问计算机的方式?很明显答案是登录,但值得注意的是,窃取和使用合法凭证来获取访问权限是攻击者最广泛使用的手段之一。
攻击者从服务器窃取用户凭据的几种方式
除了典型的暴力破解攻击、网络钓鱼或肩膀冲浪密码攻击(它涉及从受害者的肩膀上偷看以获取密码或其他敏感数据)之外,还有其他窃取凭据的方法。例如,攻击者可以从其存储位置窃取或转储凭据。
让我们看一下攻击者使用的几种凭据窃取手段
LSASS(本地安全机构子系统服务)中的转储凭据:LSASS是MicrosoftWindows操作系统中的一个进程,负责在系统上实施安全策略。它验证登录到Windows计算机或服务器的用户,处理密码更改并创建访问令牌。
用户登录后,将生成各种凭据并将其存储在内存中的本地安全授权子系统服务LSASS进程中,以便用户不必在每次访问系统资源时重复登录。
攻击者按照以下三个简单步骤就可以从内存中转储这些纯文本凭据:
◇从LSASS进程创建内存转储
◇通过USB驱动器复制和提取内存转储或将其上传到云盘◇使用免费的凭证转储工具(例如Mimikatz)从内存中抓取凭证
还有一个legacyprotocolWDDigest,用于对Windows中的用户进行身份验证。
但是,启用以下注册表项后,LSASS会将登录用户密码的纯文本副本保留在其内存中。
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\WDigestmustbesetto'1']
◇攻击者可以通过修改上面的注册表项,以允许在LSASS中存储即用型明文密码。
◇您可以通过将其运行为受保护的进程来防止对LSASS的此类攻击。
◇要在保护模式下启用LSASS,需要将注册表项更新为1:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\RunAsPPL
一旦启用保护模式,所有在LSASS上的凭证提取尝试都将失败。
但是,像我们前面提到的,凭据其实还存储在Windows系统的其他不同区域,这意味着攻击者还有其他机会。
转储域缓存凭据
Windows还将用户的登录信息存储在本地,包括域凭据+域授权信息,以便在无法访问身份验证服务时也可以登录到系统,这称为域缓存凭据(DCC-domaincachedcredentials),MSCACHE或MSCASH哈希。这些哈希存储在Windows注册表中。默认情况下,将存储用户的最后10个密码哈希值。
由于这些哈希值可以从存储在注册表中的特定系统文件和安全文件中被提取,一旦攻击者窃取到这些特殊文件,他们将可以轻而易举地提取到纯文本密码。
ActiveDirectory域数据库
通过窃取NTDS.dit文件(ActiveDirectory的数据库),攻击者可以提取每个用户密码哈希的副本,并可以冒充域中的任何用户。但是由于NTDS.dit文件始终处于被使用状态,因此无法复制或移动它。因此,攻击者可以利用卷影复制服务(VSS-VolumeShadowCopyService)方法来窃取文件的中存储的明文密码。
从剪贴板中提取密码假设理想状态下,您已经保护了每台服务器避免凭证转储,攻击者仍可以利用剪贴板中的内容提取密码,因为有些用户很可能会从一个安全位置(如密码库)复制了用户名和密码并粘贴到在他们的登录屏幕上。
记录键盘操作以提取凭证攻击者通常在策略上将键盘记录程序定位在组策略或注册表的登录脚本中。他们甚至可以创建计划任务来记录按键,以提取用户通过按键输入的信息。除凭据外,此键盘记录程序还可以捕获个人身份信息(PII),例如信用卡信息以及密码、身份证号码等。
与其他攻击方式相比,凭据转储攻击更快,更具破坏性,因为一旦攻击者转储了您域中用户的凭据,它们就可以冒充域中任何用户,甚至您的特权用户去执行一些非法活动。
因此,在所有终端上监视多个位置以检测凭证转储尝试是至关重要的。例如,Windows系统还在路径AppData\Local\Google\Chrome\UserData\Default\LoginData中存储一些常用的浏览器(如GoogleChrome)的加密凭据,而攻击者可以使用一些免费的开源工具从该位置提取到一些重要凭据。
您可以通过访问我们的IT安全攻击介绍页面,观看模拟来了解有关Windows环境下各种凭据转储攻击技术的更多信息。
如果您正在寻找可以检测和减轻网络中凭据转储尝试的方案,欢迎了解卓豪的ManageEngineLog360全方位日志管理解决方案!