关于反杀伤链的思考

杀伤链(kill chain)最初源于军事中的C5KISR系统中的K(kill),后由洛克希德-马丁公司提出网络安全杀伤链七步模型(见下图)。

关于反杀伤链的思考 - 第1张 | Sec-UN 安全圈

那么,有了杀伤链,自然就有反杀伤链^_^。

反杀伤链,我更倾向用“发现-定位-跟踪-瞄准-打击-评估”的F2T2EA模型。

发现:实际就是我们常说的安全检测。基于特征匹配的检测,基于虚拟执行的检测,以及基于异常行为的检测,可以构建一个较为完整的检测体系。对于大型企业而言,要实现反杀伤链的构建,发现能力是先决条件。

定位:定位包含了时间、空间两个层面。时间定位是判断攻击发起、持续的时间,也就是入侵攻击的杀伤链进行到第几个阶段。空间定位则是判断攻击者所处的位置,包括在网络内的入侵深度和广度,可能的话还应该包括入侵入口位置。

跟踪:在完成定位后,防护者需要根据定位信息,判断是否进行跟踪。一般对大型企业而言,APT类攻击在杀伤链的第四步到第七步之间,仍有一定的“时间窗 口”(大多数在内网发现的攻击行为都处于这一阶段),因此只要时间、条件允许,防护者是可以进行跟踪,以获取更多的入侵信息,从而进一步完善整个杀伤链场 景。跟踪可以提高后续瞄准、交战时的反击准确度和力度,做到极致,可以让对手前功尽弃,至此再也无从下手。

瞄准:瞄准实际和杀伤链第二步的武器构建(Weaponization)类似,也就是我们需要确定采取何种手段、何种工具进行阻断和反击,还有就是确定打击点,以确保能“一击致命”。只不过这个武器不再是攻击性武器,而是防御性武器。

打击:在完成瞄准后,打击阶段就是要通过瞄准阶段确定的各种技术手段拦截阻断入侵者的通信控制,定点清除植入的恶意程序,封锁IP,或是采取访问控制措施 阻断其进入敏感区域等等。当然,在跟踪和瞄准阶段所获取的信息足够多的情况下,还可以进行反制,进行反向溯源或借助法律等途径进行“反向打击”。

评估:这个评估在军事上是“战损评估”的概念,在这里,我想应该是效果评估。在评估阶段,我们要对打击效果进行评估,一是要确认是否达到了预期的打击效 果,即我们的打击手段是否能保证完全截断攻击者的杀伤链。二是要总结经验,包括将对应的杀伤链场景进行分析建档并纳入相应的威胁情报库中,找到整个反杀伤 链运作中的不足之处加以优化补正。

对应杀伤链,反杀伤链一般在杀伤链的第三到第六阶段起作用。和弹道导弹防御系统一样,目前,反杀伤链的较高拦截成功率停留在第五、第六阶段。而第三、第四阶段的防御,也将成为之后的重点。

反杀伤链和杀伤链的对抗关系大致用下图来表述。

关于反杀伤链的思考 - 第2张 | Sec-UN 安全圈

要实现这个反杀伤链,还需要以下几个关键支持:

1、情报(Intelligence)

关于情报,NUKE同学等大牛已经讲过很多,我就不班门弄斧太多。

这里需要补充的是,在反杀伤链中,情报可以分为战略、战区、战术三个层次。

1)战略威胁情报。实际是一种威胁态势情报。我并不想把战略威胁情报上升到JP 1-02中定义的国家战略层面,而只想说针对于一个企业或一个行业而言的威胁态势情报。

这类情报包括两个层面,一个是企业或行业对自己的认知和评估,包括“我们有什么是别人想要的”,“它到底有多重要”,“我们能承受多达的损失”,以及“我们该投入多少资源去保护它”等等,这方面的情报来源包括风险评估、业务评估及企业高层决策。

二是带对威胁环境的评估,包括“盯着我们的对手有哪些人”,“他们对哪些目标感兴趣”,“他们拥有哪些可利用的手段”,“他们对攻击成本的接受程度如何”等等。这些情报源于大量的案例分析、威胁动态跟踪,以及对攻击者行为模式、攻击成本的分析研究等等。

