目前威胁情报的智能化应用才刚刚起步,还很初级,随着以STIX 2.1为代表的威胁情报规范的不断改进和更新,安全智能应用不断推出,狭隘理解为信息/消息的威胁情报的概念逐步泛化,人机协同的安全智能已经归来,基于威胁情报构建网络安全的自动化、智能化应用是未来核心竞争力的关键。

一 引言

2020年3月20日,STIX 2.1的Committee Specification 01版本发布,随即在STIX的官网上原有的STIX 2.0版本描述的示例和规范文档全面被STIX 2.1替换[1],作为威胁情报领域最好的元模型参考,STIX 2.1版本的推出在国内的安全领域并没有引起应有关注和重视。

近期对其进行系统的学习和整理,也形成了一些心得和想法,跟大家分享一下。

二 STIX各版本标准比较

伴随着的威胁情报的热度,最早的STIX 1.x推出引起了广泛的关注和研究,区别于当时的OpenIOC,STIX 1.x开创性的通过Campaign网络战役、ThreatActor威胁主体、TTP攻击手法、ExploitTarget攻击目标、Indicator威胁指标、Observable观测指标、Incident安全事件、Course of Action应对措施共八个元素和元素之间的关联来对威胁信息进行结构化和系统化的描述和表达,以XML的格式进行描述,便于威胁信息的管理、分析和共享,如下图所示。

国家标准《信息安全技术 网络安全威胁信息表达模型》也是参考STIX 1.x进行设计和构建。由于STIX 1.x的广泛传播性,迄今仍然有在很多网络安全分析材料中使用STIX 1.x进行威胁建模分析。

虽然STIX 1.x在威胁信息表达的结构化、系统化方面较之前有很大的改进,但是在部分概念的定义和关系的描述方面还不够准确,如TTP,字面意思Tactics, Techniques and Procedures,战术、技术和程序,可以理解为攻击手法,但是在具体的内容和关联关系的描述方面还不够清晰。同样的,在ThreatActor威胁主体和ExploitTarget攻击目标的描述方面也存在类似的问题。另外,元素之间的关联关系也描述的很模糊,如Observed TTP、Related TTP、Indicated TTP、Leveraged TTP等,只是粗糙的描述其它元素与TTP攻击手法之间的关系,并没有细致介绍具体是何种关系。

于是MITRE推出了STIX 2.0模型,STIX 2.0模型将威胁信息分为Attack Pattern攻击模式、Campaign攻击活动、Course of Action应对措施、Identity身份、Indicator威胁指标、Intrusion-Set入侵集合、Malware恶意软件、Observed-Data可观测数据、Report报告、Threat Actor威胁主体、Tool工具和Vulnerability脆弱性共12类域对象和Relationship关系、Sighting瞄准共2类关系对象,如下图所示。

从图中可以看到,STIX 2.0较STIX 1.x的变化可谓“天翻地覆”,除了将STIX 1.x中的元素进行拆分和细化外,如将TTP拆分为Attack Pattern攻击模式、Malware恶意软件和Tool工具;还新增了多个元素对象,如Observed-Data可观测数据是将CybOX[2]完全合并进STIX 2.0,Relationship关系对象则是将各域对象之间的关系单独抽取成一类对象进行描述和管理,而Sighting瞄准表示网络威胁情报元素(如威胁指标、恶意软件等)被看到的情况,即“使用反馈”。

另外,在内容描述方面增加了对JSON格式的支持。这些变化使得STIX 2.0变得更加实用、更加易于集成,表达能力也更加丰富,远远超过“威胁信息”的范畴。其系统化、丰富的元素对象描述和关联关系表达,甚至有厂商将STIX 2.0作为威胁知识图谱的基础,如绿盟在2019年绿盟科技技术嘉年华中介绍的知识图谱,也是基于STIX 2.0进行构建的,如下图所示:

而近期推出的STIX 2.1,则是对STIX 2.0的进一步补充和完善,主要变化的内容有:

