前言
APT(Advanced Persistent Threat):高级持续威胁,主要特点是利用手段高,攻击持续,高危害。换句话说其实当于持续性高级渗透,加上恶意的目的或者谋取利益的想法时,就成了威胁,而APT防御一般出现于酒足饭饱之后
一、APT的历史起源
APT这个词汇最早起源于:2005,2005年英国和美国的CERT组织发布了关于有针对性的 交工程电子邮件,放弃特洛伊木马以泄露敏感信息的第一个警告,尽管没有使用“APT”这个名字。但 “先进的持续威胁”一词被广泛引用,2006年的美国空军Greg Rattray上校经常被引用为创造该术语的个人。
后来,Stuxnet震 事件——专门针对伊朗的核计划的黑客攻击,就是一个APT攻击例子。
在计算机安全领域以及越来越多的媒体中,APT这个术语几乎总是用来指向针对政府,公司和政治活动家的黑客攻击的高级持续模式,而且也延伸到涉及到群体这些攻击背后。作为一个术语,高级持续威胁(APT)可以被转移焦点到攻击出现次数。PC World 告称,从2010年到2011年,特别针对高级别目标的 络攻击增加了81%。
一个常见的误解是APT只针对西方国家。西方国家可能会更多地宣传针对西方国家的技术性APT,但许多国家的行为者都将 络空间安全作为收集有关个人和群体的情 的手段。在美国, 络司令部的任务是协调美国军方,应对高级持续 络威胁,也就是APT攻击。
- 高等教育
- 金融机构
- 政府机构
实际上,一个APT是有一套隐匿和持续攻击的框架的,往往针对特定的实体由一人或多人策划(一般是多人)。APT通常针对高价值目标出于商业或政治动机进行实施的。APT在长时间的攻击中依旧会尽可能的保证高度隐蔽性。而“高级”意味着使用恶意软件来攻击系统漏洞的复杂技术。“持续”过程表明,APT攻击组织外部和控制系统正在持续监测和提取特定目标的数据。“威胁”过程表明攻击会损害目标利益。
APT通常是指一个组织,甚至可能一个政府支持下的组织,因为APT团体是一个既有能力也有意向持续而有效地进行攻击的实体。所以APT通常用来指 络威胁,特别是使用互联 进行间谍活动,利用各种情 搜集技术来获取敏感信息,但同样适用于诸如传统间谍活动或攻击等其他威胁。其他公认的攻击媒介包括受感染的媒体,供应链和 会工程。这些攻击的目的是将自定义的恶意代码放在一台或多台计算机上执行特定的任务,并在最长的时间内不被发现。了解攻击者文件(如文件名称)可帮助专业人员进行全 搜索,以收集所有受影响的系统。个人,如个人黑客,通常不被称为APT,因为即使他们意图获得或攻击特定目标,他们也很少拥有先进和持久的资源。
二、什么是APT
APT:高级持续威胁(Advanced Persistent Threat),普遍认可的定义是:利用各种先进的攻击手段,对高价值目标进行的有组织、长期持续性 络攻击行为。也就是说很难去确定是不是APT攻击,只能从已发生过的APT攻击事件,分析其特点,进而与上述解释性概念相关联,得出APT攻击的一般规律。大致有这些规律:
- 高度目的性
- 高度隐蔽性
- 高度危害性
- 目标实体化
-极强的持续性
APT攻击大致包含以下内容:
- 目标 – 威胁的最终目标
- 时效性 – 探测和访问系统的时间
- 资源 – 事件中使用的知识和工具的级别(技能和方法将会影响到这一点)
- 风险容忍度 – 为了不被发现而受到威胁的程度
- 技巧和方法 – 整个活动中使用的工具和技巧
- 行动 – 威胁或许多威胁的确切行动
- 攻击起点 – 事件发生点的数量
- 参与攻击的人数 – 事件涉及多少个内部和外部系统,有多少人的系统具有不同的影响/重要性权重
通过拆开APT(Advanced Persistent Threat)来进行分析,我们可以这样看待一个APT:
-
高级Advanced- 威胁背后的运营商拥有全方位的情 收集技术。这些可能包括计算机入侵技术和技术,但也延伸到传统的情 收集技术,如电话拦截技术和卫星成像。虽然攻击的各个组件可能不被归类为特别“高级”的攻击技术(例如恶意软件),从通常可用的自己动手构建的恶意软件工具包,或者使用容易获得的漏洞,APT攻击人员通常可以根据需要访问和开发更高级的工具。他们经常结合多种定位方法,工具和技术,以达到并保持对目标的访问。
-
持续Persistent – APT攻击一方优先考虑某项具体任务,而不会投机取巧地寻求获取财务或其他收益的信息。这个意味着攻击者是由外部实体引导的。攻击的针对性是通过持续监控和互动来实现的,以达到既定的目标。这并不意味着需要不断的攻击和恶意软件更新的攻势。事实上,“低级”的做法通常更成功。如果APT攻击方失去对目标的访问权限,他们通常会重新尝试访问,而且通常是成功的。APT攻击方的目标之一是保持对目标的长期访问,而不会仅仅满足于短时间的访问权限。
-
威胁Threat – APT是一个威胁,因为他们有能力和意图。APT攻击是通过团队协作来执行的,而不是通过无意识和自动化的代码。并且APT攻击方都有一个特定的目标,同时他们技术精湛,积极主动,有组织有目的,资金充足,所以有大多数的APT攻击都是针对其他国家的,也被视为一种间谍活动。
通过这些APT攻击特征,可以得到以下结论:
- 高价值信息 络系统是实施APT攻击的主要目标,也是应重点设防目标
- 攻击过程不可能采用单一攻击技术,防护技术应综合运用
- 攻击持续时间长,重要系统应长期设防
- 会工程学被广泛使用,必须内防与外防并重,技术防范与管理制度并举的防范策略
最后,用大白话总结一下:一些目的性极强,攻击方式极为先进,复杂多样,至少是在漏洞圈子公开之前就已经利用了,最后是攻击时间跨度较长,攻击隐蔽的攻击。最好的判断方式就是根据业务级别来确定被攻击资产的重要性,把每一次异常都当成APT是保持一个安全攻城狮应有的意识!(但不要当成了APT事件处理了)
三、APT分析模型
借用两个分析模型,一个是kill-chain七层模型,一个是钻石模型
1、Cyber-Kill-Chain攻击杀伤链
对于混迹于安全圈的我们来说,洛克希德-马丁的 络杀伤链(Cyber-Kill-Chain,也被我们称 络攻击生命周期),专门用来识别和防止入侵。然而,攻击模式会一直变化,就拿Valut7来说,里面提到的攻击模型,都是在08年就已经开始在使用,而却在16年,17年才被曝光,可想而知,攻防之间的时间差是多么的严峻
络攻击杀伤链模型用于拆分恶意软件的每个攻击阶段,在每个阶段有对应的特征用于识别
(1)什么是 络攻击杀伤链(Cyber-Kill-Chain)
“杀伤链”这个概念源自军事领域,它是一个描述攻击环节的六阶段模型,理论上也可以用来预防此类攻击(即反杀伤链)。杀伤链共有“发现-定位-跟踪-瞄准-打击-达成目标”六个环节。
在越早的杀伤链环节阻止攻击,防护效果就越好。例如,攻击者取得的信息越少,这些信息被第三人利用来发起进攻的可能性也会越低。
洛克希德-马丁公司提出的 络攻击杀伤链Cyber-Kill-Chain与此类似,本质是一种针对性的分阶段攻击。同样,这一理论可以用于 络防护,具体阶段如下图所示:
-
会政治影响:处于钻石模型上下两个顶点,上顶点表示攻击者,下顶点表示受害者也就是目标。攻击者和受害者之间的某种利益冲突或者是 会地位对立则会产生攻击的意图和发起攻击的原因,纵切面表示的就是 会政治影响。说大白话就是根据这俩人去发现攻击的意图。
-
技战术组合:技战术组合位于整个钻石模型的横切面,横切面的两个顶点分别为基础设施和技术能力,这里的基础设施和技术能力其实都是相对于攻击者而言的。
-
元数据:这个其实就是左边列出来的,攻击时间、攻击阶段、攻击结果、攻击方向、攻击手段、攻击资源利用。
-
置信度:也就是以上你分析出结果的可信程度。
钻石模型想要表达的其实就是针对单个安全事件,我们可以得到攻击者为什么想要攻击目标,打算用什么手段去攻击目标
四、应对思路
APT就像是《三体》里面黑暗法则提到的那样:
宇宙就是一座黑暗森林,每个文明都是带枪的猎人,像幽灵般潜行于林间,轻轻拨开挡路的树枝,竭力不让脚步发出一点儿声音,连呼吸都必须小心翼翼:他必须小心,因为林中到处都有与他一样潜行的猎人,如果他发现了别的生命,能做的只有一件事:开枪消灭之。在这片森林中,他人就是地狱,就是永恒的威胁,任何暴露自己存在的生命都将很快被消灭,这就是宇宙文明的图景,这就是对费米悖论的解释。
一旦被发现,能生存下来的是只有一方,或者都不能生存
1、殊途同归原则
所有的攻击都是有目的性的,不论手段如何,目标都是你,如果目标都变了,那么攻击就不是针对你的攻击了,至少对被攻击方而言便是如此,所以这里要关注什么呢p>
(1)资产
你要知道你所守护的东西是什么,如果你都不知道守护的资产有多大范围,资产有什么特点,是怎么区分的
-
资产范围
你需要确定组织团体所有的资产范围,去划分相应的区域,可以是业务为主划分,也可以是直接的安全域,确定范围最终的目的就是梳理流量,稍后再提,资产范围可以做到最小权限原则,规定组织内某个团队的访问控制,以及审计,如此便可以对团体行为做分析,就比如开发团队不会去调试 络,办公室人员不应该去接入生产和业务,安全基础设施人员也不会去服务基础设施进行大量拷贝,总之就是要给资产的普及区域进行规定。 -
资产属性
资产属性怎么说个人比较支持把资产先分uat,prd,dr,oa这是内部的资产,还有一些合作方,也就是第三方,可以按对方团体名进行备注,资产属性定义资产的利用方的属性,也就是确定资产的使用方。 -
资产类别
这里面的资产包括基础设施资产,应用资产,信息资产,人员资产,隐性资产,基础设施就是 络,服务器,主机,安全设备,日常办公设备,能源设备等;应用资产一般指的是数据库,操作系统,中间价,容器,web应用等;信息资产包括组织合同,客户数据,制度流程,包括纸质,电子的所有存储信息;人员资产,主要是员工信息,组织架构,服务等等,隐性资产一般是公司企业名誉, 会价值等
资产类别确定资产的所属方。
那么我们就可以以一个类似公式的方法去分析最近资产的调用,使用,增删查改的操作:
(2)活动方式
所谓活动方式其实就是访问方式,还有一个更加洋气的名字:UBA(用户行为分析),我们先假设所有的访问都是不正常的,把所有的访问数据都在一个可恢复的环境,为什么要这么思考,因为人类的多样性,很难确定我们去执行操作的过程都是一样的,也就是说不会访问的潜意识是无意还是恶意,都应该做好监视,说到这里,我就提一下隐私权,作为个人是很不喜欢被监控的,所以要监视的环境要明确,目的要确定,继续回到活动原则,也就是说假设所有针对关键资产的动作都受到监控,这就是一部分数据源,监控能够在后续取证溯源得到很多提示。
-
上 行为监控
这里我举一个栗子:公司每周会有上 行为管理 表,会定时发布到SOC团队,而 表里面会有一个关于上 内容的分析,也就是员工访问的 址,当一名员工持续访问招聘 站时,达到半个月甚至更长的时候,基本可以确定这名员工是准备跳槽了,而此时基于人员安全就有可能会出现漏洞,当然我一直都是秉着人性本善的观念,但不排除能力较强或者不小心误入歧途的人,所以监控还是要有的,同时做好人员离职情况和权限变更的及时记录和追踪 -
邮件服务器监控
很多APT攻击的一个套路就是通过水坑式,鱼叉式的邮件钓鱼攻击,而且最近Office和Adobe频频出现0day,不排除一部分的终端或者服务器没有打上相应的补丁,当我们监控邮件服务器和邮件的时候,对邮件的传输进行监控,首先监控上班时间和下班时间的邮件发送情况,其次邮件附件的大小,和部分未加密的内容,最后是邮件入口,对钓鱼邮件进行清洗和处理 -
终端管理
之所以进行终端管理主要是针对两个方面:1.员工自己的安全意识薄弱导致终端被攻击,甚至导致内外 互通,业务和OA互通等等,短时间可能发现不了问题,当病毒,木马进入时,造成的损害就不仅仅是一台终端或者一小块OA区域了,可能是整个集团的的 络环境;2.员工内鬼,所谓千防万防家贼难防,不排除心有不忿的员工会通过终端拷贝企业信息,进行暗 交易。
所以终端管理也是必不可少的
2、堵不如疏原则
传统安全都是不断的堆叠安全设备,安全产品,后来为了更好的利用这些安全的基础设施资源,出现了纵深防御,以层为例,一层一层的,自外而内的防御,但安全问题层出不穷,也表明这样依旧不能很好的保证组织的安全性,安全是个日益增长的问题,而不是一次性部署就可以解决的,安全的问题也不仅仅来自外部,内部损害,有意无意也不在少数,所以重点应该在疏,疏从三个方面入手:检测,应急,流程。
(1)基础防护
基础防护:也就是传统安全的物理防护措施,但不仅限于物理防御,也包括管理,策略,软件上的防御,甚至针对安全基线的防护应该是算入到基础防护的一部分,前面提到堵不如疏,但这并不意味这就不需要堵,换句话来说,基础防护给攻击源增加的攻击时长,以及较短的检测时长和较短的应急时长可以保障一个企业的基本信息安全,攻击时间越长,检测时间越短,应急时间越短,那么被APT攻击成功的可能性也就越低。
(2)检测
检测是需要数据的,而且数据量是庞大的,越准确的检测,越是需要人去维护的,那么前期我们需要做的是哪些检测,一般是容易出现异常的检测
- 访问日志,根据属性去确定一个人是否应该出现在某个资产,是否允许进行资产的操作
- 登陆行为,在指定的时间,指定的服务器
(3)应急
应急主要考虑三个点:
1.应急措施是否完善
应急措施可以从资产的和应用,以及业务的角度出发,应急措施是属于BCM(业务持续性管理)的一部分,建议从以下几个点思考:
-
你的基础设施:包括安全设备反馈,服务器, 络,数据库,备份情况,日志,时钟等,一般来说,很少有人关注时钟,但是做应急和响应最重要的一个点就是时间
-
你的应用服务:应用服务器,Web,DNS解析,DDOS攻击,黑客攻击,代理解析等等,主要是考虑应用的持续性运行和故障处理
-
业务连续性:这里和应用连续性有点关联,只是有些企业存在业务期和非业务期,但实际上来说,应用服务不会完全关闭,这里考虑的主要是业务高峰期的响应,反黑产,反爬虫等对业务可用性,持续性造成影响的恢复手段
2.应急流程是否高效
检测一个应急流程是否有效的最佳方式就是测试,所以可以采取红蓝攻防的形式,或者请第三方外部授权攻击,注意测试要在数据尽可能真实,以及不影响业务的情况下
3.应急是否有效
在流程合理,应急预案充分的情况下,是时候展现真正的力量了,看应急后的恢复情况,主要参考,业务中断时间,一般来说小于10min-15min,具体还得依据业务重要性,不可一语而定,然后就是业务恢复时间,恢复时间越短,说明预案越简单高效,最后是业务恢复情况,直接进行相应的业务测试
(4)维护
维护应该包含以下一些点:
1.定期的维护
定期的维护一般是指对硬件设施进行定期的检测和维护,这里检测的范围是尽可能的广,如果范围太大,可以依据资产类型和资产范围,进行抽样测试,但一年内所有机器必须检查一次,对性能不稳定,或者已经出现了故障的设备及时更换,这里要注意对硬件设备做监控,我就遇到过备用服务器故障半个月的事件,此事不谈也罢,最后,维护要遍及所有设备,不论 络,安全,服务器,基础的电力,空调,ups等等
2.异常的维护
异常的维护就简单了很多,主要是有故障就处理,这里需要注意到是,所有的故障处理要有文件可查,也就是说要做好申请,审批,处理等流程,如果紧急,后续也应该补上,有助于对相关事件进行内审
(5)监控
监控即对整个环境做监控,这里的粒度是每一条日志,不管是应用日志还是系统日志,还有安全日志,统统收入,然后进行调优处理
监控一般是参考SOC安全运营中心的建设,建立一套完整的日志体系,这里有钱推荐使用大厂商的SOC,没钱就用OSSIM或者ELK(笔者还没建设过,所以也不做多余描述),至于国外一些产品。能不用就不用,因为售后很难受,真的。
(6)SOC建设
1.你要知道你的源:你要知道你可以收到的日志源,你可以对哪些日志进行处理,不过近期的soc有加入漏洞管理,基线,资产等元素,可以联系相关管理员获取相应的低权限账户和基础资源
2.人:必须要这么几类人的参与:上级领导的重视和关注, 安全专家的旁敲侧击,安全运维工程师的专注,最后应用,系统,业务, 络,监控,OA等区域的协助
3.在满足了1,2的基础上,开始去明确SOC的具体方向,你是关注内 安全,还是担心外 攻击,还是在意信息泄漏,还是资产管控,还是担心家贼难防等等,都需要你一步一步的去发掘,一般来说,有了源,需要做什么就是分步实施
最后引用Leo的一句话:70%的SOC建设和运营都会卡住
五、一些信息获取渠道
第一类:Github
APT大事件:https://github.com/kbandla/APTnotes
2、第二类:互联 安全商
360威胁情 中心:https://ti.360.net/
IBM:https://exchange.xforce.ibmcloud.com/
3、第三类:开源安全威胁情
Threatminer:https://www.threatminer.org/
ThreatBook:https://x.threatbook.cn/
4、付费类威胁情
知道创宇:https://www.yunaq.com/gpt/
NOSEC:https://nosec.org/
5、资讯类威胁情
安全牛:http://www.aqniu.com/category/threat-alert
安全客:http://bobao.360.cn/news/index
secwiki:https://www.sec-wiki.com/index.php
Tools:https://www.t00ls.net/
sec-un:https://www.sec-un.org/category/安全威胁情 /
IBM:https://securityintelligence.com/
天际友盟:https://www.sec-un.com/post_queryByPage.actionger.page=1
Freebuf:http://www.freebuf.com/
ichunqiu:https://www.ichunqiu.com/
cybernews:https://www.cyberwarnews.info/
Secrss:https://www.secrss.com/
Exploit-DB:https://www.exploit-db.com/
TheHacknews:https://thehackernews.com/
Hack news:http://hackernews.cc/
6、 络空间搜索引擎威胁情
Shodan:https://www.shodan.io/
censys:https://www.censys.io/
Fofa:https://fofa.so/
Zoomeye:https://www.zoomeye.org/
结语
简单了解APT:一些目的性极强,攻击方式极为先进,复杂多样,至少是在漏洞圈子公开之前就已经利用了,攻击时间跨度较长,攻击隐蔽的攻击。最好的判断方式就是根据业务级别来确定被攻击资产的重要性,把每一次异常都当成APT是保持一个安全攻城狮应有的意识!(但不要当成了APT事件处理了)
参考:
- Advanced persistent threat
- 洛克希德·马丁定义的“杀伤链”
- The cyber kill chain
- https://github.com/Hack-with-Github/Awesome-Hacking
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!