谷歌Project Zero研究员Maddie Stone坦陈识别野生漏洞利用的重要性,叙述相关漏洞识别技术。

发生野生零日漏洞利用时,最要紧的是找出位于攻击根源的那个漏洞。这一“根因分析”可以指引研究人员探寻攻击是怎么展开的。

在黑帽大会主题演讲中,谷歌Project Zero研究员Maddie Stone坦陈:“我们非常注重给利用零日漏洞的人设置障碍。只要野生零日漏洞被发现,这些攻击者即宣告任务失败。因此,我们需从每一次野生漏洞利用发现中尽可能地汲取经验。”

很多时候,博客文章或咨询警报揭露零日漏洞攻击时,往往附有攻击背后的恶意软件载荷或黑客组织的信息,但很少会涉及入侵者如何获取初始访问权以展开攻击的“细节”。

根因分析的目标,归根结底在于深挖漏洞,挖到研究人员可以触发漏洞的深度。这么做,研究人员才能了解所有细节,而不是总体摘要,才能看清攻击者的漏洞利用手法。这些信息有助于确定接下来应该采取哪些操作,例如结构改进、变体分析和应用新的检测方法,防止攻击者再次利用同一漏洞。

过去一年中,Project Zero分析了11个野生零日漏洞利用。研究人员使用五种不同技术来识别漏洞根源,反映出Stone在主题演讲中强调的一点:漏洞分析过程可能每次都不一样。

取决于可用信息和被利用目标的差异,逆向工程漏洞有多种不同方法。安全研究人员常将逆向工程漏洞的过程作为整体来谈论;但实际上,若想在不动用太多资源的状况下提高逆向成功率,其间涉及诸多创新,可采用的方法途径也有很多。

Stone将这些技术分为四类。如果手握漏洞利用样本,研究人员就可以逆向出漏洞利用代码。如果能访问目标的源代码,就可以采用源代码补丁比较方法;例如对Android、Chrome或Firefox等开源代码的研究,或者作为供应商或合作伙伴具有访问特权的情况。二进制补丁比较是比较同一代码生成的两个二进制文件,其中一个是已知带漏洞的,另一个包含漏洞补丁。如果有未修复漏洞的相关信息,就有可能实施基于漏洞利用细节的漏洞捕捉。

研究人员采用哪种技术很大程度上取决于他们的角色。对技术本身及其使用方法的理解,各个零日漏洞各不相同。

研究人员的角色影响所能访问的数据,也决定着漏洞根因分析的投入程度。

例如,发现漏洞利用的人可能不会去做根本原因分析,因为他们的主要目标是修复漏洞。如果一直等到根因分析报告出炉才着手修复,未修复漏洞暴露的时间就会延长。这种情况下,他们往往手握漏洞利用样本,但未必会有源代码或供应商专门知识。

供应商这边又是另一番景象了。如果研究人员为供应商服务,他们就可能会获得更多详细信息,无论是编写了被利用代码的专家,还是源代码本身。或者是漏洞利用样本。这种情况下,他们就应该完成根因分析。

此外,还有第三方用户和研究人员。他们通过博客帖子或安全咨询了解到有野生漏洞利用出现,但所获信息甚少,需要决定投入多少时间和精力。

Project Zero的角色涵盖以上种种。有时是漏洞发现者,有时是供应商请来找出漏洞根源的合作伙伴,更多时候作为第三方研究人员,尽量挖掘漏洞根源并加以学习和总结。

Stone在演讲中描述了七个研究案例,涵盖Windows、iOS、WhatsApp、Firefox和Android等多个平台。这些案例揭示了不同目标逆向工程技术的相同点和差异。有些很成功,有些则不然。

Stone说:“不是每份辛劳都能有所收获,但每次未能企及最终目标,或未能成功识别出漏洞利用根源,我们都可以从中学到很多,然后应用到下一次。只要我们反复思考,下一次就能提高我们的成功率。”

声明:本文来自数世咨询,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。