(1)新补充了六个域对象:Grouping分组、Infrastructure基础设施、Location位置、Malware-Analysis恶意软件分析、Note注释、Opinion意见;

(2)在元对象中增加了:Language-Content语言内容;模式结构如下图所示:

(3)在所有的域对象描述中,增加了Confidence置信度的概念;

(4)补充和丰富了Indicator描述内容:增加了对stix、pcre、sigma、snort、suricate、yara等检测格式的支持;

(5)对Relationship关系对象的描述进一步细化和补充,增加了deliver、compromise、originates-from、communicates-with、based-on、located-at、consists-of、controls、authored-by等几十种关系描述,表达能力和实用性进一步增强;

(6)对Observed-Data可观测数据、Sighting瞄准等对象的描述进行了丰富和补充,增强表达能力。

目前官方还没有推出官方的逻辑结构图,由于对象之间的关系更加细致,笔者简化关系结构,绘制的逻辑结构图如下:

对版本的STIX进行粗粒度对比,如下表所示:

从STIX 1.0到STIX 2.0,再到STIX 2.1,可以看到STIX对威胁信息的结构化、系统化的表达和描述从无到有,从实用到智能的过程。慢慢发现,STIX描述的内容越来越丰富,已经远远超过当前行业理解的“检测情报”所能表达的范畴,甚至有点“看不懂”了。这其实就引出了本文重点讨论的,Threat Intelligence还是国内安全行业理解的威胁情报吗?

三 威胁情报的思考

先说一下根据目前行业现状得出的结论:国内对威胁情报的理解普遍狭隘、偏向字面意思、不够准确,导致现在的威胁情报应用主要集中在IP、域名、URL、Hash等的威胁检测,很初级!

做一个调研,你认为的威胁情报是什么?

为了更容易理解本文表达的观点,先看一条时间线:

(1)2013年,Mandiant发布APT1分析报告[4],

(2)2014年,Fireeye在RSAC上推出Threat Analytics安全平台[5],一炮走红,一度在CyberSecurity 500中排名第一;

(3)2015年,ISC大会中,360宣称“建成”国内首个威胁情报中心[6];

(4)2015-2017年,国内各大安全厂商都“宣称”自己在做威胁情报,威胁情报进入两到三年的“炒作期”,威胁情报的主要功能是“宣传”;

(5)2017年至今,大家慢慢静下心来做IOC类的威胁情报应用工作。

那Threat Intelligence真的只是大家普遍理解和宣传的信誉库、黑名单、API查询接口和Protal展示吗?

四 本质上是威胁智能

在说明对Threat Intelligence概念的理解之前,先来看一下这几个词汇。

首先是Business Intelligence,乍然一看,这不是商业情报的英文单词吗?其实不然,商业情报的英文是Commerical Intelligence/Information,侧重在信息(Information)内容方面;而Business Intelligence的意思是商业智能,即BI,指的是利用现代数据仓库技术、线上分析处理技术、数据挖掘和数据展现技术进行数据分析,以实现商业价值。

再看一个词,Artifical Intelligence,这个词大家都很熟悉,AI,人工智能。

那Threat Intelligence呢?RSA称为Threat Intelligence,IBM称为Security Intelligence,Gartner称为Security Threat Intelligence,根据Gartner的定义,Threat Intelligence指的是,针对一个已经存在或正在显露的威胁或危害资产的行为的、基于证据知识的、包含情境、机制、指征、影响和可行动建议的、用于帮助解决威胁或危害进行决策的知识。

按照这样的理解可以看到,2015年ISC大会以后,将Threat Intelligence粗暴理解为威胁信息(Information)/消息(Message),甚至更狭隘的认为只是IP、域名、URL、Hash等IOC信息是不准确的,虽然按照威胁情报/威胁信息的描述便于理解、传播和表达,但是画地为牢,狭义的理解和认知,导致现在国内的威胁情报应用和发展停滞不前;在一次沙龙活动中,涛哥分析指出国内的纯威胁情报应用市场不足一亿,与国外如火如荼的Security Intelligence应用探索天壤之别。

