当前位置:首页 期刊杂志

APT 多维度分析和防御探究

时间:2024-08-31

刘 昀,张 辉,任建伟,苏 丹,闫 磊,崔领先,杨大路,印 权

(1.国网冀北信通公司,北京,100055;2.北京国电通网络技术有限公司,北京,100053)

0 引言

互联网技术的革新应用的增长促成了一个不断进化的网络环境,企业和政府面临的威胁会持续存在。从早些年为了炫技而攻击网站,到拒绝服务攻击DDoS 来中断网站服务,再到现在为牟利和重要信息而攻击。攻击者动机上的变化也致使攻击手段不断演变,威胁更加纵深,更加隐蔽。

1 APT 攻击概念

APT(Advanced Persistent Threat)--------高级持续性威胁。是指组织(尤其是政府)或小团体利用先进的攻击手段对特定目标进行长期且持续的网络攻击形式。通常APT 攻击都是有目的有蓄谋的,多数会以窃取数据为主要目的。

从最基本面来看,有三项特点让我们认为这攻击是APT:

[1] 经济利益驱动或行业竞争

[2] 一个长期持续的攻击

[3] 针对某特定的公司、组织或平台

因此,APT 的概念在许多方面都没有什么新意。不断更新的是执行这种威胁的具体操作方法,会根据新的漏洞或技术冲击网络和应用程序的领域。

2 APT 攻击分析

2.1 APT 典型攻击

APT 攻击属于一种革命性的高精度攻击,其整个攻击过程针对不同的攻击目的和攻击对象也会不同,在整个攻击过程中多种攻击方式与技术手段并行使用,造就了APT 攻击的千变万化。但是,APT 攻击也并非无规律可循,综合已捕获的各类APT 攻击案例来看,APT 攻击的流程大概额可以总结为“社工结合,外围切入,由点到面,关联利用”,在整个APT 攻击中由于系统层和网络层的直接利用难得较高,所以攻击者往往会将Web 服务器作为攻击的主要突破口。Web 服务器通常是公司邮件网络的关键节点,这也使得电子邮件系统沦为APT 攻击使用最频繁的途径之一,而且EMAIL 中发现有价值信息的几率相当之大,可能带来非常以外的“惊喜”。攻击者攻击Web 服务器的主要目的是为了寻找合适的入侵中转站,所以针对邮件系统的攻击行为通常会执行如下工作:

●发送钓鱼邮件:窃取用户ID 与密码;

●执行恶意脚本:扫描终端用户操作系统及应用程序,探测可利用的攻击资源;

●植入恶意软件:针对用户应用环境中的程序漏洞,植入恶意代码,完成僵尸网络的构建。

在通过邮件系统实现的APT 攻击的过程中,各类办公系统的文档0day 往往是攻击者利用最频繁的宿主,例如WORD、PPT 、PDF 等,文档普及率越高,越有可能降低用户防范意识。

2.2 APT 攻击途径详解

工欲善其事,必先利其器。在APT 在发动攻击之前同样要做很多铺垫和探路的准备,对攻击目标的业务和系统进行大量信息收集。首先通过社会工程学,对目标企业及权限较高的员工进行观察和研究,从而了解公司的办公或者业务流程,发现企业和员工在安全方面的弱点,然后再采用包括社会工程学在内的各种攻击手段进行攻击。APT 攻击具备严密的数据收集和攻击流程逻辑,整个攻击过程可能长达数月甚至数年,攻击者通过对目标系统、业务流程、员工关系及特征的综合分析进而确定入侵方式和入侵途径。在确定攻击对象后,信息收集最常见有如下几种入侵起点:

●目标单位的网络架构、软硬件产品名称及具体版本

●员工身份信息及关联的资料信息

●公司组织架构及业务流程

●合作相关单位、供货、渠道及代理在内的关联单位业务信息

在明确目标单位基础信息后,攻击者将进一步确定攻击途径和方式,从现有案例来看,攻击者主要的攻击途径为:●选择跳板利用Web 层漏洞进行渗透

由于防火墙等安全设备的存在,使目标单位网络“相对独立于”外网,以及Web 层漏洞挖掘成本相对低于系统及网路层漏洞的挖掘,跨站脚本XSS、SQL 注入、Web 钓鱼、CSRF 漏洞等漏洞的成本都较低,挖掘与运用起来会更容易建立有效的攻击途径。

●通过邮件、网络服务发起钓鱼攻击

并非目标单位的所有员工都具备安全意识和防范措施,所以通过邮件、第三方网络服务等途径对目标单位员工实施钓鱼攻击,获取目标单位员工重要信息或设备权限,为资料获取和进一步渗透创造条件。

●通过存储介质或WIFI 设备发起摆渡型攻击

