本文作者:Cherishao(信安之路作者团队成员 & 信安之路应急响应小组组长) 小组招新:信安之路应急响应小组招募志同道合的朋友
首先我们来思考一个问题,APT攻击事件和传统的网络攻击有什么明显区别呢?我相信,很多安全的小伙伴都会说,相比于传统的安全攻击事件来说,APT攻击事件更持久,更有针对性,那APT攻击事件的攻击流程和预防APT事件的响应流程又是怎么一回事呢?接下来,让我们一起来学习下卡巴斯基给出的官方指南]:
https://media.kasperskycontenthub.com/wp-content/uploads/sites/43/2018/03/07171449/Incident_Response_Guide_eng.pdf
前言
在过去几年中网络环境虽然没有发生大的变化,但是随着信息化的不断发展,网络犯罪分子的攻击机会及攻击面也在不断扩大增多。他们更专注于针对性的攻击、更有效地利用受害者的弱点,同时不断提高着自身警惕性。
对于这种针对性的攻击(以下简称 APT 攻击),很多公司的安全服务部门往往没有做好准备:通常情况下公司的员工低估了现代网络攻击的速度,保密性和效率,并且不承认传统的安全方法是多么无效。使用传统的预防工具,如反恶意软件产品、IDS/IPS 、安全检测工具、结合 SIEM 和抗 APT 等检测解决方案,这种昂贵的复合体在针对 APT 攻击时也有可能无法充分发挥其效果。如果不从本质上去了解所发生的安全事件,是什么样的安全事件,也就很难去预防。
因此,本文主要介绍了 APT 攻击事件的整个攻击链及事件响应需要重点关注的对象,目的也是为了让更多的人了解,APT 攻击事件的攻击环节,这样在我们遇到具体的 APT 事件时,才能在第一时间进行相关级别的事件响应。
APT 攻击(计划攻击)
APT 攻击,我们指的是由攻击者(Hacker)准备的高级攻击行动。这里不包括一般的攻击行为,例如网站挂马、加外链等;任何 APT 攻击的基本原则包括详细的准备和逐步战略,在这里,我们将 APT 攻击所设计的阶段的序列(称为杀伤链),下面我们将以从 ATM 窃取资金的 APT 攻击活动为例具体介绍杀伤链的相关步骤。
1. 侦察阶段
在该阶段,首先要做的就是信息收集,这里需要收集有关银行及其数据资产的公开信息。利用收集到的信息确定公司的组织结构、技术堆栈、信息安全措施等,在该阶段为了获取更详细的信息往往也会对该银行的员工进行社工(在论坛和社交网站上收集信息,特别是那些专业性质的信息)
2. 工具选择(武器化阶段)
攻击者在获取到详细的信息之后,会结合相关的信息选取相关的工具,他们可能会使用新的或已经存在的可利用的安全漏洞(0 day 或 N day)的恶意软件,在该阶段也会选择恶意软件的 payload。
3. 钓鱼阶段
在该阶段,主要是利用构造好的恶意软件,电子邮件附件,网络钓鱼链接或受感染的 USB 设备进行水坑攻击(感染目标组织员工访问的站点),在我们的案例中,攻击者使用鱼叉式网络钓鱼,代表金融监管机构 - 俄罗斯联邦中央银行(俄罗斯银行)向特定银行员工发送电子邮件。该电子邮件包含利用 Adobe Reader 中的漏洞的PDF文档。
4. 载荷投递阶段
钓鱼成功(例如,员工打开附件),则利用漏洞下载 payload,通常,它包含执行攻击后续阶段所需的工具。在我们的示例中,它是一个特洛伊木马下载程序,一旦安装,就会在下次打开计算机时从攻击者的服务器上下载僵尸程序。如果钓鱼失败,网络犯罪分子通常也不会放弃;他们采取一步(或几个步骤)以更改使用的攻击媒介或恶意软件。
5. 感染阶段
恶意软件会感染计算机,以便在重新启动或安装更新后无法检测或删除它。例如,上面的木马下载程序在Windows启动时注册自己,并在那里添加了一个机器人。当下次启动受感染的PC时,特洛伊木马会检查系统中的机器人,并在必要时重新加载它。
反过来,机器人不断出现在计算机的内存中。为了避免用户怀疑,它在熟悉的系统应用程序下被屏蔽,例如lsass.exe(本地安全认证服务器)。
安装的恶意软件会感染计算机并隐藏好自身,以便在重新启动或安装更新后无法检测或删除它。例如,上面的木马下载程序在 Windows 启动时注册自己,并在那里添加了一个后门程序。当受感染的 PC 下次启动时,木马会检查系统中的后门,并在必要时重新加载它。
为了避免用户怀疑,它通常隐藏在用户熟悉的进程下并且品比来自安全服务器的检查,例如 lsass.exe(本地安全认证服务器)。
6. 内网移动阶段
在此阶段,恶意软件会等待来自攻击者的命令。接收命令的最常用方法是连接属于攻击者的 C&C 服务器(大多时候只是一个样本存储跳板)。这就是我们样例中的恶意软件所做的事情:当它第一次处理 C&C 服务器时,它收到了执行进一步扩散(横向移动)的命令,并开始连接到公司网络内其它的计算机,如果受感染的计算机无法直接访问 Internet 并且无法直接连接到 C&C 服务器,则攻击者可以将其它软件发送到受感染的计算机,在组织的网络中部署代理服务器,或者感染物理介质以克服“网络安全隔离措施””。
7. 目标行动阶段
现在,网络犯罪分子可以处理,受感染计算机上的数据:复制,修改或删除它。如果未找到必要的信息,攻击者可能会尝试感染其他计算机,以增加可用信息量或获取允许其达到其主要目标的其他信息。
我们示例中的恶意软件感染了其他 PC,以搜索可以作为管理员登录的计算机。一旦找到这样的机器,机器人就转向 C&C 服务器下载 Mimikatz 程序和 Ammyy Admin 远程管理工具。
Mimikatz 执行的例子。所有登录名和密码都以清晰的视图输入,包括 Active Directory 用户密码。
如果成功,恶意软件可以连接到 ATM 网关并对 ATM 发起攻击:例如,它可以在 ATM 中实现一个程序,当检测到特殊的塑料卡时,该程序将分配现金,攻击的最后阶段是删除并隐藏受感染系统中的任何恶意软件痕迹,尽管这些活动通常不包含在杀伤链中。
事件调查的有效性以及对受影响组织的物质和声誉损害的程度直接取决于检测到攻击的阶段。
如果在“目标行动”阶段(后期检测)检测到攻击,则表示信息安全服务无法抵御攻击。在这种情况下,受影响的公司应重新考虑其预防方法。
事件响应保护策略(我的网络是我的城堡)
我们从网络犯罪分子的角度分析了目标攻击的阶段; 现在让我们从受影响公司的信息安全人员的角度(防守方)来看待它。双方工作背后的基本原则基本相同:都需要精心准备和循序渐进的战略。不同的是,所使用的工具及截然不同的目标:
1、减轻攻击造成的伤害;
2、尽快恢复信息系统的初始状态;
3、制定指示以防止将来发生类似事件。
这些目标主要分两个阶段实现:一、事故调查,二、系统恢复。调查必须确定:
1、初始攻击向量;
2、攻击者使用的恶意软件,漏洞利用程序和其他工具;
3、攻击目标(受影响的网络,系统和数据);
4、对组织的损害程度(包括声誉损害);
5、攻击阶段(是否完成并实现目标);
6、时间帧(攻击开始和结束的时间,在系统中检测到的时间和信息安全服务的响应时间)。
调查完成后,需要根据调查期间获得的信息制定可实施的系统恢复计划。总体而言,事件响应保护策略如下所示:
事件响应阶段
与目标攻击的各个阶段一样,接下来我们将更详细地分析反APT攻击所涉及的各个阶段。
1. 准备阶段
准备工作包括制定流程和策略以及选择工具。首先,我们需要创建一个多级安全系统,可以抵御使用多个攻击媒介的入侵者。保护水平可分为两组。
第一组包括安装旨在防止攻击的工具(预防):
1) 工作站安全解决方案;
https://www.kaspersky.com/small-to-medium-business-security/endpoint-select
2) 入侵检测和入侵防御系统(IDS/IPS);
3) 防火墙保护 Internet 网关;
4) 代理服务器来控制 Internet 访问。
第二组包含旨在检测威胁的解决方案(检测):
1) 具有集成威胁报告组件的 SIEM 系统,用于监控信息系统中发生的事件;
2) 反 APT 系统,用于比较各种安全机制提供的检测到的威胁数据;
https://www.kaspersky.com/enterprise-security/cybersecurity-services
3) 蜜罐 - 一种特殊的虚假对象,用于网络攻击,由信息安全服务机构隔离并密切监控;
4) EDR 系统(用于检测和响应端点上的威胁的工具),可提高对端点上发生的事件的认识,并实现自动遏制和消除威胁。
我们选择的组织就是为意外攻击做好准备。ATM 与银行的主网络分离,对子网的访问仅限于授权用户。
被攻击组织的网络
SIEM 系统用于监视和分析网络上发生的事件。它收集有关所有员工用于访问 Internet 的代理服务器的网络连接的信息;卡巴斯基实验室安全专家提供的集成威胁数据源;通过Postfix邮件服务器发送的电子邮件通知,包括有关标题,DKIM 签名等的信息;SIEM 还在企业 IT 基础架构的任何工作站上收到有关安全解决方案激活的信息。
另一个是渗透测试,以预测网络攻击的可能矢量。公司的 IT 专家和第三方组织都可以模拟企业网络的渗透。后一种选择更昂贵,但更可取:专门从事笔测试的组织拥有丰富的经验,并且能够更好地了解当前的威胁向量。
最后,很重要的一点是-安全培训即教育企业的员工。这包括针对所有员工的内部网络安全培训:应该让他们了解公司的安全策略,并知道在发生网络攻击时该怎么做。培训还包括针对负责公司信息安全的专家的专有培训,以及有关公司内外安全事件的信息积累(本地威胁情报事件库的构建)。这些信息可能来自不同的来源,例如内部公司报告或专门分析网络威胁的第三方组织,例如卡巴斯基威胁情报平台:
https://media.kasperskycontenthub.com/wp-content/uploads/sites/43/2017/08/20080249/Kaspersky_Threat_Intelligence_Services.pdf
2. 识别阶段
在这个阶段,有必要确定它是否实际上是一个事件。只有这样才能引起警报并且同事发出警告。为了识别事件,使用了所谓的触发器 - 表示网络攻击的事件。其中包括工作站尝试连接到已知的恶意 C&C 服务器,安全软件性能出现错误或失败,用户权限意外更改,网络上的未知程序等等。
有关这些事件的信息可能来自各种来源。在这里,我们将考虑两种关键类型的触发器:
EPP 管理系统生成的触发器。当其中一个工作站上的安全解决方案检测到威胁时,它会生成一个事件并将其发送到管理系统。但是,并非所有事件都是触发器:例如,指示检测到恶意程序的事件之后可能会出现有关其中和的事件。在这种情况下,除非在同一台机器上或同一用户经常出现这种情况,否则不需要进行调查。
SIEM 系统生成的事件触发器。SIEM 系统可以从大量安全控制中累积数据,包括代理服务器和防火墙。触发器仅被视为基于比较传入数据和威胁报告而创建的事件。
为了识别事件,将信息安全服务可用的信息与已知的妥协指标(IOC)列表进行比较。公共报告,威胁数据馈送,静态和动态样本分析工具等可用于此阶,在不启动测试样本的情况下执行静态分析,并包括收集各种指示符,例如包含URL或电子邮件地址等的字符串。动态分析涉及在受保护环境(沙箱:
https://securelist.com/threats/sandbox-glossary/?utm_source=securelist&utm_medium=blog
)或隔离计算机上按顺序执行调查中的程序识别样本的行为并收集威胁指标。
IOC 检测周期
从上图可以看出,收集 IOC 是一个循环过程。基于来自 SIEM 系统的初始信息,生成识别方案,这导致识别新的妥协指标。
以下是威胁数据源如何用于识别鱼叉式网络钓鱼攻击的示例 - 在我们的示例中,是附带利用 Adobe Reader 漏洞的附加 PDF 文档的电子邮件。
- SIEM 将使用 IP 信誉数据源检测发送电子邮件的服务器的 IP 地址。
- SIEM 将使用恶意 URL 数据 Feed 检测加载机器人的请求。
- SIEM 将使用 Botnet C&C URL 数据馈送检测对 C&C 服务器的请求。
- 将通过工作站的安全解决方案检测并删除 Mimikatz; 有关检测的信息将发送给 SIEM。
因此,在早期阶段,可以以四种不同的方式检测攻击。这也意味着该公司将受到最小的损害。
3.遏制阶段
假设由于工作量繁重,信息安全服务无法响应第一个警报,并且当响应时,攻击已进入第六阶段(内网移动阶段),即恶意软件已成功渗透到公司的计算机上网络并试图联系 C&C 服务器,SIEM 系统已收到该事件的通知。
在这种情况下,安全专家应识别所有受感染的计算机并更改安全规则以防止感染通过网络传播。此外,他们应该重新配置信息系统,以确保公司在没有受感染机器的情况下持续运行。接下来介绍 3 点需要做的。
1)隔离受感染的计算机
应识别所有受感染的计算机,例如,通过在 SIEM 中查找对已知 C&C 地址的所有呼叫 - 然后将其置于隔离网络中。在这种情况下,应更改路由策略以防止受感染计算机与公司网络上的其他计算机之间的通信,以及受感染计算机与 Internet 的连接。
还建议使用特殊服务检查 C&C 地址,例如威胁查找。因此,这不仅提供了与 C&C 服务器交互的机器人的哈希值,还提供了机器人联系的其他地址。之后,值得在扩展的指标列表中重复 SIEM 中的搜索,因为相同的机器人可能已经与不同计算机上的多个 C&C 服务器进行了交互。必须隔离并检查所有已识别的受感染工作站。
在这种情况下,不应关闭受感染的计算机,因为这会使调查复杂化。具体来说,某些类型的恶意程序只使用计算机的 RAM 而不在硬盘上创建文件。一旦系统收到关闭信号,其他恶意软件可以删除 IOC。
此外,建议不要(主要是物理上)断开受影响 PC 的本地网络连接。某些类型的恶意软件监视连接状态,如果连接在一段时间内不可用,恶意软件可以开始删除其在计算机上的痕迹,从而破坏任何 IOC。同时,限制受感染计算机对内部和外部网络的访问是有意义的(例如,通过阻止使用 iptables 传输数据包)。如果通过 C&C 地址搜索未提供预期结果或如何识别恶意软件应采取的措施的更多信息,可以阅读本指南的完整版本。
2)创建内存转储和硬盘转储
通过分析受感染计算机的内存转储和硬盘转储,您可以获得与攻击相关的恶意软件和 IOC 样本。通过对这些样本的研究,您可以了解如何处理感染并确定威胁的载体,以防止使用类似情况重复感染。可以使用特殊软件(例如 Forensic Toolkit)收集转储。
3)保持系统性能
在受感染的计算机被隔离后,应采取措施来维护信息系统的运行。例如,如果公司网络上的多台服务器遭到入侵,则应对路由策略进行更改,以将工作负载从受感染服务器重定向到其他服务器。
4. 根除阶段
此阶段的目标是将受损信息系统恢复到攻击前的状态。这包括删除可能已留在受感染计算机上的恶意软件和所有工件,以及还原信息系统的初始配置。
有两种可能的策略:完全重新安装受感染设备的操作系统或只删除任何恶意软件。第一个选项适用于为工作站使用标准软件集的组织。在这种情况下,您可以使用系统映像恢复后者的操作。移动电话和其他设备可以重置为出厂设置,在第二种情况下,可以使用专用工具和实用程序检测恶意软件创建的工件。
1. 恢复阶段
在此阶段,先前受到攻击的计算机将重新连接到网络。信息安全专家继续监控这些机器的状态,以确保完全消除威胁。
2. 总结报告
调查完成后,信息安全服务部门必须提交一份报告,其中包含以下问题的答案:
事件何时发现并确定了谁?
事件的规模是多少?哪些物品受事件影响?
如何执行遏制,根除和恢复阶段?
在事件响应的哪个阶段,信息安全专家的行动是否需要纠正?
根据该报告和调查期间获得的信息,有必要制定措施,以防止今后发生类似事件。这些可以包括安全策略的更改和公司资源的配置,员工信息安全培训等。事件响应过程中获得的妥协指标可用于检测将来此类攻击。
安全事件优先级设置
安全专家可能必须同时回应几个事件。在这种情况下,正确设置优先级并尽快关注主要威胁非常重要 - 这将最大限度地减少攻击的潜在损害。
我们建议根据以下因素确定事件的严重程度:
受感染PC所在的网段;
存储在受感染计算机上的数据的价值;
影响同一台PC的其他事件的类型和数量;
给定事件的妥协指标的可靠性。
应该注意的是,应该首先保存的服务器或网段的选择,以及可以牺牲的工作站的选择取决于组织的具体情况。
如果源自其中一个来源的事件包括在 APT 威胁报告中
https://securelist.com/all/?tag=538
发布的 IOC,或者有证据表明与先前在 APT 攻击中使用的 C&C 服务器进行交互,我们建议首先处理这些事件。完整版“事件响应指南”中描述的工具和实用程序可以提供帮助。
结语
本文只是介绍了 APT 攻击的主要攻击链及常规的 APT 事件响应策略,简单的一文也不可能涵盖现代网络犯罪分子可以使用的整个武器库,描述所有现有的攻击媒介,也无法为信息安全人员制定分步指南,来帮助应对每一个事件,因为现代 APT 攻击变得非常复杂和多样化,即使是一系列文章也可能还不够,但是,我们希望我们关于识别事件和响应事件的建议将有助于信息安全人员为构建可靠的多层次业务保护奠定坚实的基础。----卡巴斯基(官方建议)
在反病毒及反 APT 攻击方面,卡巴斯基还是很厉害的了,因为他们有自己的样本库,有丰富的样本数据来源及资深的安全大佬,潜心向大佬学习,本文因为作者英语水平有限,若有翻译不适之处,请以原文为主,关于详细的指南可通过文章首的链接获得,最后热烈欢迎对此方面感兴趣的朋友与我交流。