其实早在Threat Intelligence概念刚刚传到国内不久,大家都在讨论Threat Intelligence的中文翻译,可以看看将军的文章《今天最热门的安全技术之一~安全智能威胁交换》,当时对Threat Intelligence的理解更偏向于“智能”,而不是ISC 2015之后的“情报”。

再来看一下基于APT1报告引出的Threat Intelligence概念的过程,APT1报告中除了披露了APT1攻击和溯源过程外,还介绍了通过IOC披露实现跨部门的情报共享和快速威胁检测。看一下美国的情报共享组织结构,如下图[7]:

通过成立的NCCIC和CTIIC构建跨部门、跨地域的情报共享机制,实现对威胁的快速检测,达到的效果就是:针对不同部门试试攻击的时效性被大大压缩,在整个情报共享网络中,只要有一个节点遭受攻击并被识别,对攻击的关键信息通过IOC的方式进行共享,其它节点可以很快实现对攻击的快速检测和免疫,达到防御的效果。

在这个过程中,很多人理解的威胁情报只是关注到IOC信息,但是却忽略了保证IOC信息发挥效果的情报共享机制。如果对Threat Intelligence按照安全智能的概念来理解,情报共享是最基础的安全智能应用。

根据SANS 2020年度网络威胁情报调查报告[8]中介绍的威胁情报应用场景,主要有Threat detection威胁检测、Threat prevention威胁阻断、Threat response威胁响应和Threat mitigation威胁缓解。而目前国内对威胁情报的使用主要集中在威胁检测,威胁情报的智能化应用方兴未艾。

回过头来看一下STIX 2.1的变化,可以看到STIX 2.1对安全自动化、智能化的支持能力得到了较大的增强,初步显现“安全大脑”逻辑能力,依据如下:

(1)Confidence置信度概念的引入,机器可以根据该描述来决定是否采取相应的措施;

(2)Indicator中补充了对stix、pcre、sigma、snort、suricate、yara等检测格式的支持,更容易与相应的检测设备进行联动;

(3)引入Malware Analysis恶意软件分析对象,支持与沙箱分析、人工恶意软件分析进行联动;

(4)引入Grouping分组对象,支持分析调查过程数据(待确认的线索数据)的集成;

(5)引入Opinion意见对象,支持安全威胁分析过程中的多人多机协同分析;

(6)引入Note注释对象,支持自定义的威胁元素内容描述,避免当前考虑不周影响后续的演进和使用,进一步增强实用性和定制能力。

目前威胁情报的智能化应用才刚刚起步,还很初级,随着以STIX 2.1为代表的威胁情报规范的不断改进和更新,安全智能应用不断推出,狭隘理解为信息/消息的威胁情报的概念逐步泛化,人机协同的安全智能已经归来,基于威胁情报构建网络安全的自动化、智能化应用是未来核心竞争力的关键。

五 后记

在技术行业,只有对一个概念的充分认知,才能利用好它,进而推动整个行业的前进。而认知的差距往往是人和人之间最难跨越的鸿沟,正如燃机时代刚刚来临时,汽车的速度和豪华程度可能还不如马车,但后续对整个马车行业带来的碾压是摧枯拉朽拉朽的,对于企业更是。

参考资料

[1] STIX, Structured Threat Information eXpression, https://stixproject.github.io/.

[2] CybOX, Cyber Observable eXpression, https://cyboxproject.github.io/.

[3] 范敦球,威胁建模之知识图谱,绿盟科技技术嘉年华2019.

[4] Mandiant, APT1报告.

[5] SRXH, Fireeye在RSA 2014上发布Threat Analytics 安全平台.

[6] 2015中国互联网安全大会,https://isc.360.cn/2015/index.html.

[7] 金湘宇, 网络安全情报体系介绍.

[8] Robert M. Lee, 2020 SANS Cyber Threat Intelligence (CTI) Survey.

最后,小小的吸粉一波,关注公众号,欢迎随时交流和讨论!

声明:本文来自小强说,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。