APT是黑客以窃取核心资料为目的,针对客户所发动的网络攻击和侵袭行为,是一种蓄谋已久的“恶意商业间谍威胁”。这种行为往往经过长期的经营与策划,并具备高度的隐蔽性。APT的攻击手法,在于隐匿自己,针对特定对象,长期、有计划性和组织性地窃取数据,这种发生在数字空间的偷窃资料、搜集情报的行为,就是一种“网络间谍”的行为。
APT(Advanced Persistent Threat)即高级持续性威胁,是一种周期较长、隐蔽性极强的攻击模式。
综合了多种攻击途径来尝试突破网络防御,通常是通过Web或电子邮件传递,利用应用程序或操作系统的漏洞,利用传统的网络保护机制无法提供统一的防御。除了使用多种途径,高级定向攻击还采用多个阶段穿透一个网络,然后提取有价值的信息,这使得它的攻击更不容易被发现。
搜集的主要目标有:业务流程、系统运行状况等。
目的是:窃取商业机密,破环竞争甚至是国家间的网络战争。
整个攻击生命周期的七个阶段如下:
第一阶段:扫描探测
在APT攻击中,攻击者会花几个月甚至更长的时间对"目标"网络进行踩点,针对性地进行信息收集,目标网络环境探测,线上服务器分布情况,应用程序的弱点分析,了解业务状况,员工信息等等。
第二阶段:工具投送
在多数情况下,攻击者会向目标公司的员工发送邮件,诱骗其打开恶意附件,或单击一个经过伪造的恶意URL,希望利用常见软件(如Java或微软的办公软件)的0day漏洞,投送其恶意代码。一旦到位,恶意软件可能会复制自己,用微妙的改变使每个实例都看起来不一样,并伪装自己,以躲避扫描。有些会关闭防病毒扫描引擎,经过清理后重新安装,或潜伏数天或数周。恶意代码也能被携带在笔记本电脑、USB设备里,或者通过基于云的文件共享来感染一台主机,并在连接到网络时横向传播。
第三阶段:漏洞利用
利用漏洞,达到攻击的目的。攻击者通过投送恶意代码,并利用目标企业使用的软件中的漏洞执行自身。而如果漏洞利用成功的话,你的系统将受到感染。普通用户系统忘记打补丁是很常见的,所以他们很容易受到已知和未知的漏洞利用攻击。一般来说,通过使用零日攻击和社会工程技术,即使最新的主机也可以被感染,特别是当这个系统脱离企业网络后。
第四阶段:木马植入
随着漏洞利用的成功,更多的恶意软件的可执行文件——击键记录器、木马后门、密码破解和文件采集程序被下载和安装。这意味着,犯罪分子现在已经建成了进入系统的长期控制机制。
第五阶段:远程控制
一旦恶意软件安装,攻击者就已经从组织防御内部建立了一个控制点。攻击者最常安装的就是远程控制工具。这些远程控制工具是以反向连接模式建立的,其目的就是允许从外部控制员工电脑或服务器,即这些工具从位于中心的命令和控制服务器接受命令,然后执行命令,而不是远程得到命令。这种连接方法使其更难以检测,因为员工的机器是主动与命令和控制服务器通信而不是相反。
第六阶段:横向渗透
一般来说,攻击者首先突破的员工个人电脑并不是攻击者感兴趣的,它感兴趣的是组织内部其它包含重要资产的服务器,因此,攻击者将以员工个人电脑为跳板,在系统内部进行横向渗透,以攻陷更多的pc和服务器。攻击者采取的横向渗透方法包括口令窃听和漏洞攻击等。
第七阶段:目标行动
也就是将敏感数据从被攻击的网络非法传输到由攻击者控制的外部系统。在发现有价值的数据后,APT攻击者往往要将数据收集到一个文档中,然后压缩并加密该文档。此操作可以使其隐藏内容,防止遭受深度的数据包检查和DLP技术的检测和阻止。然后将数据从受害系统偷运出去到由攻击者控制的外部。大多数公司都没有针对这些恶意传输和目的地分析出站流量。那些使用工具监控出站传输的组织也只是寻找"已知的"恶意地址和受到严格监管的数据。
主要体现两方面
ATP攻击通常窃取目标的敏感信息和机密信息,攻击的隐蔽性好,一旦APT攻击病毒被发现时其目标往往已经被成功入侵
APT攻击的目标影响巨大,APT的攻击发起者都是政府组织或大型企业,攻击的对象也是同类对象,主要针对国家重要基础设施和组织进行,例如:能源、电力、金融、国防等管辖到国计民生或国家核心利益的网络基础设施或相关领域的大型企业。
APT并不聚焦攻击手法,更像是一个网络攻击的活动,它不是单一类型的威胁,而是一种威胁的过程。常见的攻击手段有如下几种:
1、水坑攻击
从字面上理解,就是给你从必经的路途中挖坑,等着你踩下去,通常以攻击低安全性的目标来接触高安全的目标,攻击者会在攻击前收集大量的目标信息,分析其网络活动的规律,寻找其经常访问的网站弱点,并事先攻击该网站来等待目标访问。由于目标使用的系统环境多样、漏洞较多(如Flash、JRE、IE等),使水坑攻击较易的手,且水坑攻击的隐蔽性好,所以经常被使用。
[[[[[[[[[[[[[[[[[[[[[[[图
2、网络钓鱼和鱼叉式网络钓鱼(Phishing and Spear Phishing)
钓鱼式攻击是指攻击者企图通过网络通信,伪装成一些知名的社交网络等来获取用户的敏感信息。在攻击过程中,攻击者为了入侵目标所在的系统,可能会对目标系统的员工进行钓鱼攻击,引导用户到URL和页面布局与源头网站看起来几乎一样的钓鱼网站,欺骗用户输入敏感信息,达到信息窃取的目的。
[[[[[[[[[[[[[[[[[[[[[[[图
鱼叉式网络钓鱼则是指针对特定对象的钓鱼式攻击,通常是锁定一个目标,一般的目的是获取用户的用户名和登录口令等敏感信息,但这仅仅是第一步,随后将想方设法的实施规模更大、层次更深的攻击。因而,鱼叉式网络攻击更是常常被应用于APT攻击中。
[[[[[[[[[[[[[[[[[[[[[[[图
3、零日漏洞(Zero-day Exploit)
零日漏洞指还没有补丁的安全漏洞,攻击者进入目标网络后,可轻易利用零日漏洞对目标进行攻击,轻松获得敏感数据,所以APT前期会搜集目标的各种信息,包括使用的软件环境,就是便于更加聚焦的寻找零日漏洞,绕过系统部署的各种安全防护体系发动有效的破坏行攻击。
4、社会工程学攻击
社会工程学通常是利用人性的弱点,随着人类生活和网络空间变得越来越交融,再加之人性的弱点无法避免,社会工程学攻击的危害也将越来越大。
1、超级工程病毒(Stuxent)
基本流程如下
感染工控系统外部主机
通过感染可移动存储设备对工控系统内部网络实现“摆渡”攻击,利用快捷方式文件解析漏洞(MS10-046),将病毒传播到内部网络。
在内部网络中,通过快捷方式解析漏洞、RPC远程执行漏洞(MS08-067)、打印机后台程序服务漏洞(MS10-061),实现联网主机之间的传播。
最终传播到安装WinCC系统的主机,实施进一步攻击。
2、极光行动(Operation Aurora)
基本流程如下
信息搜集阶段:选定员工,尽可能搜集其网络行为
钓鱼攻击阶段:攻击者利用一个动态DNS供应商建立了一个托管伪造照片的恶意网站,目标员工通过社工邮件单机链接,进入该恶意网站,页面载入包括Shellocode的JavaScript代码,造成IE浏览器溢出,进而执行FTP下载程序,以及执行其他远程服务器下载程序。
持续威胁阶段:攻击者通过SSL协议与目标主机建立安全连接,持续监听并最终获得了目标雇员访问服务器的账号密码等关键信息。
渗透攻击阶段:攻击者使用目标员工的凭证,成功进入邮件服务器,进一步攻击并不断获取特定账户的邮件内容信息。
与攻击者信息不对称。
攻击行为特征难以提取,攻击渠道多元化。导致难以使用单一的手段建立通用防御机制。
APT攻击注重动态行为和静态文件得隐蔽性,导致实时监测困难。
APT攻击空间拥有不确定性。
1. 恶意代码检测
恶意代码的检测主要分为两种:
基于特征码的检测技术
是对恶意代码的静态分析,找到该恶意代码中具有代表性的特征信息(指纹),如十六进制的字节序列、字符串序列等,然后再利用该特征进行快速匹配。
大体不过是特征分析、特征码入库、安全检测(特征库匹配)。
通过对恶意代码的分析获得恶意代码执行中通用的行为操作序列或结构模式,这些行为序列和模式一般再正常文件中很少出现,如修改某个PE文件的结构、删除某个系统关键文件、格式化磁盘等,然后再把每一个行为操作序列或结构模式按照危险程度排序并设定不同的危险程度加权值,在实施检测时,若行为操作序列或结构模式的加权值综合超过某个指定的阈值,即判定为恶意代码。
启发式有一个特点就是阈值的设定,如果设定不合理会造成误报率过高或者漏报的情况。
2. 主机应用保护
加强系统内各主机节点的安全测试,进行系统加固可有效的阻止APT攻击
3. 网络入侵分析
APT攻击的恶意代码变种多且升级频繁,但恶意代码所构建的命令控制通道通信模式并不经常变化。因此,可采用传统入侵检测方法来检测APT的命令控制通道,关键是如何及时获取APT攻击命令控制通道的通信模式特征
4. 大数据分析检测
大数据分析是一种网络取证思路,它全面采集网络设备的原始流量及终端和日志服务器日志,进行集中的海量数据存储和深入分析,可通过数据来还原APT攻击场景,因涉及海量数据处理,因此需要构建Hadoop、Spark等大数据存储和分析平台,并通过机器学习对数据进行分析,从而检测是否受到攻击。
例如:用K-means聚类算法和ID3决策树学习算法进行网络异常流量检测,使用基于欧式距离的K-means聚类算法对正常流量行为和一场流量行为进行训练,最后结合ID3决策树判断是否发生流量异常。
1、FireEye
FireEye的APT解决方案主要包括两块内容
MPS(Malware Protection System)恶意代码防护引擎:高性能的智能沙箱,可直接采集流量、抽取携带文件等,然后放到沙箱中进行安全检测。特点如下
支持对Web、邮件和文件共享3种来源的恶意代码检测。
对于不同来源的恶意代码,采取专门MPS硬件进行专门处理,目的是提高检测性能和准确性
MPS支持除可执行文件之外的多达20种文件类型的恶意代码检测。
MPS支持旁路和串联部署,以实现恶意代码的检测和实时防护。
MPS实时学习恶意代码的命令和控制信道特征,在串联部署模式可以实时阻断APT攻击的命令控制通道。
CMS(Central Management System)集中管理系统模块,管理系统中的多个MPS引擎,同时实现威胁情报的收集和及时分发分享,并支持将检测到的新恶意代码情报上传到云平台,实现威胁情报的同步共享。Fireeye还可以与其他日志分析产品融合,形成更强大的APT安全防御解决方案。
2、Bit9(现在称为Carbon Black)
Bit9可信安全平台(Trust-based Security Platform)主要分为三个模块和四个功能来实现恶意代码检测和各类高级威胁的抵御能力。
核心是基于策略的可信引擎,管理员可通过安全策略来定义软件可信,默认拒绝所有,只有符合安全策略才允以运行。还可以基于云安全提供的软件信誉服务来度量软件的可信度,以及软件的发布商和可信软件分发源等定义可信策略(是不是和苹果的Store有点像?)
在每个终端和服务器上安装轻量级的实时检测和审计模块,该功能是保障实时检测、安全防护和事后取证的关键部件。
基于云的软件信誉服务,即通过主动抓取发布在云上的软件信息,包括软件发布时间、流行程度、软件发布商、软件来源、AV扫描结果等来计算软件信誉度。同时还支持从第三方恶意代码检测厂商(如FireEye等)获取文件散列列表,有效识别更多的恶意代码和可疑文件。
通过以上三个模块实现了,网络可视、实时检测、安全保护、事后取证等四大企业级安全功能。
3、RSA NetWitness
网络安全监控平台,由三大模块组成
Spectrum:安全分析软件,专门来识别和分析基于恶意软件的企业网络安全威胁,并确定安全威胁的优先级。
Panorama:通过融合成百上千种日志源与外部安全威胁情报,从而实现创新性信息安全分析。
Live:高级威胁情报服务,通过利用来自全球信息安全界的集体智慧和分析技能,及时获得各种APT攻击的威胁情报信息,可极大缩短针对潜在安全威胁的响应时间。
特点如下:
网络全流量和服务对象离散事件的集中分析,实现网络的全面可视性,从而获得整个网络的安全态势。
识别各种内部威胁、检测零日漏洞攻击、检测各种特定恶意代码和APT攻击时间以及数据泄密事件等。
网络日志数据的实时上下文智能分析,为企业提供可读的安全情报信息。
检测与防御分析过程的自动化,最小化安全事件响应时间。
APT防御产品的主要问题
不能很好的实现APT攻击全过程检测,容易导致攻击漏报
不能全面提供APT攻击的实时防御,难以实现主动防御
不能精准执行APT攻击态势感知,缺乏安全预警机制
如上所述,一个好的APT解决方案应该包含三部分,事前的智能检测、事中的应急响应、事后的分析防御等三个层面,应该配备的技术有主机应用控制、实时恶意代码检测、入侵防御等关键技术,实现对APT攻击的实时检测和防御。同时结合大数据的态势感知与智能预警分析组成APT的核心解决方案。
人工智能2.0基于深度学习的APT主动防御平台也成为一种技术发展趋势。
部署建议:
无需部署APT检测能力的组织:
对于小型组织,确实没有购买APT检测设备的必要。如果担心数据被盗,服务被监控,那可以做隔离;
无核心信息系统的组织,也没有购买APT检测设备的必要。因为即使被攻击了也没什么;
无安全管理部门,或是安全成熟度很低的组织,也没有购买APT检测设备的必要,因为即便发现了风险,也无法彻底地处置风险;
无软件开发团队无整改能力的(主要是软件外包公司),也没有购买APT检测设备的必要,因为发现漏洞,或是被入侵的现象发生后,自己的能力无法修复;
所有业务都在云端的用户,如果云平台自身没有APT检测能力,也不需要购买APT检测设备,因为,购买的商业化产品,无法和你部署在云端的设备耦合;
需要具有APT检测能力的组织:
IT成熟度高、具有高价值资产、核心业务实现数字化、安全有专人负责、安全团队能力强的团队,可以考虑APT检测设备,因为你们是APT攻击的目标;
对于国家重要基础设施、重要公共服务、重要信息系统,当然,针对这些,不论组织的成熟度如何或者是有无专业的安全团队,购买APT检测设备是必要的,因为APT的重点攻击目标就是你。
什么是APT攻击和基本攻击流程
APT攻击以获取大型组织的机密信息为目的的,长时间存在的,攻击类型。
APT攻击的常用手段
水坑攻击,鱼叉式钓鱼攻击、零日攻击、社会工程攻击。
案例解析
病毒工程(Stuxent)、极光行动(Operation Aurora)
注意事项
APT的难点在于信息不对成、隐蔽性、持续性、攻击技术的复杂多样难以形成通用性的防御机制。
基本的防御方法有恶意代码检测、主机应用保护、网络入侵分析、大数据分析等。
APT安全产品的介绍,基本都是通过威胁情报、恶意代码分析,全流量的日志采集、主机的运行情况实时监控、信用评价等功能,形成可读性的安全分析状况。
分析了APT防御的发展情况趋势,主要存在的问题是不能很好的发现攻击行为以及进行主动防御。解决的办法是与大数据和人工智能的深度学习进行结合给出更好的安全解决方案。