通过系统特性利用U 盘、光盘作为恶意软件执行载体,在目标单位机器中种植木马或资料收集(仅限于U 盘),从而达到入侵目标机器和资料收集与转发的目的。

然后利用恶意程序进一步收集目标应用程序和受信系统的漏洞,基于这些漏洞建立攻击者所需的C&C[ control and command,命令与控制]神经网络。由于这些行为目的性很强,常规的防御软件不容易发现和识别,也很难引起告警或者提示,这就使得攻击更贴合被攻击者的系统应用或程序。以2012 年著名的APT 攻击“火焰(Flame)”为例,该攻击通过利用MD5 的碰撞漏洞,伪造合法的数字证书,假装成系统正常的软件,骗过防护系统轻松攻击得手。

由此看来,APT 攻击依赖于三个关键环节:

1)作为制定社工和攻击策略的前提,攻击者必须充分了解被攻击者的信息;

2)如果想突破当前防护体系,必须利用好针对性的漏洞和攻击程序;

3)与传统防护设备对抗,包括网络审计产品、各类杀毒软件,HIPS 等,必须有针对性很强的木马和加密技术。

攻击跳板的选择上,APT 往往更趋向于利用组织内部的人员身份。为了获得更好的掩护和更好的攻击效果,通用的攻击代码往往会被发现或拦截,攻击者不得不单独针对被攻击对象编写程序进行攻击。

除此以外,网页上的多种应用程序可能会关联多个业务平台,通过完整的业务流程完成相关服务的穿针引线工作。这也使得在攻击深度上,进入后台管理系统成为可能,类似资产管理和财务信息等。而这些信息引起敏感性和重要性,很容易成为漏洞扫描、Sql 注入和信息窃取的对象。在APT 中攻击流程和路径不是一成不变的,我们常见的一些技术会根据使用者的习惯和对策而改变。假如管理员发现问题封闭了一条进入系统的路径,APT会通过其它方式寻找新的攻击路径。

3 如何防御APT 攻击

3.1 已有的技术手段

APT 攻击承载的不仅仅是某种专项技术的纵深延续,而是发起者经验与智慧的精细配合。没有一个固定的模式可以检测APT攻击,但如果对恶意代码的每一个细节能够给予足够的关注,关注0day 信息、功能变化、指令及控制、社工技巧、脆弱的权限环节、重要流程的干系人、攻击行为周期等信息,理论上APT 是可以发现的。通常情况下,安全人员遭遇单一攻击事件时,都会快速定位攻击源头,并作出应对策略和防御措施,只是单一的动作无法定位,也很难提取到攻击特征和属性。所以,检测APT 攻击必须要搭建一个多维度的攻击模型,不但要包括技术层面的检测手法,也要包括对整个产业链条的实时跟进和洞察分析。有鉴于此,在针对APT 攻击行为检测上,可着重从三个维度进行:

3.1.1 静态检测方式

1)从攻击样本中提取功能特点和代码特征;

2)对攻击样本逆向分析;

3.1.2 动态检测方式

●模拟实际生产环境,在沙箱内执行APT 代码段,捕获并记录APT 所有的攻击动作;

●关注网络中应用程序的资源占用情况,特别是带宽利用率;

●APT 攻击溯源;

3.1.3 产业链跟踪

针对APT 攻击防御的需要建立关联分析模型与审计模型,主要涉及如下几方面:

●提取并核查Shellcode、PE 文件头以及执行文件体;

●拆解文件中的异常结构和对象;

●模拟安装系统应用中各种执行文件体;

●关键代码的各类API 钩子或注入检测;

●已知特征的代码分片检索;

●实时关注扫描系统内存与CPU 中资源的异常调用;

●检测Rootkit、KeyLogger、Anti-AV 等恶意程序;

●检测URL、IP 地址、邮件、域中来源不详的字符串。

3.2 防御体系的构架

3.2.1 无单独产品可防APT

由于APT 没有固定攻击模式,如果说某种方法或技术可通过部署一个ASIC 软件或硬件的签名来检测APT,那肯定是个容易被识别的简单持续攻击,而不是高级持续威胁攻击。

3.2.2 重点人群,重点跟踪

针对具有重要权限的人员,需要定期的、自动化的邮件及网络传输内容的额外检查。检查的文件类型和范围都需要比常规病毒检查更深入,比如恶意PDF 等。要考虑到常规防病毒软件很多威胁都无法检测查杀,而这些“威胁”通常会对漏洞利用的关键字内容上作修改,看上去不符合特征码,或者运行多个杀毒引擎进行扫描免杀。

3.2.3 有效的探测与响应体系建设

