一种检测哈希传递攻击的可靠方法

VSole2017-12-17 21:33:48

哈希传递对于大多数企业或组织来说仍然是一个非常棘手的问题,这种攻击手法经常被渗透测试人员和攻击者们使用。当谈及检测哈希传递攻击时,我首先开始研究的是先看看是否已经有其他人公布了一些通过网络来进行检测的可靠方法。我拜读了一些优秀的文章,但我没有发现可靠的方法,或者是这些方法产生了大量的误报。 我不会在本文深入剖析哈希传递的历史和工作原理,但如果你有兴趣,你可以阅读SANS发布的这篇优秀的文章——哈希攻击缓解措施。 总之,攻击者需要从系统中抓取哈希值,通常是通过有针对性的攻击(如鱼叉式钓鱼或通过其他方法直接入侵主机)来完成的(例如:TrustedSec 发布的 Responder 工具)。一旦获得了对远程系统的访问,攻击者将升级到系统级权限,并从那里尝试通过多种方法(注册表,进程注入,磁盘卷影复制等)提取哈希。对于哈希传递,攻击者通常是针对系统上的LM/NTLM哈希(更常见的是NTLM)来操作的。我们不能使用类似NetNTLMv2(通过响应者或其他方法)或缓存的证书来传递哈希。我们需要纯粹的和未经过滤的NTLM哈希。基本上只有两个地方才可以获得这些凭据;第一个是通过本地帐户(例如管理员RID 500帐户或其他本地帐户),第二个是域控制器。 哈希传递的主要成因是由于大多数企业或组织在一个系统上拥有共享本地帐户,因此我们可以从该系统中提取哈希并移动到网络上的其他系统。当然,现在已经有了针对这种攻击方式的缓解措施,但他们不是100%的可靠。例如,微软修补程序和较新版本的Windows(8.1和更高版本)“修复”了哈希传递,但这仅适用于“其他”帐户,而不适用于RID为 500(管理员)的帐户。 你可以禁止通过GPO传递哈希: “拒绝从网络访问此计算机” 设置路径位于: 1.      Computer ConfigurationWindowsSettingsSecurity SettingsLocal PoliciesUser Rights Assignment 

 

大多数企业或组织都没有能力实施GPO策略,而传递哈希可被利用的可能性却非常大。

接下来的问题是,你怎么检测哈希传递攻击? 检测哈希传递攻击是比较有挑战性的事情,因为它在网络中表现出的行为是正常。比如:当你关闭了RDP会话并且会话还没有关闭时会发生什么?当你去重新认证时,你之前的机器记录仍然还在。这种行为表现出了与在网络中传递哈希非常类似的行为。 通过对成千上万个系统上的日志进行广泛的测试和分析,我们已经能够识别出在大多数企业或组织中的非常具体的攻击行为并且具有非常低的误报率。有许多规则可以添加到以下检测功能中,例如,在整个网络中查看一些成功的结果会显示“哈希传递”,或者在多次失败的尝试后将显示凭证失败。 下面我们要查看所有登录类型是3(网络登录)和ID为4624的事件日志。我们正在寻找密钥长度设置为0的NtLmSsP帐户(这可以由多个事件触发)。这些是哈希传递(WMI,SMB等)通常会使用到的较低级别的协议。另外,由于抓取到哈希的两个唯一的位置我们都能够访问到(通过本地哈希或通过域控制器),所以我们可以只对本地帐户进行过滤,来检测网络中通过本地帐户发起的传递哈希攻击行为。这意味着如果你的域名是GOAT,你可以用GOAT来过滤任何东西,然后提醒相应的人员。不过,筛选的结果应该去掉一些类似安全扫描器,管理员使用的PSEXEC等的记录。 请注意,你可以(也可能应该)将域的日志也进行分析,但你很可能需要根据你的实际情况调整到符合基础结构的正常行为。比如,OWA的密钥长度为0,并且具有与基于其代理验证的哈希传递完全相同的特征。这是OWA的正常行为,显然不是哈希传递攻击行为。如果你只是在本地帐户进行过滤,那么这类记录不会被标记。 事件ID:4624 登录类型:3 登录过程:NtLmSsP 安全ID:空SID – 可选但不是必需的,目前还没有看到为Null的 SID未在哈希传递中使用。 主机名 :(注意,这不是100%有效;例如,Metasploit和其他类似的工具将随机生成主机名)。你可以导入所有的计算机列表,如果没有标记的计算机,那么这有助于减少误报。但请注意,这不是减少误报的可靠方法。并不是所有的工具都会这样做,并且使用主机名进行检测的能力是有限的。 帐户名称和域名:仅警告只有本地帐户(即不包括域用户名的账户)的帐户名称。这样可以减少网络中的误报,但是如果对所有这些账户进行警告,那么将检测例如:扫描仪,psexec等等这类东西,但是需要时间来调整这些东西。在所有帐户上标记并不一定是件坏事(跳过“COMPUTER$”帐户),调整已知模式的环境并调查未知的模式。 密钥长度:0 – 这是会话密钥长度。这是事件日志中最重要的检测特征之一。像RDP这样的东西,密钥长度的值是 128位。任何较低级别的会话都将是0,这是较低级别协议在没有会话密钥时的一个明显的特征,所在此特征可以在网络中更好的发现哈希传递攻击。 另外一个好处是这个事件日志包含了认证的源IP地址,所以你可以快速的识别网络中哈希传递的攻击来源。 为了检测到这一点,我们首先需要确保我们有适当的组策略设置。我们需要将帐户登录设置为“成功”,因为我们需要用事件日志4624作为检测的方法。

