Whats APT:浅谈APT
横看成岭侧成峰,远近高低各不同
APT(Advanced Persistent Threat):高级持续威胁,主要特点是利用手段高,攻击持续,高危害。换句话说其实当于持续性高级渗透,加上恶意的目的或者谋取利益的想法时,就成了威胁,而APT防御一般出现于酒足饭饱之后。
题主并不是APT专家,只是每个人在不同时机看的东西不一样,只想在此之际,科普一下,分享一些想法,欢迎指正,批评。
文章结构(目录):
0x00.APT的历史起源
0x01.APT到底是什么?
0x02.APT的一些知名论坛,团体
0x03.APT有哪些攻击阶段?
0x04.APT分析模型
0x05.被透露的APT攻击
0x06.一些APT信息获取渠道
0x07.应对APT的思路或者想法
0x00.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,因为即使他们意图获得或攻击特定目标,他们也很少拥有先进和持久的资源。
0x01.APT到底是什么?
APT:高级持续威胁(Advanced Persistent Threat),普遍认可的定义是,利用各种先进的攻击手段,对高价值目标进行的有组织、长期持续性网络攻击行为。也就是说很难去确定是不是APT攻击,只能从已发生过的APT攻击事件,分析其特点,进而与上述解释性概念相关联,得出APT攻击的一般规律。大致有这些规律:
1)高度目的性
2)高度隐蔽性
3)高度危害性
4)目标实体化
5)极强的持续性
APT攻击大致包含以下内容:
目标 - 威胁的最终目标
时效性 - 探测和访问系统的时间
资源 - 事件中使用的知识和工具的级别(技能和方法将会影响到这一点)
风险容忍度 - 为了不被发现而受到威胁的程度
技巧和方法 - 整个活动中使用的工具和技巧
行动 - 威胁或许多威胁的确切行动
攻击起点 - 事件发生点的数量
参与攻击的人数 - 事件涉及多少个内部和外部系统,有多少人的系统具有不同的影响/重要性权重
信息来源 - 通过在线信息收集来识别关于任何特定威胁的任何信息的能力(可以通过一点积极主动的方式找到)
通过拆开APT(Advanced Persistent Threat)来进行分析,我们可以这样看待一个APT:
高级Advanced- 威胁背后的运营商拥有全方位的情报收集技术。这些可能包括计算机入侵技术和技术,但也延伸到传统的情报收集技术,如电话拦截技术和卫星成像。虽然攻击的各个组件可能不被归类为特别“高级”的攻击技术(例如恶意软件),从通常可用的自己动手构建的恶意软件工具包,或者使用容易获得的漏洞,APT攻击人员通常可以根据需要访问和开发更高级的工具。他们经常结合多种定位方法,工具和技术,以达到并保持对目标的访问。
持续Persistent - APT攻击一方优先考虑某项具体任务,而不会投机取巧地寻求获取财务或其他收益的信息。这个意味着攻击者是由外部实体引导的。攻击的针对性是通过持续监控和互动来实现的,以达到既定的目标。这并不意味着需要不断的攻击和恶意软件更新的攻势。事实上,“低级”的做法通常更成功。如果APT攻击方失去对目标的访问权限,他们通常会重新尝试访问,而且通常是成功的。APT攻击方的目标之一是保持对目标的长期访问,而不会仅仅满足于短时间的访问权限。
威胁Threat - APT是一个威胁,因为他们有能力和意图。APT攻击是通过团队协作来执行的,而不是通过无意识和自动化的代码。并且APT攻击方都有一个特定的目标,同时他们技术精湛,积极主动,有组织有目的,资金充足,所以有大多数的APT攻击都是针对其他国家的,也被视为一种间谍活动。
通过这些APT攻击特征,可以得到以下结论:一是高价值信息网络系统是实施APT攻击的主要目标,也是应重点设防目标;二是攻击过程不可能采用单一攻击技术,防护技术应综合运用;三是攻击持续时间长,重要系统应长期设防;四是社会工程学被广泛使用,必须内防与外防并重,技术防范与管理制度并举的防范策略。
最后,用我自己的话总结一下:一些目的性极强,攻击方式极为先进,复杂多样,至少是在漏洞圈子公开之前就已经利用了,最后是攻击时间跨度较长,攻击隐蔽的攻击。最好的判断方式就是根据业务级别来确定被攻击资产的重要性,把每一次异常都当成APT是保持一个安全攻城狮应有的意识!(但不要当成了APT事件处理了)
0x02.APT的一些知名论坛,团体
目前业界比较流行的防御APT思路有三种:
1、采用高级检测技术和关联数据分析来发现APT行为,典型的公司是FireEye;
2、采用数据加密和数据防泄密(DLP)来防止敏感数据外泄,典型的公司是赛门铁克;
3、采用身份认证和用户权限管理技术,严格管控内网对核心数据和业务的访问,典型的公司是RSA。
至于其他说什么人工智能,机器学习防止APT,都还在发展阶段,而题主觉得防御应该是从基础传统防御到到云大物移四个层面,最后到人工智能,这些都是基础环境,技术层面的防御措施。
0x03.APT有哪些攻击阶段?
所谓攻击阶段只是在进行黑客攻击中典型的攻击手段和形式,不一定界限清晰,但都有迹可循。
题主最早了解阶段是从我们最常见的大规模,也是比较简单的一个类似于黑客渗透攻击阶段模型:信息收集,攻击阶段,提权阶段,后渗透阶段,销声匿迹。
但APT攻击会更加系统,分布,协作,一般分成信息收集,武器化部署,传递载荷,利用,安装,命令和控制,执行
而杀伤链一般是6个阶段:发现-定位-跟踪-瞄准-入侵-完成,APT攻击模型Cyber-Kill-chain与之对应
0x04.APT分析模型
这里借用两个分析模型,一个是kill-chain七层模型,一个是钻石模型
4.1Cyber-Kill-Chain攻击杀伤链
对于混迹于安全圈的我们来说,洛克希德-马丁的网络杀伤链(Cyber-Kill-Chain,也被我们称网络攻击生命周期),专门用来识别和防止入侵。然而,攻击模式会一直变化,就拿Valut7来说,里面提到的攻击模型,都是在08年就已经开始在使用,而却在16年,17年才被曝光,可想而知,攻防之间的时间差是多么的严峻,所以我不给予希望一个Kill-Chain能够带来多大的安全防护,而重在开拓视野,最好能未雨绸缪,如今,Valut8已经曝光,企业安全,似乎远远没有我们想象的那么安静。
网络攻击杀伤链模型用于拆分恶意软件的每个攻击阶段,在每个阶段有对应的特征用于识别,但用我后面会提到的一句:堵不如疏,殊途同归,具体如何,后面会具体说说我自己的理解,现在先简单说说Cyber-Kill-Chain的每个阶段。
4.2什么是网络攻击杀伤链(Cyber-Kill-Chain)?
“杀伤链”这个概念源自军事领域,它是一个描述攻击环节的六阶段模型,理论上也可以用来预防此类攻击(即反杀伤链)。杀伤链共有“发现-定位-跟踪-瞄准-打击-达成目标”六个环节。
在越早的杀伤链环节阻止攻击,防护效果就越好。例如,攻击者取得的信息越少,这些信息被第三人利用来发起进攻的可能性也会越低。
洛克希德-马丁公司提出的网络攻击杀伤链Cyber-Kill-Chain与此类似,本质是一种针对性的分阶段攻击。同样,这一理论可以用于网络防护,具体阶段如下图所示:
Cyber-Kill-Chain
这就像传统的盗窃流程。小偷要先踩点再溜入目标建筑,一步步实行盗窃计划最终卷赃逃逸。要利用网络杀伤链来防止攻击者潜入网络环境,需要足够的情报和可见性来明了网络的风吹草动。当不该有的东西出现后,企业需要第一时间获悉,为此企业可以设置攻击警报。
另一个需要牢记的点是:在越早的杀伤链环节阻止攻击,修复的成本和时间损耗就越低。如果攻击直到进入网络环境才被阻止,那么企业就不得不修理设备并核验泄露的信息。
要想明确杀伤链技术是否适合自己的企业,不妨通过杀伤链模型的几个阶段入手,来发现企业应当核实的问题。
4.3网络攻击杀伤链的各个阶段
4.3.1RECONNAISSANCE 识别目标,信息收集
在这个阶段,犯罪分子试图确定目标的好坏。他们从外部了解企业的资源和网络环境,并确定是否值得攻击。最理想的情况是,攻击者希望目标防备薄弱、数据价值。罪犯可以找到的信息门类,以及这些信息如何被使用。
企业的信息价值往往超出他们想象。雇员的姓名和详细信息(不仅是企业网站,而且包括社交网站的信息)是否在网端存储?这些信息可以用来进行社会工程用途,比如,让人们透露用户名或密码。企业的网站服务器或物理位置是否接入网络吗?这些也可以用于社会工程,或帮助攻击者缩小企业环境漏洞的寻找范围。
这个层面上的问题很难处理,社交网络的普及让它变得尤为棘手。将敏感信息隐藏起来是一个廉价的改善方式,虽然这也增加信息调用的时间成本。
攻击方 | 防御方 | |
---|---|---|
特点 | 攻击方的攻击计划阶段。他们进行研究,以了解其目标,使他们能够实现自己的目标 | 探测侦察,因为它发生是非常困难的,但是,当守军发现侦察 - 事后甚至好 - 它可以揭示了攻击方的意图。 |
常用攻击/防御方式 | 获取电子邮件地址,确定员工社交媒体网络,收集新闻稿,合约奖励,会议出席者名单,探索放在公网上运行的服务器 | 收集网站访问者日志警报和历史搜索,与网站管理员合作对其现有浏览器进行分析,建立浏览异常、行为独特的检测机制,优先周围的防御,特别是基于技术和人的侦察活动。 |
4.3.2WEAPONIZATION 武器化准备工作
这些阶段是攻击者用工具攻击被选目标的具体过程,他们收集的信息将被用于恶意行为。他们手头的信息越多,社会工程攻击就越无缝可击。通过员工在LinkedIn上的信息,他们可以用鱼叉式钓鱼获得公司内部资源。或者,他们可以把远程访问木马提前嵌入可能会录入重要信息的文件里,以诱使接收者运行它。如果他们知道用户或服务器运行的软件信息,比如操作系统版本和类型,他们在企业网络里渗透和布置的把握就大大增加。
就这些阶段的防御而言,企业应当参照标准安全专家的建议去做。
企业的软件是否达到最新?这需要具体到每台终端上的每个应用。大多数公司都有某个小角落还用着老式台式机,系统仍然用的是Windows 98。如果这台设备接入网络,无异于对攻击者门洞大开。
企业使用电子邮件和网页过滤功能吗?电子邮件过滤可以有效阻止攻击中常用的文档类型。如果企业的文件必须用某种标准发送,比如密码保护的ZIP文件,这可以让用户了解文件是否无误。网页过滤则可以防止用户访问已知的不良网站或域名。
企业禁用USB设备吗?从安全的角度来看,让文件不需许可就运行绝非什么好主意。最好在运行前,确保给用户有时间暂停和思考他们所看到的情况。
企业使用端点保护软件的最新功能吗?虽然端点保护软件不是为了应对新型针对性攻击而设计,但是它们常常根据已知的可疑行为或软件漏洞来捕捉威胁。
攻击方 | 防御方 | ||
---|---|---|---|
特点 | 这是攻击方准备工作和分步阶段。恶意软件的生成可能不会用手工完成的-他们使用自动化的工具。一系列武器化准备的恶意软件和攻击再加上武器化的“军火商”,直到攻击达到payload。 | 这是捍防御方应该了解的重要阶段。虽然它不能检测到攻击部署的发生过程,但这是通过分析恶意软件的一个部分:针对攻击部署的工具检测,这类检测往往是最持久的和有弹性的防御。 | |
常用攻击/防御方式 | 获得“军火商”的帮助,无论是在公司内部还是通过公共或私人渠道获得,基于文件的攻击,选择“钓鱼”文件呈现给受害者,选择合适的后门植入,命令控制目标基础设施,设计一个特定的“任务ID”并在恶意软件嵌入,编译和后门:工具payload。 | 进行全面的恶意软件分析 - 而不仅是payload,还应该包括payload的实现,建立攻击源检测 - 找到新的活动和新的有效载荷仅仅是因为他们重新使用攻击工具包(“军火库”),分析恶意软件的时间线:什么时候创建的?什么时候使用的?有时新的恶意软件是由旧的恶意软件合成的,但新的恶意软件可能就意味着活跃,针对性,收集文件和元数据供日后分析,确定攻击“军火库”的来源:可以通过分享常见的APT活动,或者内部共享。 |
4.3.3传递:传递载荷,启动运行
攻击方 | 防御方 | |
---|---|---|
特点 | 在攻击方向目标传达了恶意软件之后。都将开始执行进一部分攻击操作。 | 这是防御方阻止该操作的第一个也是最重要的机会。有效性的关键措施是阻断入侵尝试和工具传递的重要部分 |
常用攻击/防御方式 | 攻击方控制下传递载荷:直接针对Web服务器,攻击方释放载荷:恶意电子邮件,恶意软件的USB存储,社交媒体互动,“水坑式”钓鱼网站攻击 | 分析和理解载荷传递的介质 - 关注上层的基础设施主要是关键基础设施,了解目标服务器和相关人员,他们的角色和责任,可用的信息,根据攻击方载荷情况推断攻击方的意图,分析“军火库”攻击载荷在传递区域检测新的恶意代码,分析在一天中的什么时间段对方开始行动,收集电子邮件和网络日志,还原取证。即使后期检测到入侵,防御方必须能够确定何时以及如何开始传递载荷。 |
4.3.4利用 获取目标访问权限
攻击方 | 防御方 | |
---|---|---|
特点 | 攻击方利用一个漏洞来获得访问权限(实际上可能会运用多个漏洞)。“0day”指的就是此步骤中使用的攻击漏洞。 | 这里部署的一般是传统的防御措施,同时针对“0day”,“1day”,“Nday”等类型的漏洞增加弹性,定制化的防御能力 |
常用攻击/防御方式 | 软件,硬件,或人类的脆弱性,获取或发现“0day”漏洞,攻击方利用基于服务器的安全漏洞,受害者触发漏洞:点击恶意电子邮件,点击恶意链接 | 用户安全意识培训和员工的电子邮件测试。以及邮箱服务器防护,Web开发人员的对于安全编码培训,定期扫描漏洞和渗透测试,端点防御措施:限制管理员权限,使用Microsoft EMET,自定义端点规则阻断shellcode执行,端点登录审计过程,取证确定攻击源。 |
4.3.5安装: 在目标建立堡垒
攻击方 | 防御方 | ||
---|---|---|---|
特点 | 通常情况下,攻击方安装一个持续后门或植入,可以长时间访问目标的工具 | 终端防御检测和记录“异常”安装活动。恶意软件分析过程中分析安装阶段的行为可以缓解攻击。 | |
常用攻击/防御方式 | Web服务器上安装木马后门,在目标客户端安装后门和植入,在目标上创建持续运行的服务,或者自启的服务和进程等等,有些攻击者会让一些“时间点”的文件,让恶意软件看起来它就是操作系统安装的一部分。 | 一个好的建议:关注通用软件安装路径,例如RECYCLER,了解恶意软件是需要特权账户还是一般用户的权限,终端接入审计:去发现异常文件的创建,所有的摘录证书,主要是包含签名的可执行文件,了解恶意软件的编译时间,以确定它是旧的还是新出现的恶意软件。 |
4.3.6命令和控制(C2): 远程控制和植入
一旦威胁在企业的网络环境里扎根,它的下一个任务是给老窝打电话并等待指示。它可能下载额外的组件,更有可能的是通过C&C通道联系一个僵尸网络主控机。无论哪种方式,这都要求网络流量,这意味着企业必须扪心自问:防火墙是否设置了新项目进行网络通信的警报?
如果威胁已经实现了这些,它将对机器进行更改并将耗费IT工作人员对大量精力。有些公司或行业要求诊断受影响的机器上哪些数据被窃取或篡改。受影响的机器需要进行清洗或重置。如果数据已经备份,或者有可以快速加载到机器的标准企业模式,修复工作的成本和时间损耗就会有所降低。
有些攻击会另辟蹊径
去年的攻击状况已经充分证明了一点:攻击者不会严格按照游戏流程来——他们可能跳过步骤、添加步骤,甚至重复之前的步骤。最近的一些最具破坏性的攻击事件都是如此,这些攻击之所以能绕过安全团队耗费多年精心打造的防御体系,是因为它们有不同的流程安排。
“符合洛克希德-马丁公司的杀伤链的恶意行为被重点关注,这也让某些攻击隐形了。”Kudelski Security的全球管理服务副总裁Alton Kizziah说。
数据中心安全的领军者Alert Logic的合伙人、产品营销高级经理Misha Govshteyn指出:“杀伤链从来不能彻底符合我们看到的种种攻击。”
根据2017年威瑞森的数据泄露调查报告,今年,网络程序攻击成为了数据泄露的最常见形式,在数据泄露案例中占到了近三分之一。常见方法是利用应用程序自身的漏洞。最近的Equifax数据泄露事件就是典型例子。这种攻击很难发现。在两个月里,Equifax未在网站上发现可疑的网络流量。“通常到了数据外泄的时候,企业才能察觉。”Positive Technologies的网络安全弹性主管Leigh-Anne Galloway说。“或者,可能需要一个第三方的实体,例如某个客户,来提醒企业出了问题。”Equifax泄露案可以追溯到Apache Struts Web服务器软件中的一个漏洞。如果公司安装了这个漏洞的安全补丁,这个问题可能会避免,但是有时软件更新本身就是恶意攻击的桥梁,9月发生的CCleaner被黑事件就是一例。零日漏洞也是大麻烦。根据Contrast Security的共同创始人兼首席技术官杰夫·威廉姆斯的观点,平均每个软件应用和api拥有26.8个严重漏洞。“这是一个惊人的数字,”他说。“公众对Equifax感到愤怒,但事实是,几乎所有的公司在应用程序层都是不安全的。我们发现,世界各地有成千上万的IP地址正在进行的应用攻击尝试,这一现象正在扩散。”
要抵御这类攻击,企业必须缩短补丁的安装延迟。“过去的时候,直到应用程序漏洞被披露后的数周或数月,针对性的攻击才会出现,”他说,“但是今天,安全窗口已经只有一天左右,而在2018年,这一时间可能进一步缩减到几个小时。”他补充说,企业也需要开始将安全控件直接嵌入到应用程序里。这被称为应用程序的运行自保,Gartner预测这一细分市场的复合年增长率为9%。
“安全需要更贴近应用程序,需要深入了解程序的核心进程和内存使用量,”Virsec Systems的创始人和首席技术官Satya Gupta说。“新的流程控制技术将嵌入到应用程序层面,能理解应用的协议和环境,可以将可接受的应用程序流程绘制出来(就像谷歌地图)。如果应用程序应该从A点走到B点,但是却出现了一段意外的路程,那么肯定出错了。”
攻击者也可以利用被泄露的身份信息或强度弱的密码。这一过程不需要安装恶意软件,也不用与C&C服务器通信,不会产生横向操作。“寻找一份泄露的数据库或Amazon S3数据意味着攻击可以简便完成,从而避免和防御者交锋。”Obsidian Security的首席技术官Ben Johnson说。根据RedLock本月发布的一份报告,53%的组织使用Amazon S3等云存储服务,这至少导致了一个意外结果,即数据暴露在公众面前。今年夏天的早些时候,Skyhigh Networks报道称,7%的企业使用的所有AWS S3数据可以无限制访问,另有35%的企业未对数据加密。由于数据是通过合法渠道传出,数据防泄露可能无法检测这种行为。Govshteyn说:“企业需要专门的工具来保护针对网络应用程序的攻击。”DOS攻击也难以被杀伤链解释。“攻击者仍需选择目标,所以必须进行侦察阶段。”Cybereason的首席安全官Sam Curry说。但是在准备之后,攻击者将直接跳转到中断阶段。他补充说DOS攻击也可能只是攻击的第一步,用来掩盖其他恶意行为。“当系统崩溃时,攻击者可以创建一个漏洞,”他说,“或者创建一个高信噪的筛选器,来掩盖痕迹或破坏系统的信号发现能力。”他说,攻击者也可以添加步骤到游戏流程里。例如,他们可以花时间清理痕迹、设置中断、传播虚假数据,或安装未来用得上的后门。他们也可以重新安排各步骤的顺序,或者重复之前的步骤。这不是一个简单的线性过程。这通常更像树状或根系的分支和蔓延,这一过程很复杂,会发生很多事情。
攻击方 | 防御方 | |
---|---|---|
特点 | 恶意软件将打开通信信道,以使攻击方远程操作目标。向C2目标开放双向通信通道基础设施; | 防御的最后一个最佳时机-阻止C2操作:“通过阻断C2通道”。如果攻击方不能通过通信信道发出命令,相应的防御方就可以实现阻断C2攻击 |
常用攻击/防御方式 | 最常见的C2渠道涉及web,DNS和电子邮件协议,C2基础设施可能被攻击方或目标自身所拥有 | 通过全面的恶意软件分析工具去发现部署和执行了C2的基础设施强化网络:汇总所有存在的互联网点,规范所有类型的代理流量(HTTP,DNS等);自定义C2模块:网络代理协议;代理类模块,包括“none”或“未分类”的域;DNS穿透和域名服务器毒化防御;实施开源研究发现新的C2攻击方式。 |
4.3.7行动:使命必达,不达目的,誓不罢休
在拒绝服务攻击案例中,中断不一定是攻击的最后一步。在攻击者成功地破坏、瘫痪或渗入系统后,攻击者可以重复这一过程。也可以转移到另一个阶段——盈利。Preempt Security的首席执行官 Ajit Sancheti 认为,攻击者可能采取任意形式的组合。比如,他们可以通过破坏基础设施来进行广告欺诈或发送垃圾邮件、向企业勒索赎金、出售他们在黑市上获得的数据,甚至劫持基础设施出租给其他罪犯。“攻击的盈利已经急剧增加。”他补充说,比特币的使用让攻击者更简便、安全地得到钱,这导致了攻击动机的变化。不同群体的数量参与也让黑市上被盗数据的消费变得更加复杂。这也为企业、执法部门和其他组织创造了合作破坏这一过程的机会。以被盗的支付卡信息为例。“一旦信用卡数据被盗,这些数据必须被测试、出售、用于获取商品或服务,反过来这些商品或服务必须转换为现金。”Splunk公司的安全研究主管Monzy Merza说。这一切都早已超出了传统网络杀伤链的范畴。黑市生态系统也在影响了网络攻击周期中的攻击准备环节。攻击者们会分享身份凭证列表、漏洞或被修改的应用程序。
攻击方 | 防御方 | |
---|---|---|
特点 | 激活键盘接入激活键盘接入,入侵者完成任务的目标。接下来会发生什么将取决于谁是在键盘上。 | 较长的攻击方有CKC7访问,更大的影响。包括网络数据包捕获,进行损失评估 - 防御方必须通过取证去尽可能快地检测到这一阶段 |
常用攻击/防御方式 | 收集用户凭据,权限提升,内部侦查,横向内网渗透,收集和传出数据,破坏系统,覆盖或破坏数据,偷偷修改数据 | 制定事件响应流程,包括行政参与和沟通计划。检测数据泄露,横向传输,未经授权证书的使用。即时响应分析反馈所有事件告警。预先部署监控节点端点快速分流。网络包捕获,还原攻击活动。让专家进行事件损害评估 |
4.4钻石模型
钻石模型是一个针对单个事件分析的模型,核心就是用来描述攻击者的技战术和目的,具体的钻石模型如下图所示:
钻石模型
钻石模型由三部分组成:置信度、元数据、社会-政治影响和技战术组合
社会政治影响:处于钻石模型上下两个顶点,上顶点表示攻击者,下顶点表示受害者也就是目标。攻击者和受害者之间的某种利益冲突或者是社会地位对立则会产生攻击的意图和发起攻击的原因,纵切面表示的就是社会政治影响。说大白话就是根据这俩人去发现攻击的意图。
技战术组合:技战术组合位于整个钻石模型的横切面,横切面的两个顶点分别为基础设施和技术能力,这里的基础设施和技术能力其实都是相对于攻击者而言的。
元数据:这个其实就是左边列出来的,攻击时间、攻击阶段、攻击结果、攻击方向、攻击手段、攻击资源利用。
置信度:也就是以上你分析出结果的可信程度。
钻石模型想要表达的其实就是针对单个安全事件,我们可以得到攻击者为什么想要攻击目标,打算用什么手段去攻击目标。
0x05.被透露的APT攻击
https://github.com/kbandla/APTnotes
此处不做赘述
0x06.一些APT信息获取渠道
1.第一类: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.action?pager.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/
0x07.应对APT的思路或者想法
APT就像是《三体》里面黑暗法则提到的那样:
宇宙就是一座黑暗森林,每个文明都是带枪的猎人,像幽灵般潜行于林间,轻轻拨开挡路的树枝,竭力不让脚步发出一点儿声音,连呼吸都必须小心翼翼:他必须小心,因为林中到处都有与他一样潜行的猎人,如果他发现了别的生命,能做的只有一件事:开枪消灭之。在这片森林中,他人就是地狱,就是永恒的威胁,任何暴露自己存在的生命都将很快被消灭,这就是宇宙文明的图景,这就是对费米悖论的解释。
一旦被发现,能生存下来的是只有一方,或者都不能生存
7.1殊途同归原则
所有的攻击都是有目的性的,不论手段如何,目标都是你,如果目标都变了,那么攻击就不是针对你的攻击了,至少对被攻击方而言便是如此,所以这里要关注什么呢?
7.1.1资产
你要知道你所守护的东西是什么,如果你都不知道守护的资产有多大范围,资产有什么特点,是怎么区分的
a.资产范围
你需要确定组织团体所有的资产范围,去划分相应的区域,可以是业务为主划分,也可以是直接的安全域,确定范围最终的目的就是梳理流量,稍后再提,资产范围可以做到最小权限原则,规定组织内某个团队的访问控制,以及审计,如此便可以对团体行为做分析,就比如开发团队不会去调试网络,办公室人员不应该去接入生产和业务,安全基础设施人员也不会去服务基础设施进行大量拷贝,总之就是要给资产的普及区域进行规定。
b.资产属性
资产属性怎么说?其实个人比较支持把资产先分uat,prd,dr,oa这是内部的资产,还有一些合作方,也就是第三方,可以按对方团体名进行备注,资产属性定义资产的利用方的属性,也就是确定资产的使用方。
c.资产类别
这里面的资产包括基础设施资产,应用资产,信息资产,人员资产,隐性资产,基础设施就是网络,服务器,主机,安全设备,日常办公设备,能源设备等;应用资产一般指的是数据库,操作系统,中间价,容器,web应用等;信息资产包括组织合同,客户数据,制度流程,包括纸质,电子的所有存储信息;人员资产,主要是员工信息,组织架构,服务等等,隐性资产一般是公司企业名誉,社会价值等
资产类别确定资产的所属方。
那么我们就可以以一个类似公式的方法去分析最近资产的调用,使用,增删查改的操作:谁,什么时间,通过什么渠道,访问了哪些资产,资产间什么关系,动作有哪些?
7.2活动方式
所谓活动方式其实就是访问方式,还有一个更加洋气的名字:UBA(用户行为分析),我们先假设所有的访问都是不正常的,把所有的访问数据都在一个可恢复的环境,为什么要这么思考,因为人类的多样性,很难确定我们去执行操作的过程都是一样的,也就是说不会访问的潜意识是无意还是恶意,都应该做好监视,说到这里,我就提一下隐私权,作为个人是很不喜欢被监控的,所以要监视的环境要明确,目的要确定,继续回到活动原则,也就是说假设所有针对关键资产的动作都受到监控,这就是一部分数据源,监控能够在后续取证溯源得到很多提示。
a.上网行为监控
这里我举一个栗子:公司每周会有上网行为管理报表,会定时发布到SOC团队,而报表里面会有一个关于上网内容的分析,也就是员工访问的网址,当一名员工持续访问招聘网站时,达到半个月甚至更长的时候,基本可以确定这名员工是准备跳槽了,而此时基于人员安全就有可能会出现漏洞,当然我一直都是秉着人性本善的观念,但不排除能力较强或者不小心误入歧途的人,所以监控还是要有的,同时做好人员离职情况和权限变更的及时记录和追踪
b.邮件服务器监控
很多APT攻击的一个套路就是通过水坑式,鱼叉式的邮件钓鱼攻击,而且最近Office和Adobe频频出现0day,不排除一部分的终端或者服务器没有打上相应的补丁,当我们监控邮件服务器和邮件的时候,对邮件的传输进行监控,首先监控上班时间和下班时间的邮件发送情况,其次邮件附件的大小,和部分未加密的内容,最后是邮件入口,对钓鱼邮件进行清洗和处理
c.终端管理
之所以进行终端管理主要是针对两个方面:1.员工自己的安全意识薄弱导致终端被攻击,甚至导致内外网互通,业务和OA互通等等,短时间可能发现不了问题,当病毒,木马进入时,造成的损害就不仅仅是一台终端或者一小块OA区域了,可能是整个集团的的网络环境;2.员工内鬼,所谓千防万防家贼难防,不排除心有不忿的员工会通过终端拷贝企业信息,进行暗网交易。
所以终端管理也是必不可少的
7.3堵不如疏原则
传统安全都是不断的堆叠安全设备,安全产品,后来为了更好的利用这些安全的基础设施资源,出现了纵深防御,以层为例,一层一层的,自外而内的防御,但安全问题层出不穷,也表明这样依旧不能很好的保证组织的安全性,安全是个日益增长的问题,而不是一次性部署就可以解决的,安全的问题也不仅仅来自外部,内部损害,有意无意也不在少数,所以重点应该在疏,疏从三个方面入手:检测,应急,流程。
a.基础防护
基础防护:也就是传统安全的物理防护措施,但不仅限于物理防御,也包括管理,策略,软件上的防御,甚至针对安全基线的防护应该是算入到基础防护的一部分,前面提到堵不如疏,但这并不意味这就不需要堵,换句话来说,基础防护给攻击源增加的攻击时长,以及较短的检测时长和较短的应急时长可以保障一个企业的基本信息安全,攻击时间越长,检测时间越短,应急时间越短,那么被APT攻击成功的可能性也就越低。
b.检测
检测是需要数据的,而且数据量是庞大的,越准确的检测,越是需要人去维护的,那么前期我们需要做的是哪些检测,一般是容易出现异常的检测,一是访问日志,根据属性去确定一个人是否应该出现在某个资产,是否允许进行资产的操作;二是登陆行为,在指定的时间,指定的服务器
c.应急
应急主要考虑三个点:
1.应急措施是否完善
应急措施可以从资产的和应用,以及业务的角度出发,应急措施是属于BCM(业务持续性管理)的一部分,建议从以下几个点思考:
a.你的基础设施:包括安全设备反馈,服务器,网络,数据库,备份情况,日志,时钟等,一般来说,很少有人关注时钟,但是做应急和响应最重要的一个点就是时间
b.你的应用服务:应用服务器,Web,DNS解析,DDOS攻击,黑客攻击,代理解析等等,主要是考虑应用的持续性运行和故障处理
c.业务连续性:这里和应用连续性有点关联,只是有些企业存在业务期和非业务期,但实际上来说,应用服务不会完全关闭,这里考虑的主要是业务高峰期的响应,反黑产,反爬虫等对业务可用性,持续性造成影响的恢复手段
2.应急流程是否高效
检测一个应急流程是否有效的最佳方式就是测试,所以可以采取红蓝攻防的形式,或者请第三方外部授权攻击,注意测试要在数据尽可能真实,以及不影响业务的情况下
3.应急是否有效
在流程合理,应急预案充分的情况下,是时候展现真正的力量了,看应急后的恢复情况,主要参考,业务中断时间,一般来说小于10min-15min,具体还得依据业务重要性,不可一语而定,然后就是业务恢复时间,恢复时间越短,说明预案越简单高效,最后是业务恢复情况,直接进行相应的业务测试
d.维护
维护应该包含以下一些点:
1.定期的维护
定期的维护一般是指对硬件设施进行定期的检测和维护,这里检测的范围是尽可能的广,如果范围太大,可以依据资产类型和资产范围,进行抽样测试,但一年内所有机器必须检查一次,对性能不稳定,或者已经出现了故障的设备及时更换,这里要注意对硬件设备做监控,我就遇到过备用服务器故障半个月的事件,此事不谈也罢,最后,维护要遍及所有设备,不论网络,安全,服务器,基础的电力,空调,ups等等
2.异常的维护
异常的维护就简单了很多,主要是有故障就处理,这里需要注意到是,所有的故障处理要有文件可查,也就是说要做好申请,审批,处理等流程,如果紧急,后续也应该补上,有助于对相关事件进行内审
e.监控
监控即对整个环境做监控,这里的粒度是每一条日志,不管是应用日志还是系统日志,还有安全日志,统统收入,然后进行调优处理
监控一般是参考SOC安全运营中心的建设,建立一套完整的日志体系,这里有钱推荐使用大厂商的SOC,没钱就用OSSIM或者ELK(笔者还没建设过,所以也不做多余描述),至于国外一些产品。能不用就不用,因为售后很难受,真的。
最后提一下SOC建设的三个要素:
1.你要知道你的源:你要知道你可以收到的日志源,你可以对哪些日志进行处理,不过近期的soc有加入漏洞管理,基线,资产等元素,可以联系相关管理员获取相应的低权限账户和基础资源
2.人:必须要这么几类人的参与:上级领导的重视和关注, 安全专家的旁敲侧击,安全运维工程师的专注,最后应用,系统,业务,网络,监控,OA等区域的协助
3.在满足了1,2的基础上,开始去明确SOC的具体方向,你是关注内网安全,还是担心外网攻击,还是在意信息泄漏,还是资产管控,还是担心家贼难防等等,都需要你一步一步的去发掘,一般来说,有了源,需要做什么就是分步实施
最后引用Leo的一句话:70%的SOC建设和运营都会卡住
最后:再次总结一下APT攻击:
一些目的性极强,攻击方式极为先进,复杂多样,至少是在漏洞圈子公开之前就已经利用了,攻击时间跨度较长,攻击隐蔽的攻击。最好的判断方式就是根据业务级别来确定被攻击资产的重要性,把每一次异常都当成APT是保持一个安全攻城狮应有的意识!(但不要当成了APT事件处理了)
参考文献
https://en.wikipedia.org/wiki/Advanced_persistent_threat
http://www.freebuf.com/articles/neopoints/152457.html
https://github.com/Hack-with-Github/Awesome-Hacking
https://www.lockheedmartin.com/us/what-we-do/aerospace-defense/cyber/cyber-kill-chain.html
http://www.aqniu.com/news-views/29381.html