基于开源信息平台的威胁情报挖掘综述
2022-03-04杨黎斌何清林王梦涵马建峰
崔 琳, 杨黎斌, 何清林, 王梦涵, 马建峰
1西北工业大学 网络空间安全学院 西安 中国 710129
2国家互联网应急中心 北京 中国 100029
3西安电子科技大学 网络与信息安全学院 西安 中国 710071
1 引言
随着万物互联的时代到来, 互联网由于其固有的多源异构, 泛在开放等特性, 使其在享受“云大物移智”等新型技术便利的同时, 其所面临的新生网络威胁也日趋复杂多变, 各种新型安全攻击事件频发。尤其是在大国博弈的背景下, “震网”、 “火焰”、“毒区”等高级可持续威胁(Advanced Persistent Threat, APT)攻击陆续出现, 当前网络空间的安全威胁问题日益严峻。根据 CNCERT的研究, 近年来我国逐渐成为各类网络攻击的重灾区, 而其中以APT和DDoS为代表的新型攻击所占的比重越来越大。表1列出了近年来的一些新型网络安全威胁类型。
表1 新生威胁及其特点 Table 1 Emerging threats and their characteristics
可以看出, 随着目标场景变化, 恶意攻击者将网络空间攻击的复杂性和影响力提升到前所未有的程度, 其攻击模式、数量与种类层出不穷。这些新型攻击充分利用了web、电子邮件、应用程序等多种传播方式, 且可在网络系统中相互渗透, 以捕获有价值的数据, 具有常态化、专业化、多矢量、多阶段等特性。由于新型攻击的这些特性, 加之攻击者的先手优势, 这也对现今网络空间的威胁防护提出了新的挑战。传统安全防御方法大多依靠部署于边界或特殊节点的防火墙、入侵检测系统等安全设备, 通过基于启发式和签名等静态检测方法, 将每个攻击向量视为一个单独路径进行分阶段独立检查, 而缺少全局视角, 难以应对攻击策划精妙、更新迭代频繁的新型网络威胁攻击。
针对网络空间所面临的新型安全威胁, 一个重要的防护手段是深度挖掘网络威胁的情报信息, 并将其引入至安全检测全周期中, 从而主动发现并防御恶意且极难检测的攻击行为。网络威胁情报(Cyber Threat Intelligence, CTI)挖掘技术通过收集、挖掘、识别实时网络威胁信息并将其转化为威胁情报。一般来说, 威胁情报是指可用于解决威胁或应对危害的知识, 包括威胁来源、攻击意图、攻击手法、攻击目标信息, 具有知识密度大、准确性高、关联性强等特点, 能够为安全分析的各个阶段提供有力的数据支撑, 并可针对多态、复杂的高智能威胁与攻击做出及时响应防御。
根据来源不同, 威胁情报一般可分为内部威胁情报和外部威胁情报, 如图1所示, 其中内部威胁情报一般来源于目标系统中的内部安全事件信息, 可通过入侵检测系统(IDS)等安全设备中的相关信息提纯获得。外部来源的威胁情报包括: (1) 商业威胁情报, 即安全厂商以产品形式出售或分享的商业威胁信息; (2) 开源威胁情报(Open Source Threat Intelligence, OSTI), 在公开平台中分享的开源威胁情报。近些年由于网络威胁攻击形式迭代更新频繁, 开源威胁情报突破了其他威胁情报形式来源少, 情报特征受限等不足, 以其快速灵活、性效比高、易于移植等特点, 吸引了政府、业界以及学界的广泛关注, 并作为网络防御的重要资源, 在众多实际情景中得到应用。
图1 威胁情报来源 Figure 1 The sources of threat intelligence
美国非常重视威胁情报, 从战略、法律、标准、防御体系、与私营部门的信息共享方面都制定了相对完善的机制[2]。美国也是最早在政府层面开展开源情报挖掘技术研究的国家, 并将其作为政府的常规情报搜集手段。当前美国已建立起了覆盖地方、企业、政府等多个层面的开源威胁情报挖掘体系, 重点着眼于开源威胁情报的挖掘技术研究及深度利用。欧洲网络与信息安全局于2019年建立了一个整合各方资源的统一开源威胁情报挖掘共享中心, 强调扩大网络威胁情报的收集范围, 包括来自相关学科的 事件信息, 并将这些数据的收集、存储和分析标准化。国家应急响应中心CNCERT以及国内各大知名安全公司如绿盟, 360等近年都陆续构建了国内顶尖的开源威胁情报平台, 能够实时采集整理网络开源威胁信息, 并拓展开源威胁情报的应用, 使其成为我国网络安全防御体系的关键组成部分, 贯穿于态势感知平台、下一代防火墙、入侵检测系统等众多的安全产品之中。近年来, 威胁情报市场发展势头良好, 其中威胁情报安全服务提供商的收入也在连年增长。但相较而言, 我国的威胁情报体系发展仍处于起步阶段, 虽然涌现了一批较为出色的威胁情报公司, 并在部分厂商的实际情景中开始落地应用。但总体来看, 其开发及应用主要集中于商业威胁情报, 对于开源威胁情报的关注相对较少, 同时缺乏有效、可靠的威胁情报的挖掘采集、质量评价手段, 其对应基于开源威胁情报的网络安全分析技术也较为落后, 没有形成情报挖掘分析、评价与利用为一体的威胁情报综合服务平台。尽管开源威胁情报已成为安全行业的研究及应用热点, 但仍然存在许多制约开源威胁情报产业链发展的关键问题尚待解决, 包括开源威胁情报挖掘关联、质量评价、落地应用等关键技术的研究。近年来, 学术界结合云计算、大数据等前沿技术对这些关键技术问题进行了深入研究探索。如图2所示, 学术研究热度连年上升反映出该领域已持续受到关注, 研究和分析已有的开源威胁情报研究概况, 对于进一步推进我国开源威胁情报挖掘分析工作的发展, 提高国家网络安全的整体防御能力, 具有重要的意义。
图2 2015—2020年基于开源信息平台开源威胁情报挖掘文献分布情况 Figure 2 The distribution of OSCTI mining documents based on open source information platform from 2015 to 2020
本文系统调研分析了近6年来主流安全类期刊和会议上关于开源威胁情报挖掘的文献工作, 统计分析了一百多篇文献的技术理论及应用场景, 总结了开源威胁情报挖掘及应用领域当前的研究成果并指出该领域的研究方向, 尝试为我国开源情报挖掘及应用领域进行梳理, 具体来说主要贡献包括3个方面:
(1) 深入分析了开源威胁情报挖掘的一百多篇相关文献, 系统梳理了开源威胁情报挖掘相关文献的技术理论以及在网络安全检测中的应用场景, 归纳总结出了开源威胁情报挖掘的一般流程框架模型;
(2) 首次从开源威胁情报采集与识别提取, 开源威胁情报融合评价和开源威胁情报关联分析等三个方面对开源威胁情报所面临的问题以及对应的研究现状进行了梳理总结, 并从技术应用场景, 所使用的技术及性能评估等方面对相关文献进行了详细解析;
(3) 分析了当前我国开源威胁情报挖掘及应用研究中的不足, 总结了面临的四大机遇与挑战, 并指出了未来的研究趋势与下一步研究方向。
2 开源威胁情报挖掘框架
根据《网络威胁情报权威指南》中给出的定义, 威胁情报是指对企业可能产生潜在或直接危害的信息集合。这些威胁信息经过搜集、分析、整理, 能帮助企业研判面临的威胁并做出正确应对, 以保护企业的关键资产。从开源情报的直观定义出发, 开源情报在挖掘并应用到关键资产保护时, 其安全应用场景可总结为图3所示, 已有绝大部分开源威胁情报挖掘的研究工作都可以纳入到该框架中。
图3 基于开源信息平台开源威胁情报挖掘框架 Figure 3 OSCTI mining framework based on open source information platform
开源威胁情报挖掘的整体框架自顶向下可归纳为开源威胁情报采集识别、融合评价和关联分析等三大关键研究子方向。其中各子方向功能介绍如下:
(1) 开源威胁情报采集识别
该研究子方向主要针对不同开源情报信息载体, 如技术博客、社区论坛、社交媒体和公开报告等, 利用动态爬虫与检测更新等方法, 获取威胁情报的基础信息; 由于开源信息平台其数据内容通常是文本表示形式, 开源情报信息获取时一般需要通过IOC(Indicator of Compromise)提取等技术手段, 将其转换成非标准化或OpenIOC(Open Indicator of Compromise), STIX(Structured Threat Information eXpression)等标准化开源威胁情报格式, 而后分别应用于质量评价阶段和应用检测阶段;
(2) 开源威胁情报融合评价
由于开源威胁情报来源的开放性, 使其挖掘得到的情报信息也具有多源异构性, 对应情报的质量及可信性也参差不齐, 这将阻碍开源威胁情报的存储和共享, 应用于安全场景检测时也可能引发漏报、误报等不可控问题。在实际应用时, 一般需要对多源异构的开源威胁情报信息进行融合评价处理。开源威胁情报融合评价主要是针对多源异构开源威胁情报基础数据进行整合、萃取和提炼, 并研究建立相关质量评价指标对开源威胁情报的质量及可信性进行评价, 为后续威胁情报和威胁攻击的关联挖掘提供输入线索;
(3) 开源威胁情报关联分析
这部分研究主要针对开源威胁情报的落地应用, 一般是综合运用Kill-Chain模型、钻石模型或异质信息网络等模型, 在不同应用场景中结合已有开源威胁情报与实时流量数据, 对威胁情报进行深度关联、碰撞、分析操作, 以发现一些潜在的攻击行为, 推理挖掘揭示出隐含的攻击链条等威胁信息等。以开源威胁情报为应用核心的关联分析研究工作在当前较为热门, 大致可分为网络狩猎、态势感知、恶意检测等三个应用场景, 在后续章节中将详细论述。
以上是开源威胁情报挖掘的一般流程框架模型, 涵盖了开源威胁情报挖掘中较为重要的研究方向, 具有一定的普适性和通用性。通过梳理该流程框架, 可帮助初涉此方向的研究者对开源威胁情报挖掘研究领域做整体把握, 也可辅助细分方向的研究者予以借鉴, 突破固有局限性, 解决现有研究的问题。在接下来论述中, 将按照此框架模型, 依次针对开源威胁情报采集与识别提取, 开源威胁情报融合评价和开源威胁情报关联分析三大研究子方向进行详细论述。
3 开源威胁情报采集与识别提取
传统的威胁情报采集与识别一般具有固定获取途径, 主要依赖从安全厂商过往的网络威胁攻击数据中提炼, 例如包括从企业内部网络、终端部署的检测设备或高交互蜜罐中产生的日志数据, 也有一大部分威胁情报来源于订阅的安全厂商、行业组织收集的威胁数据等。随着网络攻击的数量和复杂度迅速增加[3], 基于传统途径的内部威胁情报收集手段和方式[4-10]难以从根本解决威胁情报来源单一等不足。开源信息平台安全应用[11-17]发展和安全需求催生出的开源威胁情报自动获取和识别技术为解决传统威胁情报的固有弊端提供了行之有效的新路径。从技术方法来看, 现有开源威胁情报采集研究工作主要集中于研究设计自动化爬虫及解析技术, 从安全论坛和博客等平台获得非结构化语义文本数据。本节依据开源情报信息载体的不同, 将其划分为技术博客、社区论坛、社交媒体、公开报告、通用方法等五个开源威胁情报识别提取平台并依此筛选分析代表性的相关研究工作, 接下来, 针对这五个平台中开源威胁情报的识别提取研究工作进行分别阐述。
3.1 开源威胁情报采集
开源威胁情报采集是指从多个不同来源的开源数据选取目标开源信息(如目标博客网站内容)作为输入, 输出可被进一步处理的开源威胁情报基础信息。从近年国内外研究工作来看, 开源威胁情报的获取主要通过动态爬虫, 更新检测及话题检测等技术来实现。其中, 动态爬虫技术主要是将目标开源平台的信息动态完整抓取下来并存储。近些年来随着各大网站反爬虫机制不断加强, 开源威胁情报采集技术也在完善演进。文献[18]提出了一种基于卷积神经网络(Convolutional Neural Networks, CNN)的威胁情报自动识别模型。在该模型中, 利用爬虫技术从安全论坛和博客等平台获得非结构化语义文本数据, 并利用CNN框架实现了开源威胁情报的自动化判别提取。文献[19]提出了一种基于社交媒体数据的开源威胁情报自动提取和评估框架TIMiner。在该框架中, 利用爬虫技术从博客、黑客论坛帖子等不同社交媒体平台收集威胁相关数据, 并利用自然语言处理(Natural Language Processing, NLP)和CNN实现带域标签OSCTI提取。除上述研究成果, 另外有大量研究如文献[20-23]等将动态更新及话题检测应用至动态爬虫技术中, 以提高威胁情报的爬取准确率。这些研究工作大都先利用爬虫技术获取目标数据, 并结合话题检测技术过滤掉与IOC无关的非结构化信息内容, 在实际部署中还利用了动态检测更新技术实时跟踪目标内容源, 以保证爬取内容的及时性。这其中话题检测技术是开源情报信息采集的关键技术, 近年来较为常用的技术方法主要采用命名实体识别(Named Entity Recognition, NER)结合支持向量机(Support Vector Machine, SVM)、逻辑回归(Logistic Regression, LR)、随机森林(Random Forest, RF)等机器学习分类方法。
上述研究工作将开源威胁情报采集通过动态爬虫与检测更新以及话题检测流程技术实现, 为落地实现开源威胁情报采集应用提供了很多有益借鉴。开源威胁情报采集只是威胁情报挖掘的基础, 需要进一步展开标准化或非标准化开源威胁情报的识别提取, 拓展获取开源威胁情报后的应用维度。
3.2 开源威胁情报识别提取
开源威胁情报识别提取是开源威胁情报挖掘的核心工作之一, 主要以非结构化开源威胁情报基础信息数据作为输入, 输出是标准化或者非标准化开源威胁情报, 涵盖了IOC提取与威胁情报生成等技术环节。由于不同的开源信息平台中披露的开源威胁情报内容结构存在较大差异, 其对应的威胁情报识别提取方法也存在区别。接下来本节以不同开源威胁信息平台源为划分依据, 对开源威胁情报识别提取研究工作进行了归纳介绍。
3.2.1 技术博客
技术博客是面向广大较专业人员的技术问题、经验等分享交流学习平台。相较于社交媒体微博等, 其面向人群广度和内容传播时效较低, 但内容更为丰富且具有一定深度, 一般具有较强的专业性, 通常能够以更规范的形式为对象提供内容信息支撑。安全相关博客文章是开源威胁情报内容的重要载体之一, 其发布安全领域相关知识信息对预测现实世界漏洞利用、检测威胁、威胁预警等具有重要作用。针对安全相关的技术博客, 文献[24]提出了一种基于神经网络序列标记的端到端模型, 用于从网络安全技术文章中自动识别IOC。在该模型中, 运用自然语言处理的序列标记技术从网络安全技术文章中收集本地代码, 同时结合多路聚焦(Self-attention)技术以更好地从网络安全技术文章文本中收集出上下文信息。实验表明, 该模型在自动识别IOC时具有良好的性能, 显著优于其他模型。文献[21]设计实现了一种基于大规模现场数据处理模型, 用于从安全相关技术文章中自动提取IOC。该模型在自动提取IOC的同时还能将IOC关联至相应的活动阶段, 例如诱饵、开发、安装和指挥控制等阶段。通过实际大规模现场数据测试, 该系统在提取IOC和确定IOC活动阶段时均具有良好的性能。但不能以自动化方式记录IOC语义等信息, 因此安全人员需要手动提取和报告定性活动特征, 效率较低, 不具备普适性。文献[25]提出了一种自动从技术文章中提取OpenIOC格式开源威胁情报的技术iACE。在该研究工作中, 作者利用图挖掘技术分析IOC标记及该标记与其所在句子上下文的关系, 当标记间的语法连接与通常表达IOC的方式一致时, 则提取IOC生成描述指示符(例如, 恶意zip文件)和其上下文(例如, 从外部来源下载)的OpenIOC标记。该技术利用IOC相关文章的语义特征并配合捕获实体间关系的图挖掘技术来提升IOC提取的准确性, 相较同期其他IOC工具, 其在性能上有一定优势, 对IOC提取技术的演进具有相当影响力。以上研究文献针对从技术博客中安全技术文章上定向识别提取开源威胁情报, 在可处理的信息源内容形式上比较单一。文献[18]提出了一种基于卷积神经网络的模型, 能够从安全方向技术博客中的所有非结构化数据中自动识别开源威胁情报, 突破单一的安全技术文章内容形式。该模型利用网络爬虫技术获得非结构化语义文本数据, 对获取到的语义文本进行预处理并输入到单词嵌入模型中用于提取特征向量, 最后应用CNN分类模型来识别OSCTI实体。经验证该模型在多个核心指标上优于其他模型, 能够提高OSCTI来源的覆盖率和识别准确率等指标。但由于训练集相对较小, 该方法也存在召回率不高, 存在容易混淆某些术语的问题。文献[26]提出了另外一种利用深度学习方法从安全技术博客中提取STIX标准开源网络威胁情报的方法。在该方法中, 作者综合利用了NLP等一系列技术, 有助减少人工干预, 使网络安全专业人员更好地配置优化安全工具性能以最终提供最佳防御。
3.2.2 社区论坛
社区论坛是面向所有网民群体的交流平台, 虽然专业性不及技术博客, 但内容、主题、形式更为丰富且传播速度也更为快捷。其中, 暗网深网等黑客社区论坛为黑客等提供一个自由言论的交流平台, 其中可能经常涉及大量有价值的威胁情报信息。鉴于此, 来自佛罗里达大西洋大学的团队[27]首先提出了一种针对暗网信息内容的预处理概率模型, 能够识别并过滤错误配置的流量以提高暗网数据纯度, 有效提升开源威胁情报的获取及存储效率。来自美国亚利桑那州立大学的团队[28]又提出了一种从暗网和深网上的站点收集开源网络威胁情报的原型系统, 该系统能有效收集高质量的网络威胁警告, 这些威胁警告包括关于新开发的恶意软件和尚未在网络攻击中部署的漏洞的信息, 可帮助安全专家进行更好的威胁分析应对。来自挪威科技大学的团队[29]为帮助信息安全响应团队将其审查重点放在最具情报价值帖子上, 提出了一种利用监督机器学习算法对黑客论坛帖子进行分类的方法, 以快速筛选出黑客论坛中不同类型的高质量开源威胁情报。为提高开源情报识别精度, 该团队[30]又进一步提出了一种基于狄利克雷分配(Latent Dirichlet Allocation, LDA)的混合机器学习模型对情报信息内容的聚类效果进行改进。通过使用实际黑客论坛数据进行测试, 结果表明该方法可快速准确地提取相关可操作情报。上述四项研究工作有助于安全人员更具有针对性地高效从暗网深网中识别提取高质量开源威胁情报。不同于此, Zhang等人[22]认为IOC提取可认为是一个从旧威胁情报到新威胁情报的循环提纯过程, 并设计实现了一个从网络社区论坛中自动挖掘IOC信息的工具iMCircle。该工具可从搜索结果中主动提取特定威胁域作为后续检索输入, 并在检索过程中自动判定提取目标是否和输入指标保持一致, 以实现开源IOC的动态收集。
总体来看, 通过暗网、深网等社区论坛形式进行开源威胁情报挖掘是一种可行技术。但由于暗网等社区论坛用户交互的匿名性, 使其发布的情报信息质量上也存在较大的不确定性, 需要大量的后期质量评价及验证工作。
3.2.3 社交媒体
Twitter等社交媒体提供了一个庞大而多样的用户群, 是典型的开放信息内容自然聚合器之一, 且由于其依附于社交网络, 平台信息内容天然具有交互性高, 覆盖广泛, 时效性强等特性, 且能够汇集大量与网络安全相关的资源。基于社交媒体的这些特性, 近年有大量研究工作基于社交媒体平台进行威胁情报的识别提取研究。Ritter等人[31]通过实验证实了社交媒体是安全相关事件信息的宝贵资源, 同时, 他们提出了一种基于Twitter流的焦点事件提取方法来帮助安全分析师及时获取威胁新事件, 识别提取开源威胁情报。Sceller等人[16]提出了一个针对Twitter流的自我学习框架SONAR, 可用于实时检测、定位和分类Twitter中的网络安全事件, 有助于安全分析师快速识别提取开源威胁情报。来自里斯本大学的团队[32]提出了一种从Twitter获取信息的端到端模型。该模型使用卷积神经网络实现开源威胁信息接收处理和安全实体识别提取, 以帮助减少安全分析师自动化过滤大量不相关信息, 提高开源威胁情报识别提取效率。来自马里兰大学的团队[14]提出了一个从Twitter等社交媒体信息流中识别分析OSCTI的框架CyberTwitter, 以帮助安全分析师及时从实时更新的社交媒体信息中获得各种可能的开源威胁情报。在该框架中, 作者使用安全漏洞概念提取器(Security Vulnerability Concept Extractor, SVCE)来提取与安全漏洞相关的术语, 将提取的情报以资源描述框架[33](Resource Description Framework, RDF)三元组的形式存储在网络安全知识库中, 并使用语义Web规则语言(Semantic Web Rule Language, SWRL)规则来推理提取的情报。上述三项研究工作均能帮助安全人员在从社交媒体数据中识别提取开源威胁情报时避免冗杂的工作, 但在提取效率上存在缺陷。为了进一步提升开源威胁情报识别应用效率, Zhao等人[19]提出了一种基于社交媒体数据的新型带域标签的OSCTI自动提取和评估的框架TIMiner。该方法综合利用了词嵌入和句法依赖技术。该框架带域标签的分类OSCTI可以实现个性化共享, 使用户只关注他们自己领域中的威胁信息, 可减少无关信息对用户的干扰, 而使其专注于对与威胁最相关信息的分析, 有利于安全专家聚焦于特定领域不同威胁的演变趋势, 并抓住攻击防御的核心。总体来看, Twitter等社交媒体已成为开源威胁情报的重要来源, 但社交媒体中数据庞杂, 质量良莠不齐, 情报数据提纯、威胁事件发现技术等有助于提升开源威胁情报识别提取的效率。
3.2.4 公共报告
公共报告是指发布于网络平台中可被公开获取的涵盖安全、漏洞或威胁等主题的报告。公共报告通常由专业人员发布, 虽然时效性较差, 但在形式与内容上都具有很强的专业性, 直接或间接覆盖大量威胁情报信息。文献[34]利用各种NLP技术分析并研究了漏洞报告, 并开发了一种自动从互联网上收集物联网漏洞报告的工具IoTShield。作者利用该工具实际收集和分析了分布在博客、论坛和邮件列表中的7500多份安全报告。测试表明从公共漏洞报告中识别提取开源威胁情报具有一定指导价值。南京大学的Mu等人[35]认为现有安全漏洞报告普遍存在重要威胁信息覆盖率不高等不足, 提出利用开放平台中不同用户人群的报告来弥补公共漏洞报告中信息不足的缺陷。以上两个工作主要针对漏洞报告收集, 分析以及对信息弥合的方法进行研究, 有助于专业人员从公共漏洞报告中识别提取高质量开源威胁情报, 但上述研究未实现从公共漏洞报告中识别提取开源威胁情报的完整流程, 来自马里兰大学的团队[36]提出了一种从公共代码库(如GitHub[37]、GitLab[38]、bitbucket[39])报告的漏洞列表信息中直接挖掘关于开源项目和库的开源威胁情报的方法, 并对客户机上已安装软件的库和项目依赖关系进行跟踪。该方法能够在安全知识图中表示并存储开源威胁情报和软件依赖关系, 用于帮助安全分析师和开发人员在发现有关产品中使用的链接库和项目的任何开源威胁情报后, 从知识图中查询和接收警报。北卡罗来纳大学的团队[40]提出了一种从非结构化的威胁报告中挖掘开源威胁情报的方法TTPtrill。该方法利用NLP和信息检索(Information Retrieval, IR)等技术从非结构化的威胁报告中自动提取威胁动作并以STIX格式构建战术威胁情报(Tctics,Techniques& Procedures, TTP)。随后该团队[41]又提出了一种自动将非结构化威胁报告转换为结构化开源威胁情报的方法ActionMiner。该方法结合了NLP与信息论中的熵和互信息(Mutual Information, MI)度量这两种技术。相比仅使用斯坦福(Stanford)依赖解析器, ActionMiner方法在提取网络威胁行动时具有更高的精度和召回率。总体来看, 从公共报告中识别提取开源威胁情报已经成为开源威胁情报的主要来源之一。但公共报告通常存在信息不足的问题, 现有大部分研究还需要不断拓展新的技术方法, 用于提升从公共开源报告中挖掘高质量开源威胁情报的效率, 以帮助安全人员进行更及时的威胁防御。
3.2.5 通用方法
另外还有一些研究工作如文献[42-45]通过综合应用NLP、机器学习、数据挖掘等技术实现从非结构化信息中提取开源威胁情报。这些研究成果并没有针对区分某个特定开源威胁情报平台, 其技术方法具有一定的通用性Ramnani等人[42]提出了一种利用NLP技术和模式识别框架来自动提取开源威胁情报的方法。该方法综合运用了目标利用、话题跟踪及推荐等技术, 以STIX结构为基础建模, 实现了威胁情报的大规模提取。崇实大学的团队[43]提出了一种基于NLP、虚拟化结构和分布式处理技术的OSCTI提取分析系统。该系统还可使用所产生的数据作为输入值来递归地提取更多的数据。通过保存和管理提取数据之间的关系, 用以帮助安全人员使用这些数据来分析网络攻击。文献[44]提出了一种基于事件的OSCTI发现和分析智能框架, 在该框架中, 作者综合利用NLP、机器学习和数据挖掘等多种技术进行研究实现。后一年, 在文献[45]中, 作者提出了一种轻量级可扩展的在线框架IoCMiner, 用以自动从公共信息共享平台中提取IOC。在该框架中, 作者结合使用了图论、机器学习和文本挖掘等技术。总体来看, 上述研究中介绍的通用方法虽然具有较好的平台覆盖性, 但由于在开源情报信息识别处理时没有充分考虑各信息平台的特点, 其处理效率上还有待提高。
从上述分析可以看出, IOC提取是开源情报信息采集识别环节中最核心的研究要点, 主要研究从开源情报数据中提取威胁情报实体, 并根据安全含义, 完整其上下文和战略信息, 填补不一致带来的歧义等。IOC提取一般采用命名实体识别技术或其他人工智能处理技术, 如正则表达式匹配[40], SVM等, 针对预处理后的非结构文本信息进行遍历定位出IOC, 并应用机器挖掘技术获取目标实体关系, 最终根据实际需要进行标准化威胁情报格式输出。开源威胁情报采集及识别有助于提升情报信息的广度及厚度, 加快从漏洞发现到针对检测的防护周期, 可更好应用于威胁狩猎, 恶意检测等深度挖掘分析防护手段中。
3.3 总结与讨论
本节将开源威胁情报识别提取研究工作划分为技术博客, 社区论坛, 社交媒体, 公开报告, 通用方法五个平台, 并对这些平台的开源威胁情报识别提取工作进行详细对比分析, 如表2所示, 其中每一行代表一项研究工作, 第1列代表该项研究的主要提取平台; 第3列为该研究主要的技术应用场景; 第4列是为实现该研究所应用的技术方法; 第5列为性能评估; 第6列为通过总结优缺点对该项研究工作的评价。
表2 开源威胁情报识别提取相关文献分类总结对比 Table 2 Classification, summary and comparison of related research on OSCTI identification and extraction
续表
续表
续表
综合表2的对比分析可以看出, 已有开源威胁情报的获取及识别提取研究文献大多综合利用NLP、关系模型构建、机器学习等数据挖掘技术从技术博客、社区论坛, 社交媒体, 公开报告等开源信息平台中实现威胁情报信息提取, 本质上是基于数据挖掘的信息萃取。相较于BiLSTM+CRF等方法, 很多研究文献在实体识别时更倾向于选择易实现的正则表达式。在关系模型构建时, 多运用图, 甚至引入专属安全领域的网络安全本体UCO。而在机器学习分类时, 多选择算法简单, 鲁棒性强的SVM。神经网络由于具有自学习、联想存储功能与高速寻找优化解等优势, 可以预见其未来在针对开源威胁情报挖掘中的应用占比会进一步扩大。本节以上内容有助于研究学者和相关从业人员快速了解开源威胁情报的识别提取, 同时促进在未来的研究工作中根据性能和优缺点等更准确高效的选择适当的方法从对应平台和技术应用场景中识别提取开源威胁情报, 完成目标安全求解问题。研究开源威胁情报识别提取技术, 有利于解决传统威胁情报开发的局限, 扩充商业威胁情报的数据维度, 为深入理解威胁攻击提供更为广阔有效的路径。但与此同时, 开源威胁情报采集来源广泛混杂, 情报质量不一, 需要强化开源威胁情报融合评价的研究, 以提高开源威胁情报的质量与可信性。
4 开源威胁情报融合评价
高质量威胁情报一般具备时效性、准确性、完整性、丰富性、可操作性、场景相关性等特征。现有开源威胁情报大多呈多源异构性, 情报质量良莠不齐, 这也阻碍了开源威胁情报的存储和共享, 应用于实际场景检测时也可能引发漏报、误报等不可控问题。开源威胁情报的融合评价为甄选高质量的开源威胁情报提供了数据融合方法与质量评价机制, 可满足威胁检测等现实需求。本节从开源威胁情报数据融合和质量评价两个方向展开文献收集, 并重点依据质量评价的定性评价方法和定量评价方法进行文献甄选和分析。其中当前威胁情报的数据融合研究工作多采用针对开源威胁情报的基础信息数据, 运用多源异构情报的一致性分析[48]和去伪去重等粗粒度数据融合方法, 通过拓展情报信息维度等操作, 实现对分析研判后的开源威胁情报归一化封装输出。开源威胁情报的质量评价研究是针对开源威胁情报的可信性及可用性等指标进行评估, 一般包括定性评价方法和定量评价方法。接下来我们对开源威胁情报数据融合和质量评价研究工作进行具体论述。
4.1 开源威胁情报数据融合
开源威胁情报由于情报来源的开放性, 也导致其情报产出具有显著多源异构性, 该固有弊端也阻碍了开源威胁情报的存储、共享和应用。开源威胁情报的融合处理是情报能够有效利用的前提, 近年来众多学者也对该方向做了大量研究, 目前已有研究主要通过对多来源本体相同的开源威胁情报进行一致性分析、去伪去重及数据融合分析等操作进行改善。
4.1.1 一致性分析
一致性分析的重要技术是本体构建, 本体是同一领域内不同主体之间进行交流以及连通的语义基础[49], 本体由多个元素构成, 其形式化定义[50]如下:
其中,C是本体概念的集合(通常使用自然语言进行 描述);R是非上下文关系, 其中:relRCC→×定义了实际关系的映射;C HCC⊆×是上下文关系的集合, 定义本体的层次结构;v A是本体上公理的集合。其构建层次如图4。安全情报本体作为情报知识图谱构建的核心层次, 是将信息抽取得到的实体及其关系构建为知识网络, 实现数据向知识的转化以及知识与应用结合的过程, 同时利用本体中定义的约束与规则可为后续的质量评估、知识推理等过程提供基础[51]。本体构建、一般基于本体复用, 本体构建和本体匹配等[51]的实现。从网络安全研究的原理、需求、规范等抽象角度进行构建的本体被称为基于模式的知识本体, 而从现有数据的格式、内容、结构化程度出发构建的本体则区分为基于数据的知识本体。北京航空航天大学的团队将本体应用于开源威胁情报一致性分析中, 提出了一种用于描述多源异构开源威胁情报的基于本体的统一模型[52], 以促进开源威胁情报的共享与分析。同时, 他们还进一步提出了一种基于统一模型和开源情报收集工具IntelMQ的开源威胁情报集成框架。
图4 本体构建层次 Figure 4 Ontology construction level
4.1.2 去伪去重
开源威胁情报去伪去重是开源威胁情报挖掘时另外一个重要处理步骤, 主要使用维度扩展及挖掘分析等方法对情报数据进行提纯判定, 尽可能对基础情报信息进行增值。M. Adithya等人[53]认为安全的信息去冗技术可以降低分布式存储中的通信和容量开销, 并在这个以信息为导向的大社会中有巨大应用。他们的观点证实了数据去重对开源威胁情报系统的重要性。Edwards等人[54]就在一项美国专利中提出了开发一种可过滤、分类、消除重复数据、对数据项进行优先级排序的威胁情报系统的想法。Brown等人[55]认为开源威胁情报系统在使用前必须对开源情报数据进行去重等操作, 避免将新收集的情报数据直接关联到现有数据, 以避免增加安全运营人员的额外工作量。其中去重操作主要是利用快速匹配 算法从各种数据集中精准识别出匹配记录, 并将其从属性、关系或数据内容等维度上进行合并。作者同时也指出去重效果受到许多因素的影响, 包括数据质量、首字母缩略词和缩写词的不同用法或语言差异。
4.1.3 数据融合分析
开源威胁情报数据融合分析旨在通过运用机器学习等智能数据融合方法针对原始情报信息进行关联融合处理, 以获得具备时效性、准确性、完整性等特性的高质量威胁情报。目前学术界已产出一些威胁情报的数据融合分析成果。Modi等人[56]于2016年提出了一个自动开源威胁情报融合框架, 该框架由分析、收集、控制、数据和应用层面构成, 它可从不同情报来源提取开源威胁情报并利用聚类技术对内容相似的情报数据进行聚合关联, 最终输出形成统一格式的威胁情报。Azevedo等人[57]也提出了一种开源威胁情报关联融合的类似方法。该方法主要采用簇聚合技术, 可关联并聚合不同开源情报源中的相似IOC信息并将其汇集成簇从而得到提纯的开源威胁情报。文献[58]结合自然语言处理方法和智能分析技术, 设计实现了一种基于多源情报信息融合的高质量开源威胁情报生成工具。该工具综合运用一致性分析, 去伪去重等常见的粗粒度数据融合分析手段, 并结合了SVM、贝叶斯推断等高阶数据分析技术, 可针对威胁情报数据进行清洗、集成、整合处理。但其数据融合方法手段及关联应用效率还尚待进一步提升。综合来看, 现有基于开源威胁的数据融合研究大都还处于采用一致性分析、去伪去重等粗粒度阶段, 也有部分研究借鉴并应用了一些高阶数据融合方法, 但其处理效率还待提升。传统的数据融合分析技术, 如贝叶斯推理、卡尔曼过滤等基于概率的方法, D-S(Dempster-Shafer)理论等证据推理方法, 机器学习、智能聚合、模糊逻辑等基于知识的方法等[59-60]具有质量好、稳定性强、鲁棒性高等优势, 非常适用于大数据环境中时效性要求高的开源威胁情报数据融合处理, 可应用于新兴的综合性数据融合分析以实现开源威胁情报融合。另外, 未来可预见开源威胁情报数据将趋于更庞杂, 基于深度学习的数据融合方法[61]由于其在处理海量数据上的优势, 也将得到广泛应用。
4.2 开源威胁情报质量及可信性评价
开源威胁情报用于辅助支持决策或安全分析, 情报的可信及可用性将直接影响安全决策分析结果。对情报质量的筛选、评估显得尤为重要, 国内外研究学者已展开了广泛研究工作, 一般可分为定性评价方法和定量评价方法, 其中定量评价又包括特征指标提取, 指标自定义和应用图挖掘技术的方法。
4.2.1 定性评价方法
Bouwman等人[62]将若干情报供应商提供的商业情报与开源数据进行了对比, 发现商业情报和公开情报在情报内容方面几乎没有重叠, 并指出商业威胁情报质量存在覆盖率不足, 及时性欠缺等问题, 这也从侧面说明了开源威胁情报可作为商业情报的有效补充。与此同时, Bouwman还给出了一种商业威胁情报质量的定性评估方法, 主要利用了情报的场景相关性、丰富性、可操作性等特征。这些质量评价指标也可以作为开源威胁情报质量的有益借鉴。Alessandra等人[63]提出了一种面向开源网络威胁情报平台的定性质量评估方法。该方法首先根据5W3H(what, who, why, when, where, how, how much and how long)原则, 得出四个主要实体——威胁、时间、威胁参与者和防御, 并从威胁情报应用周期中抽取了一些通用的评价标准指标, 如收集阶段需要的通用格式, 分析阶段的数据模型和关系机制, 部署阶段所需要的情报数字签名格式等, 同时针对OSCTI平台, 还给出了一些额外标准, 如文件数量、质量以及许可证声明等。这些定性的评价标准或方法为提升开源威胁情报的可用性提供了有效途径。
4.2.2 定量评价方法
定性评价对于开源威胁情报的质量评价来说仍不精确, 因此有研究人员提出利用定量指标对开源威胁情报进行评价。
一些文献从开源威胁情报的特点出发, 提取多个特征作为评价依据。文献[64]基于Lucassen等人提出的信息可信度3S(Semantic, Surface, and Source features)模型和情报共享的多源协作, 提出了开源威胁情报可信度多维度的分析方法。3S模型指出信息特征和用户特征可共同作用来判断信息可信度, 其中信息特征有语义内容、表面特征和源特征等, 用户特征包括用户自身的领域知识和技能及相关经验。通过对此模型进一步深化扩展, 作者从时间、内容和领域知识三个维度提取了情报源的权威度、可验证情报源数等16个客观定量可信特征, 并提出基于DBN(Deep Belief Network)的情报可信判别算法, 分析挖掘情报间不同维度下可信评价的关联关系。文献[64]还进一步总结得出, 开源威胁情报本身具有时效性。从时间维度看, 情报发布时间距离当前时间越近, 及时性越强, 其可信度就越高, 对预测当前企业、设备的威胁态势越有利; 从情报内容维度看, 开源威胁情报内容的文本格式和数据形式的机器可读性以及是否符合STIX或OpenIOC等标准, 可以反映情报的可用性和通用性。各个情报内容的相似度、贡献度可以反映情报的原创性、完整性; 从领域知识维度看, 开源威胁情报必须对威胁有定制化的全面分析, 包含大概率会出现的情境, 能够从海量情报中筛选出真正相关的情报, 尽可能地分析攻击的所有态势。在此基础上, 文献[65]分别从情报来源、情报内容、活跃周期、黑名单库匹配程度4个维度提取特征作为评估情报质量的依据, 设计了一套基于深度神经网络算法和Softmax分类器的情报质量评价模型。从情报来源维度看, 开源威胁情报的来源或载体的可信度在很大程度上可以直接反映该情报的可信程度。
另外有些学者提出了一些自定义的定量情报评价标准。Vector 等人[66]定义的度量标准包括数量、差异贡献、排他贡献、相对延迟、准确性(误报率)、覆盖范围。Thomas等人[67]将开源情报的应用周期视为一个封闭系统, 对威胁情报的扩展性、保持性、误报率、可验证性、互用性、兼容性、相似性、时效性、完整性等10个定量参数进行了定义与推导, 采用加权平均模型, 使每个实体能够根据自己的需求和优先次序对参数进行调整, 并可通过应用结果对情报源质量的信任程度进行动态反馈调整。Schlette等人[68]将威胁情报的评价维度划分为三个层次: 属性级、对象级、报告级。通过加权平均各个维度的聚合质量指标, 形成一个可量化的威胁情报质量评估体系。在该体系中, 每个定量维度的权重可调整, 且必要时可将人工OSCTI分析人员纳入质量评估体系。Griffioen等人[69]提出了四种类型的威胁情报质量评价指标: 及时性、敏感性、原创性和影响力, 并基于这四种类型评价指标, 引入了一种改进分类方法对威胁情报实现定量评估。文献[70]则认为开源威胁情报本质是为用户提供检测服务, 提出了一种基于用户视角建立对应的定量指标体系, 对开源威胁情报服务进行评估的方法。该方法将威胁情报视为一种特殊服务, 其质量评价包括价格、功能、性能和质量、服务、资格等五个维度, 且基于人们更容易相信绝大多数人给出的信息真实性的假设, 提出基于多数威胁情报使用者的意见和评价来衡量情报的可信度。该方法可根据用户反馈来动态调整各检测项目的权重和得分, 以获得更为精确的情报质量评价结果。由于开源威胁情报在共享及应用时存在部分用户的“搭便车”行为。针对这一问题, Omar等人[71]提出情报质量指数(Quality of Indicators, QoI)的概念, 用于评估开源威胁情报共享参与者的贡献水平。QoI评估方法涉及的指标包括正确性、相关性、实用性和唯一性, 采用基准方法定义, 并利用机器学习算法进行质量评价。
利用图可直观有效地表达推断出各实体间的关系, 因此一些学者也提出应用图挖掘技术来进行情报评价方法研究。文献[72]首先提出从图挖掘的角度自动评估异构开源威胁情报的可信水平, 创新性地构建了异构开源威胁情报图, 并从源、内容、时间和反馈的多维角度提出了一种基于图挖掘的情报特征提取方法, 结合随机森林算法训练分类器, 为大规模异构开源威胁情报提供了一种自动可解释的可信评估方法。Roland 等人[73]提出了一种OSCTI源排序方法FeedRank, 其核心思想即用相关图模拟feed之间的时间与空间关联, 根据内容的原创性和其他源对其引用的程度对源进行排名。此方法还会对每个OSCTIF(OSCTI Feed)的贡献度进行量化分析。文献[74]提出了一种基于知识表示算法TransE模型和循环神经网络RNN模型的情报数据的可信评估模型。该方法利用了知识图谱在链接关系检索、关系存储等方面的优势, 构建了一个情报知识图谱, 并综合运用TransE和循环神经网络RNN模型对情报数据进行可信评价。
4.3 总结与讨论
本节总结论述了开源威胁情报的数据融合, 质量及可信性评价相关研究工作, 将质量及可信性评价相关研究工作划分为定性评价和定量评价两个方向, 并对依这两个方向收集甄选的开源威胁情报质量及可信性评价相关研究工作进行详细比较, 如表3所示, 其中每一行代表一项研究工作, 第1列代表不同的研究方向; 第3列为主要的技术应用场景; 第4列为实现该项研究所应用的技术方法, 主要从数学模型以及评价技术两个方向进行归纳分析; 第5列为性能评估; 第6列为通过总结优缺点对该项研究工作的评价。
综合表3中的分析比较, 可以看出, 机器学习神经网络等作为一种有效的分类工具, 已经被大量应用至开源威胁情报质量的定性评价中, 如文献[64-65]在多维度提取特征指标并都应用了机器学习中的神经网络模型; 而在定量评价中由于涉及各个指标的权重考量问题, 加权平均模型是更为常用的手段,因此文献[68,70], 在针对情报的评估中, 都主要应用了加权平均数学模型对情报质量进行了量化评估; 有向图或知识图谱等技术可以充分挖掘情报之间的联系, 近年作为一种较为新颖的情报质量度量方法也受到广大学者关注, 例如文献[72-74]都利用了图挖掘方法, 其中文献[72-73]引入了有向图和PageRank算法, 而文献[74]则应用了知识图谱进行评估建模。以上对开源威胁情报的融合评价分析可以帮助相关研究人员和从业者展开源威胁情报质量融合与评价技术的研究, 并以此为基础提出一种综合的开源威胁情报质量定量评估方法, 可大大减少对开源威胁情报质量评价及可信度打分所需的人力, 为组织筛选出高质量、准确可信的威胁情报提供帮助。
表3 开源威胁情报质量及可信性评价相关研究分类总结对比 Table 3 Classification, summary and comparison of related research on OSCTI quality and credibility evaluation
续表
5 开源威胁情报关联分析
开源威胁情报关联分析是指综合运用Kill- Chain、钻石或异构信息网络等模型, 结合开源威胁情报信息, 对实时攻击流量数据进行深度关联、碰撞、分析等操作, 以期发现一些潜在的攻击行为, 进而推理挖掘揭示出隐含的攻击链条等高价值威胁信息。以开源威胁情报为应用核心的关联分析是当前开源威胁情报挖掘中的热点研究方向, 根据情报利用方式的不同, 可大致分为网络狩猎, 态势感知恶意检测三个应用场景, 本节依据这三个应用场景分别搜集并选取分析代表性的相关文献共计近30篇。其中威胁狩猎一般采用威胁情报驱动的检测方法, 针对网络流量数据进行主动搜索, 从而检测出可能逃避现有安全防御措施的威胁目标。网络狩猎涉及图计算、模式匹配、领域特定语言等技术理论; 态势感知是以威胁情报大数据为基础, 从全局视角出发, 提升对安全威胁的发现识别, 理解分析、响应处置能力。由于涉及和恶意攻击行为的策略博弈, 因此在利用威胁情报进行态势感知分析时, 近期有较多文献引入了博弈理论来分析安全态势的发展。开源威胁情报的恶意检测则是指挖掘检测任何恶意侵害目标系统相关资产的代码或程序等。利用开源威胁情报辅助恶意检测有助于更快发现实体威胁目标。常见方法是从开源威胁情报中提取相关检测知识, 并与恶意软件的静态、动态特征数据进行关联, 构建网络安全知识图谱(Cybersecurity Knoweledge Graph, CKG)来挖掘恶意软件行为。接下来我们以网络狩猎, 态势感知和恶意检测这三个应用场景, 对开源威胁情报关联分析研究工作进行具体论述。
5.1 开源威胁情报网络狩猎
威胁狩猎[75]一般是采用人工分析和机器辅助的方法, 针对网络和数据进行主动和反复的搜索, 从而筛选出可能逃避现有安全防御措施的威胁攻击。与传统检测方式相比, 网络狩猎拓展了威胁检测方式, 可充分利用第三方威胁情报信息来提升对新型威胁的检测能力, 具有明确的目的性, 包括缩减威胁目标的狩猎范围, 显著减少威胁检测时间, 搜索发现未知威胁等。
如何获取准确、及时用多样化的威胁情报来提供大量辅助上下文检测信息是保证威胁狩猎成功的关键。现有网络狩猎技术需要大量的人工查询构建工作, 而忽略了OSCTI提供的关于威胁行为丰富外部知识。近年基于开源威胁情报的网络狩猎研究成果表明, 开源威胁情报可应用支撑威胁行为狩猎。文献[76]中提出了一种在计算机系统中使用OSCTI搜索网络威胁的系统EFFHUNTER。在该系统中, 作者实现了一个无监督、轻量级和精确的NLP管道, 用于从非结构化OSCTI文本中提取结构化威胁行为, 同时作者为该系统匹配一个简洁而富于表现力的特定领域查询语言TBQL, 用于搜索恶意系统活动, 提升猎捕效率。文献[15]提出了一种自动识别黑客论坛、IRC频道和Cardingshop内潜在威胁的方法。该方法允许从收集的所有黑客内容中提取潜在威胁, 并通过将机器学习方法与信息检索技术相结合来识别系统中的潜在网络威胁。文献[77]设计实现了一种针对多个暗网数据源的OSCTI识别提取工具, 通过结合数据流量检测技术, 可实现威胁情报的快速集成、跨多个数据集的目标分析及威胁关联检测等操作。如何将威胁情报落地于旁路流量检测, 系统日志检测或主机行为检测产品中是威胁狩猎应用的难点问题。张等人[78]提出了一种新威胁情报平台MANTIS用以帮助安全分析师识别潜在威胁。该平台中运用基于属性图的相似性算法将不同的威胁数据形式统一表示。这种统一表示可方便安全分析师将不相关的攻击活动关联起来, 从而识别出可能的安全威胁。文献[79]将网络威胁搜索表述为图挖掘问题, 并提出了一个基于OSCTI检测的网络威胁狩猎系统Poirot。该系统依托图挖掘关联技术, 将威胁情报和网络原始日志、终端日志、告警日志进行关联分析, 既可从攻击者视角完整揭示网络攻击活动的战术攻击路径, 也能从被控主机视角完整描绘被控主机网络行为, 呈现出威胁全貌。Kim等人[80]提出了一种OSCTI收集管理框架CyTIME, 可在无需人工干预的情况下自动生成入侵检测系统和恶意软件防御系统的安全规则, 用于实时识别新网络安全威胁。该工具能够高效自动为每个用户生成和存储安全规则。
除了上述对威胁进行识别搜索, 文献[81]提出了一种基于开源威胁情报数据进行实时识别威胁主题的方法。该方法能够在威胁检测平台边界中检测失陷主机, 同时增强流量的检测覆盖度。文献[82]提出了一个用于OSCTI建模和威胁类型识别的实用系统HinCT。该系统设计一个威胁情报元模式来描述基础设施节点的语义关联, 进而在异质信息网络上构建网络威胁情报模型, 将各类节点关系的信息进行高级语义的集成。作者通过设计一种基于权重学习的元路径和元图的威胁基础设施相似度度量方法, 结合异质图卷积网络算法融合节点属性和基于元路径和元图的相似邻接关系, 从而识别基础设施节点的威胁标签。文献[83]认为对恶意资产的把握有助于威胁识别搜索, 进而提出了一种基于开源威胁情报的黑客社区恶意资产分析工具, 并运用深度学习算法及自学习检测模型对可能的内网渗透攻击进行主动搜索识别。文献[84]将主动威胁发现工作建模为图形计算问题, 通过运用威胁情报知识图谱技术实现了威胁事件的线索提取。该方法实现了一套自动证据挖掘和交互式数据检查的编程工具, 可用于以威胁情报数据为驱动的安全检测。
5.2 开源威胁情报态势感知
态势感知是以大数据分析为基础, 实现对安全威胁的发现识别、理解分析、响应处置, 从而完成对系统安全威胁的全局视角把控。一般来说, 为尽可能从整体上动态掌握网络安全全局状况, 安全防御者需要尽可能引入外部信息来帮助其应对日趋复杂多变的新型网络威胁。开源威胁情报是一种基于环境的情报信息, 对于特定安全威胁具有靶向性。合理运用开源情报信息, 有利于快速感知发现网络威胁。基于这种认识, Husari等人[85]提出了一种利用开源情报信息来感知探测APT攻击方法。该方法主要是利用博客、电子邮件和社交媒体等非结构化信息来提取并构建TTP链。具体来说, 作者利用NLP方法将非结构化的开源情报信息解构成标准STIX2格式的威胁情报, 结合机器学习方法解析推断出整个APT攻击的时间关系, 并通过流行的ATT&CK框架将情报内容翻译成可解释的TTP链, 可用于网络威胁态势的监测。上海大学的李等人[86]针对攻击链模型进行了仔细研究, 提出了一种基于DNS流量和开源威胁情报系统的APT探测模型。在该模型中, 作者以DNS流量作为APT整体检测的原始数据, 利用开源威胁情报信息测算整个系统DNS域名的风险值。国家互联网应急中心的温等人[87]提出了一种探测和预测APT攻击的方法。该方法综合运用情报收集、网络安全监控、基于知识的推理等手段对网络整体态势进行把握。实际测验表明该方法能够准确高效检测和预测APT。总体来看, 现有利用开源威胁情报进行APT探测的研究工作中, 一个共性方法是利用博客、电子邮件和社交媒体等开源威胁情报信息来学习生成APT攻击链, 即各威胁动作的时序关系, 并基于此建立TTP模型来实现对APT攻击的快速感知和发现。
态势感知应用于系统安全防护时一般需要和具体业务流程结合, 而将开源威胁情报整合运用, 有利于改善业务流程的整体安全态势。Gschwandtner等人[88]提出了一个在现有信息安全管理系统(Information Security Management, ISM)中集成OSCTI的框架, 以帮助组织增强其信息安全管理能力。该框架能使安全专业人员规划、集成和管理OSCTI内容, 同时辅助增强企业安全预算管理和企业网络弹性。一些新型网络攻击逐步瞄准关键基础设施中的工业控制系统。由于现有工控系统大都由各种PLC控制系统、网络系统及云系统混杂构成, 如何设计安全架构, 监控识别攻击, 实施动态威胁感知防御成为一个难点问题。南威尔士大学的团队[89]提出了一种基于Beta混合隐马尔可夫机制(Hybrid Hidden Markov Mechanism, MHMM)的新开源威胁情报态势感知架构用以监视识别来自工业4.0的网络威胁攻击。在该方案中, 作者对混杂物理和网络系 统的工业4.0组件进行动态交互建模以实现监视识别功能。该机制在现实世界工业4.0系统中具有良好的适用性。
现有大部分利用开源威胁情报进行安全态势感知的研究工作, 都假设攻击及防御都为单次静态的, 并且威胁攻击总是出现在防御之前。而从现实情况来看, 随着攻防两端不断更新攻击及防御策略, 网络安全态势一直在处于此消彼长的动态变化中。博弈论结合开源威胁情报近年也被引入至威胁态势感知研究工作中。为帮助理解网络安全态势变化的趋势, 文献[90]提出了一种云计算环境下利用随机博弈和开源威胁情报的网络安全态势感知方法, 该方法利用博弈双方的效用来量化网络安全态势, 并探寻了该博弈模型的Nash均衡状态。文献[91]提出了一种基于开源威胁情报的网络攻击预测方法, 该方法基于攻击者和防御者之间的博弈关系, 结合高质量开源威胁情报中的上下文数据和攻防混合策略Nash均衡来预测攻击行为。文献[92]收集包含攻击媒介的大型国际黑客论坛, 使用深度学习文本分类来探测新兴的恶意移动软件变化趋势。该研究框架可以应用于探测其他黑客论坛资产, 以确定与用户相关的领域中的恶意软件趋势和主要传播者。文献[93]则充分利用来自经验测量的真实开源网络威胁情报, 并以轻耦合方式整合至业务系统。通过运用威胁情报, 业务系统可将网络和物理环境联合起来, 结合博弈策略来预测、推断和归因有形的计算机程序产品攻击, 以提升业务产品的安全性。文献[94]提出了一种基于开源威胁情报的社交物联网(Social Internet of Things, SIoT)账户恶意行为预测方法。该方法利用支持向量机获取与目标账户恶意行为相关的开源威胁情报, 分析开源威胁情报中的上下文数据关系来预测恶意账户的行为, 并探究了最终可能的平衡状态。在这些研究工作中, 开源威胁情报作为防御方的动作策略集, 是其预测潜在攻击行为的重要基础。而另一方面, 由于社交媒体、博客和黑暗网络漏洞市场等情报的多种语言特点, 阻碍了威胁情报的解析及预测效率。为更好利用开源信息进行网络态势感知, Ranade等人[95]提出了一种基于神经网络的开源情报跨语言翻译系统。该系统使用多语言威胁情报系统来协调不同语言的网络术语表示, 帮助安全分析师及时理解并抓住多语言威胁情报中的关键信息, 从而扩展至全球范围内安全监控, 威胁预测感知能力。
5.3 开源威胁情报恶意检测
随着网络攻击中可利用的恶意工具或软件越来越趋于常态化, 传统的基于异常和基于签名等的检测技术已经难以保证其检测时效性。开源威胁情报恶意检测旨在利用开源情报信息挖掘检测可能对目标资产造成损害的攻击对象, 包括恶意软件、恶意URL等。近年来国内外研究学者针对该方向也展开了大量的研究工作。Gandotra等人[96]设计实现了一个可帮助安全人员分析、识别和预测恶意软件并进行早期预警的框架(Early Warning System, EWS)。通过该框架生成的威胁情报可以与安全机构共享, 以便安全人员发布建议和预防措施来应对未来的恶意软件威胁。在恶意软件识别中, 针对恶意软件进行甄别分类有利于更好了解恶意软件感染方式及威胁级别。胡等人[97]提出了一种基于开源威胁情报的恶意软件机器学习分类器。该方法通过开源情报信息来提取恶意软件中的多方面内容特征, 如指令序列及字符串等, 能够高效完成恶意软件检测分类。Piplai等人[98]提出了一种开源威胁情报结合网络安全知识图谱进行恶意软件检测的方法。该方法的主要思路是将开源威胁情报中提取的知识与沙箱中捕获的恶意软件行为数据构建知识图谱, 并运用图挖掘技术来推断识别恶意软件行为。在恶意软件的识别检测中, 恶意对象的特征提取是其关键步骤。一个准确且具有良好表征意义的特征可有效提升检测效率。应用开源威胁情报对于准确提取恶意软件特征有良好的借鉴作用。来自美国马里兰大学的团队[99]提出了一种端到端特征集自动生成方法FeatureSmith, 用以从安全会议发表的论文内容中自动提取用于训练机器学习分类检测器的特征集。该团队还利用FeatureSmith自动生成了一个用于检测恶意软件的特征集, 可集成到已有安全系统中为恶意软件检测提供便利。
恶意URL也是一种典型的恶意攻击载体, 当前主流的防御方法主要依靠黑名单机制, 其准确性及灵活性较差。引入机器学习方法来优化恶意URL检测是常见的解决方法, 但也存在由于URL的短文本特性所导致的特征单一等不足。中国科学院大学的汪鑫等人[100]提出了一种将开源威胁情报与URL检测相结合的思路, 并实现了一个基于开源威胁情报平台的恶意URL检测系统。该系统从开源情报信息源中提取出URL字符串的结构特征、情报特征和敏感词特征等三类特征, 辅以训练分类器, 并引入多分类器投票机制来提升分类精度。跨站脚本XSS攻击作为恶意URL的一种典型威胁, 传统检测方式一般依靠静态分析和动态分析。文献[101]提出了一种基于贝叶斯网络域内知识和开源威胁情报集成学习的XSS攻击检测方法。在该文中, 作者收集了大量开源威胁情报信息, 并用其生成模拟真实环境的XSS攻击检测数据集。实际实验表明, 该数据集可有效模拟真实场景。
恶意攻击会对数据安全、资产系统造成严重危害, 而攻击现场往往蕴含着有关攻击方的丰富信息。可采取数字取证分析得到恶意攻击来源、模式以及攻击方的画像, 以帮助改进系统后续防御效能。鉴于现阶段系统数据流量巨大, 攻击技术日趋复杂, 这些特性都给安全事故现场的数字取证带来困难。数字取证结合威胁情报信息有利于安全事件的调查取证和快速溯源。基于这种认识, Serketzis等人[102]利用可操作的OSCTI基于已有的数字取证准备(Digital Forensic Readiness, DFR)模型开发扩展的轻量级DFR模型, 旨在实现快速有效的数据分类, 使响应者或取证分析师能够快速过滤掉与系统危害无关的数据类, 显著提高通过针对恶意活动模式的数字取证效率。为增强现有DFR方案的有效性, Serketzis等人[103]又结合数字取证技术, 定量运用开源威胁情报数据来识别高取证价值信息, 以此用于快速分类和识别恶意软件的攻击模式。
5.4 总结与对比
本节具体介绍了开源情报关联分析的网络狩猎、态势感知和恶意检测三个重要应用方向, 阐述了依这三个关联分析应用方向搜集选取的代表性研究工作, 并对这三个关键应用方向中研究工作进行详细比较分析, 如下表4所示, 表中每一行代表一项研究工作, 第1列代表相关开源威胁情报联合分析研究被分类的三个主要方向; 第3列为每个研究工作的具体技术应用场景; 第4列为该项研究为实现任务所应用的具体技术方法, 主要从数据处理, 关系模型构建, 检测方法以及数据存储方向进行归纳分析; 第5列为性能评估; 第6列为通过总结优缺点对该项研究工作的评价。
综合表4的对比分析可以看出, 开源威胁情报关联应用的研究文献综合利用了机器学习、NLP、数据库等技术方法, 涵盖网络狩猎、态势感知、恶意检测等极为普遍的安全领域交互应用场景。从应用角度来看, 网络狩猎侧重于针对未知、新式、变异等攻击威胁的搜寻检测; 态势感知更关注于提升对全局威胁形势把握的技术手段的研究, 包括整体决策, 威胁分类, 攻击预测等。恶意检测则是针对可能对目标资产造成实质侵害的恶意对象实体, 如恶意软件、URL和活动等。从技术实现角度来看, 相较网络狩猎以及恶意检测关联分析, 开源威胁情报态势感知分析更多的应用了深度学习技术来进行全局威胁情势把握与预测。本章节梳理工作可帮助研究学者和从业者了解主流开源威胁情报的关联应用场景与方法, 快速确定研究方向或为已有安全问题提供解决思路。随着针对关键基础设施的威胁攻击日趋复杂, 开源威胁情报在威胁关联分析中将占据更加重要的比重, 亟需在已有基础上投入更多的人力物力精细化深入拓展开源威胁情报关联应用。
表4 开源威胁情报联合分析相关研究分类总结对比 Table 4 Classification, summary and comparison of related research on OSCTI joint analysis
续表
6 总结与展望
开源威胁情报具有种类多样、内容丰富、快速灵活等特点, 可作为直接或潜在安全威胁的外部鉴定信息资源, 有效提高网络攻击的检测识别与响应处理能力。本文聚焦于开源威胁情报挖掘应用技术, 系统梳理分析了近年来开源威胁情报挖掘相关工作的研究现状, 归纳总结出了开源威胁情报挖掘的一般流程框架模型, 并针对开源威胁情报识别提取, 开源威胁情报融合评价以及开源威胁情报关联应用三个关键场景进行了系统评述和优劣势分析。通过归纳总结分析现有研究成果, 本文发现开源威胁情报挖掘无论从信息源的拓展, 数据质量评价还是在安全防御中的应用价值, 都呈现快速发展的趋势, 但也存在一些局限性。现有这些局限问题的存在为未来开源威胁情报的发展提供了机遇和挑战。结合近几年的研究热点, 目前开源威胁情报挖掘研究工作的局限性及其发展趋势主要表现在以下几个方面:
(1) 面向学术研究的统一信息模型和框架
现有开源威胁情报挖掘研究主要局限于某个特定开源社区或者某个特定的社交平台, 其研究方法主要是按研究对象的不同进行具体区分, 学术角度看尚未形成具有明晰脉络的技术体系, 缺少从全局和共性的角度去考虑开源情报数据的信息模型及其挖掘问题的基础性研究工作。这种情况不利于该领域相似研究工作的继承、借鉴和比较, 也不利于该领域的长期发展和积累。从已有开源情报挖掘相关工作分析中不难看出, 很多开源情报挖掘问题都可通过应用命名实体识别技术或其他人工智能技术, 如正则表达式匹配, BiLSTM+CRF等来进行实现, 不同的开源情报平台, 如社交网络、技术博客或研究报告等都完全可以共享同一个信息模型和基础算法。如何构建形成面向学术研究的统一信息模型和框架是一个重要问题。
(2) 面向数据投毒的情报应用风险评估
由于开源信息平台其固有的开放多源性, 使其威胁情报质量很容易受到错误信息干扰。例如攻击者可采用人工智能和机器学习等技术, 针对数据训练过程中的漏洞, 往目标训练数据集中注入“中毒数据”, 从而生成虚假威胁情报, 甚至迫使模型学习错误的输入以服务于攻击者的恶意目标, 来破坏网络防御系统。目前国内外对针对威胁情报挖掘领域中数据风险把控方面的研究相对较少。一方面是由于国内开源情报挖掘大环境还处于萌芽状态, 尚无有效的情报分析机制。由于不同挖掘模式下的数据类型和服务类型不同, 需要研究建立具有较好适应性、有效性的风险分析与评估模型, 而目前开源威胁情报挖掘领域在风险评估方面缺少体系研究, 知识积累不足。针对上述问题, 可研究和借鉴现有大数据、人工智能等领域的相关成熟技术, 结合威胁情报的自身特点进行深入的探索。
(3) 面向大众的开源情报开发支撑工具
开源情报挖掘主要采用大众生产模式, 越来越多的外部开发者通过公开发布方式在开源平台中贡献威胁情报信息。外部贡献已经成为开源威胁情报的主要推动力, 近年来在威胁情报中的比重呈不断增长趋势。限制开源情报发展的一个重要因素在于威胁情报生产具有相当的技术门槛, 这主要包括两个方面原因: 一方面, 包含威胁情报的安全流量数据一般存在于专用安全检测设备中, 如蜜罐、防火墙中, 难以轻易独立获取;另一方面, 即使获取到安全检测等数据, 也需要开发者具有威胁情报的专业知识来从中提取出威胁情报信息。研究一个面向大众的开源情报开发支撑工具, 实现对大规模异构流量数据条件下的快速威胁情报定位、提取, 并建立统一的威胁数据信息模型, 对于建立更为友好的威胁情报生态具有重要意义。
(4) 面向全环节的开源情报时效性提升
现有开源情报挖掘技术多通过爬虫等技术在开放信息源中进行遍历提取, 在性能指标中更关注于情报的准确性、覆盖性。随着网络威胁的更新迭代日趋频繁, 对于威胁情报的时效性指标也要求越来越高。现有开源威胁情报挖掘研究工作大都瞄准从某个具体环节对挖掘效率进行提升[111-120]。而实际上, 开源威胁情报深度挖掘的各个环节都在影响整体的速度效率, 提升威胁情报的时效性需要从整体上进行综合把握。例如开源情报信息源有很多是通过论坛, 社交网络等平台, 以流数据形式动态产生, 因此针对大规模动态开源情报网络信息, 通过研究高效的模型和算法, 来尽可能提升开源情报挖掘效率是一个重要环节。另外高质量的威胁情报本质来源于情报发布者的及时分享及发布, 这一般由情报发布者自我驱动。如何设计合适的激励机制, 综合考量威胁情报的价值, 从而激励各个组织主动及时产出并共享更多的威胁情报是影响威胁情报质量提升的关键问题。而目前激励机制设计的首要难点是解决威胁信息数据价值评估难度大、威胁信息交易收益不易计量的问题。
网络技术日益翻新的今天, 开源威胁情报挖掘技术可缓解传统威胁情报信息量单薄等问题, 其研究发展得到了学术界和工业界的广泛关注。但是对开源威胁情报挖掘研究工作进行系统化梳理的相关研究成果并不多。本文对当前开源情报挖掘领域进行梳理, 重点分析了开源威胁情报从采集识别提取至融合评价再至关联分析交互场景应用的完整基于开源信息平台开源威胁情报挖掘流程, 并基于现有研究工作, 提出了当前开源威胁情报挖掘工作中存在的问题以及未来发展方向, 旨在为威胁情报应用及其他相关安全领域的研究和实践提供有益借鉴。