让我们分解日志并且模拟哈希传递攻击过程。在这种情况下,我们首先想象一下,攻击者通过网络钓鱼获取了受害者电脑的凭据,并将其提升为管理级别的权限。从系统中获取哈希值是非常简单的事情。假设内置的管理员帐户是在多个系统间共享的,攻击者希望通过哈希传递,从SystemA(已经被入侵)移动到SystemB(还没有被入侵但具有共享的管理员帐户)。 在这个例子中,我们将使用Metasploit psexec,尽管还有很多其他的方法和工具可以实现这个目标:

在这个例子中,攻击者通过传递哈希建立了到第二个系统的连接。接下来,让我们看看事件日志4624,包含了什么内容:

安全ID:NULL SID可以作为一个特征,但不要依赖于此,因为并非所有的工具都会用到SID。虽然我还没有亲眼见过哈希传递不会用到NULL SID,但这也是有可能的。

接下来,工作站名称肯定看起来很可疑; 但这并不是一个好的检测特征,因为并不是所有的工具都会将机器名随机化。你可以将此用作分析哈希传递攻击的额外指标,但我们不建议使用工作站名称作为检测指标。源网络IP地址可以用来跟踪是哪个IP执行了哈希传递攻击,可以用于进一步的攻击溯源调查。

接下来,我们看到登录过程是NtLmSsp,密钥长度为0.这些对于检测哈希传递非常的重要。

接下来我们看到登录类型是3(通过网络远程登录)。

最后,我们看到这是一个基于帐户域和名称的本地帐户。 总而言之,有许多方法可以检测环境中的哈希传递攻击行为。这个在小型和大型网络中都是有效的,并且基于不同的哈希传递的攻击方式都是非常可靠的。它可能需要根据你的网络环境进行调整,但在减少误报和攻击过程中溯源却是非常简单的。 哈希传递仍然广泛的用于网络攻击并且是大多数企业和组织的一个共同的安全问题。有许多方法可以禁止和降低哈希传递的危害,但是并不是所有的企业和组织都可以有效地实现这一点。所以,最好的选择就是如何去检测这种攻击行为。

网络攻击哈希
本作品采用《CC 协议》,转载必须注明作者和本文链接
一个新的网络攻击活动正在利用与合法的红色团队工具关联的PowerShell脚本,从主要位于澳大利亚,波兰和比利时的受感染Windows系统中掠夺NTLMv2哈希
全球各地最近发生了一系列网络攻击和数据泄露事件,包括针对丰田汽车、芯片制造商英伟达以及国际电子巨头三星的供应商的攻击,使人们再次关注全球依赖的物理供应链和数字供应链中的网络安全漏洞。 俄乌冲突导致网络空间的安全局势更加紧张,全球供应链由于新冠疫情的持续蔓延仍然没有得到缓解。 根据彭博社报道,在供应商小岛工业公司遭到网络攻击之后,丰田汽车公司在日本的14家工厂28条生产线中断运营了一天的时间,这
移动应用程序的数量正在迅速增加,但安全风险也在增加。TeaBot Remote Access (TRAT) 木马程序在2021年初出现,旨在窃取受害者的凭据和短消息,该木马目前仍然很猖獗。行为生物识别技术是克服移动恶意软件发展挑战的关键。
资安公司Emsisoft发现犯案的黑客组织在推特宣称,Nvidia以电脑加密的手段反击他们的入侵行为,黑客表示未被成功骇入。
美国有线电视新闻网(CNN)3月13日报道称,经过近一个月调查发现,俄罗斯操纵网络舆论的“巨魔军队”继2016年以来继续利用网络假消息干扰本届美国大选。该机构长期从事网络虚假消息活动,秘密设置大量伪造的 Twitter、Facebook以及其他社交媒体账户,以蛊惑西方民众。2016年,俄罗斯的“巨魔工厂”位于圣彼得堡的一个办公大楼,而今年,则将该工厂移到了地处西非的加纳和尼日利亚,显然,这次的手法
一个被称为“irleaks”(可能指伊朗泄密)的黑客或黑客组织在新年前夜在Breach论坛和Telegram上公开披露了Snappfood网络攻击事件。Snapfood已承认此次网络攻击导致大规模数据泄露。
2月18日,美国第二大互联网服务供应商Xfinity 透露,10月份发生的一起网络攻击泄露了多达近3600万用户的敏感数据。
根据其矿池跟踪器,BTC.com是第七大加密货币矿池,占网络总哈希率的2.66%。部分被盗资产已被追回BTC.com在一份新闻稿中表示,其客户拥有的价值约70万美元的加密货币和公司拥有的230万美元的数字资产在攻击中被盗。在2022年12月3日检测到攻击后,BTC.com向中国深圳执法部门报告了这一事件。没有关于被盗数据的信息BTC.com表示,它已经采取措施阻止未来类似的攻击,其运营没有受到影响。“BTC.com目前业务照常运营,除数字资产服务外,其客户基金服务不受影响。”
哈希传递对于大多数企业或组织来说仍然是一个非常棘手的问题,这种攻击手法经常被渗透测试人员和攻击者们使用。当谈及检测哈希传递攻击时,我首先开始研究的是先看看是否已经有其他人公布了一些通过网络来进行检测的可靠方法。我拜读了一些优秀的文章,但我没有发现可靠的方法,或者是这些方法产生了大量的误报。 我不会在本文深入剖析哈希传递的历史和工作原理,但如果你有兴趣,你可以阅读SANS发布的这篇优秀的文章——哈希
VSole
网络安全专家