首先,要关注所有与安全相关的重要日志。作为对各种操作行为的溯源依据,产生、收集和查询日志的数量将决定判断问题的成功几率高低。包括操作系统日志、防火墙日志、认证日志、登录日志、权限变更日志等。

其次,对网络中重要的关键节点的包需要更深度的检测和分析。

第三,关注流量信息。通过netflow 或者类似软件服务关注网络的关键节点流量的异常情况,要能快速的查询到网络中的连接或者流量状态,以便对相关的进程做到有效关联。

第四,专业人员。具备了以上三个重要的防御要素(日志、DPI、网络)外,我们需要专业人员根据经验对历史数据、当前记录做好流程上的梳理和判断,以便对下一步的安全趋势做预估,提高预警能力。

第五,信息共享。除了在个体的资源和人员配备上要尽可能详尽外,还需要将个人的情报及信息同步和可靠的组织共享,以便对大规模的行为作出更有说服力的分析和联动响应。

最后,对复杂的攻击必须要借助专家的研判分析。可以自己储备技术专家或者寻求外部的技术咨询服务,以便针对各种异常进行分析和预测。尽管如此,鉴于APT 的复杂属性和唯一性特点,两次攻击的路径最多是原理相似,其绝对路径根据时间的变化各方面要素一定有很大区别,所以一劳永逸的解决办法是不存在的,这也是信息安全的特点之一。

3.2.4 个人资料:人是最薄弱的环节

某些情况下,促使企业被入侵的信息一般是没能获得重视和没能获得保护的信息。这些信息通常是用户邮件地址列表、文档元数据、通讯电话号码、员工姓名、公司历史信息等。

3.2.5 元数据:进入企业的隐藏的钥匙

内嵌于图像以及文档中的信息称为元数据。很多人都不清楚自己上传在网络上的图片包含着图片拍摄的地理位置和硬件信息、时间点等。例如从一个PDF 的文档转换为PPT 的文档,攻击者可从其中得到很多的元数据信息,如IP 地址、文档作者、使用软件产品名和版本号、位置等。

3.2.6 技术信息:入侵基础设施

入侵者利用ISINT 查找潜在线索外,还会查询目标企业网站使用的程序与脚本。入侵者探测目标对象整个网络环境中存在的漏洞,脚本与应用程序只是比较轻易获得的线索,并不是唯一的入侵点。

3.2.7 OSINT 数据

● 可下载文件:成为直接信息以及元数据信息采集的最佳途径

● 员工照片和企业活动照片:·这为入侵者的直接信息和元数据信息收集提供便利

● 人员名单以及领导层信息:熟悉具体人员,建立目标企业关系网

● 项目和产品数据:可为寻找攻击面及背景信息提供便利

● B2B 关系:·通过这些数据建立销售渠道和供应链关系为漏洞利用提供便利

● 员工的详细信息:包括个人和公共的社交媒体数据

● 软件数据:·通常包括目标对象使用的软件种类

3.2.8 构建完整的个人资料

完整个人资料包括:全名、出生日期、电话号码(个人和工作)、地址(过去和现在)、ISP 的数据(IP 地址、提供商) 、公共记录数据(税收、信贷历史、法律记录)、用户名、密码、最喜欢的餐馆、爱好、电影、书籍等等。

3.2.9 构建完整的技术资料

技术资料信息包括:操作系统详细信息、平台开发数据和验证措施、IP 地址、网络地图、可用硬件和软件信息、从元数据获取的技术详细信息。

掌握相关资料后,入侵者便可通过相关资料数据针对服务台行动。了解ID 建立过程便可能了解邮件的建立过程,有效地执行钓鱼攻击等。通常入侵者还会这么做:查找系统、平台数据、匿名访问、第三方应用漏洞等。

4 总结

APT 攻击作为当前网络安全的一个重量级攻击方式将长期存在,并与时俱进的成长。防止侦察几乎是不可能的。只能是缓解一些攻击,有些数据并不是特别重要,但这些数据可以提供广泛的攻击面。过滤元数据也是关键的缓解措施。然而,对这些数据的限制需要通过风险评估来确定,这需要所有业务领域的参与。

[1] 2013-08-29 08:54 51CTO《八大典型 APT 攻击过程详解》

[2] 2011-07-18 12:48:47 本文摘自:硅谷动力《认识APT——进阶持续性渗透网络攻击》

[3] 2013-04-25 11:04 玉文锋 51CTO.com 《APT 攻击需综合防御》

[4] 2011(9)张帅《对ATP 攻击的检测与防御》

[5] 2011 叶蓬 《APT 攻击实例研究与企业现有防御体系缺陷分析》

[6] 2014 freebuf 《APT 防御他山石:思科内部安全团队解读APT - 产品和技术 - 赛迪网》

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!