APT攻击背后的秘密:攻击时的漏洞利用

  在之前的文章中(APT攻击背后的秘密:攻击性质及特征分析;攻击前的"敌情"侦察;攻击时的武器与手段),我们已经了解了APT攻击的特征、"敌情"侦察及攻击的武器和手段。本文我们将探讨APT攻击中的漏洞利用,在这个阶段情况已经急转直下,因为攻击者已经成功交付其恶意有效载荷。

  毫无疑问,如果让攻击者已经顺利进展到了这个阶段,问题已经很严重了,但是你仍然有机会。现在,攻击者已经传送了附有恶意附件的电子邮件,如果成功的话,攻击者将能够利用你企业使用的软件中的漏洞。而如果漏洞利用成功的话,你的系统将受到感染。然而,攻击者在攻破你的防御后,可能会制造一些动静。如果是这样,关于他们攻击方法和攻击类型的证据可能位于网络或系统日志中。另外,你的各种安全事件监控器中可能包含攻击的证据。

  如果攻击者的漏洞利用没有被发现,你的胜算就会变的更小。据2013年Verizon数据泄漏调查显示,66%的数据泄漏保持几个月甚至更长时间都未被发现。即使泄漏事故被发现,也主要是因为无关的第三方曝光。

  在漏洞利用后,攻击者需要建立一个立足点,也就是安装,也就大多数端点保护的关注点。攻击者通常是通过在感染主机上安装额外的工具来获得立足点。

  攻击者可能从初始切入点进入网络中的其他系统或服务器。这种支点攻击(Pivoting)能够帮助攻击者完成其总体目标,并确保他们不被发现。

  通常情况下,支点攻击的成功是因为对网络政策的漏洞利用,让攻击者能够直接访问一些系统,这样,他们就不需要利用另一个漏洞或恶意软件。

  事件响应计划主要用来攻击者活动的安装阶段。因为防御措施已经失败,所以响应是唯一的选择了。然而,只有在检测到攻击,才可能进行事件响应。假设漏洞利用阶段没有被检测到,而攻击者成功安装恶意软件后,该怎么办?如果你幸运的话,你可以检测到一些攻击的证据,并利用它们来推动事件响应过程。

  企业经常忽视感染指标(Indicators of Compromise,IOC),因为它们通常隐藏在海量日志记录数据中。没有人有时间读取数百或数千条数据,这也是为什么经常需要几个星期或几个月检测到数据泄漏事故的原因。

  假设攻击者瞄准一名员工,并攻击了企业系统,为了检测到这种攻击,关键是寻找异常情况,寻找似乎格格不入的东西。

  另一个例子是寻找随机的意想不到的DNS请求。攻击者往往会回调以利用其他工具,或者他们的有效载荷会发出外部请求。将DNS请求与已知恶意服务器、名声不好的IP地址列表进行匹配,这样做通常能够检测到攻击,因为漏洞利用阶段是攻击者可能制造动静的时期。

  那么,对于水坑攻击呢?什么算是很好的IOC呢?这也将需要读取大量日志数据,但如果Web服务器日志充斥着500错误、权限错误或路径错误,问题就严重了。因为这可能意味着SQL注入和跨站脚本攻击等。或者,500错误也可能是良性的。但当它们与数据库错误同时出现,或者来自单个应用程序或资源,则可能意味着攻击。

  同样地,观察404错误,看看这些错误是如何被触发。在很多情况下,web漏洞扫描仪或探测应用程序的机器人触发了这些事件。最后,如果你发现shell脚本(例如r57或c99),通常是因为你已经注意到了日志中的随机GET或POST请求,这是很明显的IOC。事实上,web服务器上的shell是最糟糕的发现,表明已经出现数据泄漏。因为shell意味着攻击者已经控制着一切。

  在缓解措施方面,很多签名提到的保护层仍然适用。事实上,其中一些保护层很适合于漏洞利用阶段。例如,数据执行保护(DEP)可以很好地防止恶意软件在被感染主机上运行。

  虽然攻击者可能能够传送恶意软件,当受害者尝试执行它时,DEP将会阻止它。然而,还有大量恶意软件变种和软件漏洞利用会瞄准DEP,所以你不能仅仅依靠这种保护。

  白名单是另一个很好的缓解措施,但这种办法有可能拦截合法(白名单)应用程序,也就是说,白名单也不能作为防止漏洞利用的唯一来源。

  反病毒控制(例如针对IP地址和软件的声誉检查)是很好的防御措施,因为大多数AV软件提供行为检测。但AV并不是完美的解决方案,如果漏洞利用阶段使用了未知的东西,AV可能会完全没用。基于主机的IDS同样是如此,但如果没有部署这些技术,情况会更糟。

  最后,对操作系统和第三方程序保持软件更新和补丁修复,能够很好地防止漏洞利用,并且能够控制权限。最小特权原则是IT内经常忽视的工具,但这是个很好的工具。

  这些缓解措施的重点是,它们都不能完全阻止漏洞利用和安装阶段,但如果结合使用,防止严重攻击的几率将会增加。

 

上一篇:安卓防火墙 PS DroidWall

下一篇:企业内网安全的几个坑