换言之,在战略威胁情报层面,我们所获得的情报的最终目的是为了战略层面的安全决策,确定防护时的整体战略目标。因此,战略威胁情报是高度浓缩的情报精华,肯定是高水平的专家进行综合性人工分析的结果。

这一层面的威胁情报,就是威胁情报联盟、各类威胁情报平台、咨询公司们发挥所长的地方。

当然,扩展来看,商业竞争情报也算是此类情报的一种。

2)战区威胁情报。如果我们将一个公司或行业看作一个战略主体,那各个战区实际就是按业务、系统的细分。在战区威胁情报层面,威胁情报将更具体化、场景 化、可视化。我个人比较倾向在此层面借助杀伤链模型将各类威胁情报做成一个个场景列表,最终可以形成一个趋向全集的攻击生成树。当然,机器学习等最近很热 的威胁情报概念,大多在这一层面开始有了用武之地。

当然,在战区威胁情报层面,除已经发生的安全事件外,更应偏重于预防性的威胁场景构建。这也会给类似从事渗透测试、系统评估、代码审计等安全服务和安全众测厂商带来机会。

3)战术威胁情报。如果将战区威胁情报根据杀伤链做成场景化,那么战术威胁情报就是对每个杀伤链场景的情报分析,需要构建出单条杀伤链,分析攻击工具、攻击手法、攻击来源、攻击目标、威胁影响等的特征。

战术威胁情报可以认为是战区威胁情报的基础。可以说,在战术层面构建的杀伤链条数越多,整个威胁情报体系起的作用就越大。

2、监视(Surveillance)

与检测只关注攻击行为的发现所不同的是,监视的概念,是检测、追踪、定位的综合体,强调的是对攻击者行为的持续关注,为做出必杀一击(也就是狙击)做好准 备。借助有效的检测手段,发现攻击者的蛛丝马迹,再结合战术威胁情报中的杀伤链场景进行场景适应性匹配,结合日志分析、流量分析、工具逆向分析等手段,找 出攻击者的入口、跳板,追踪其所在位置和攻击路径,推断其攻击目的,再在杀伤链的关键节点进行狙击(阻断),切断整个杀伤链条,重创对手。这就是监视的作 用。

当然,提到监视,就必须考虑反杀伤链的“时间窗口”效应。对于小型企业或系统而言,杀伤链的时效性很短,此时的监视几乎等同于检测,强调一经发现立即阻 断。而对大型复杂网络而言,杀伤链普遍更长,监视的“时间窗口”也可以随着拉长。所以,监视的“时间窗口”受威胁场景的时敏性影响。

同时,监视的“时间窗口”还需要依托对杀伤链场景的构建,和狙击点(或者阻断点)的定义。防护者需要依靠经验,对发现的入侵行为进行初步分析和判断,确定 对此事的监视范围、时间。在条件允许的情况下,防护者可以借助监视活动尽可能地完善整个杀伤链场景,为高效率、致命的狙击做准备。但切忌因为监视,错失狙 击的时机,中间的度需要仔细衡量。

3、指挥、控制与协同(Command and Control and Combat,3C)

3C是整个反杀伤链最重要,也最难构建的组成部分,也是确保反杀伤链打击效果的前提。

目前,大型企业都有了自己的安全运营团队,例如各类SRC、SOC。但是,能具备真正有效的3C能力的并不多。核心的问题在于以下几点:

1)在指挥层面缺少高层的支持,无法具有足够的指挥权限,也就是缺少业务层面的配合,也没有功能足够强大的安全指挥决策支撑系统。国外军方已经有相应的理论研究基础,并在逐步发展此方面的能力,值得借鉴。

2)控制实际可以算是指挥系统中的一个模块,是确保指挥指令得到有效的具体执行的集中管控后台。这方面的问题存在于两点:一是人力方面,安全团队必须有足 够的人,技术覆盖面必须够全,并有一个有效的快速反应机制。二是技术系统层面,集中管控后台需要定制化,对应的安全系统要开放各种接口以接受、反馈各项管 控指令,也就是联动协同的概念。无法在技术层面实现联通协同,企业就必须以大量的人力来补缺,且往往吃力不讨好。

以上这些只是根据个人的兴趣写的,肯定还有问题,欢迎拍砖。

【via@谢涛