网络安全态势感知
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.2 网络安全态势感知系统的关键技术

网络安全态势感知系统的关键技术主要包括数据采集与特征提取、攻击检测与分析、态势评估与计算、态势预测与溯源、态势可视化等,如图2-2所示。

img

图2-2 网络安全态势感知系统关键技术和感知过程

2.2.1 数据采集与特征提取

网络安全态势感知的数据采集方式多样,不仅包括设备自带的各种数据采集工具,还包括可搭载在网络系统中的各类辅助性设备,如防火墙、入侵检测系统、探针等。数据采集面临的难点是数据体量大、数据种类多,如果采集所有的数据,将面临数据过载的问题,因此需要根据网络安全要素设计相应的特征,对符合特征的数据进行靶向数据采集。

数据采集与特征提取主要涉及的关键技术包括数据模型的定义、基于特征的数据采集、数据融合等。

2.2.1.1 数据模型的定义

数据模型的定义主要针对需要采集的数据格式、内容等进行定义,通常需要定义数据结构、数据操作、数据约束[1]。数据结构描述了数据的类型、组成、性质和数据间的关系等,是数据模型的基础,并从概念语义和实现技术上对数据操作和数据约束提供支持。不同的数据结构对应的数据操作和数据约束也不同。数据操作是在数据结构的基础上,针对不同类型的数据进行计算、推理约束和规则,是对操作符和操作方法的无歧义性约定。数据约束是在数据结构的基础上,结合业务语义,定义不同类型、不同结构的数据的数值、词法、语法、关联关系、依存关系的取值、计算和推理约定,确保数据正确、有效和相容。

数据模型的定义是采集和融合网络安全态势感知所需信息的关键,涉及定义主体业务数据、定义数据输入/输出格式、定义数据收集与集成模式等。通过规范统一的数据模型定义,可以解决由于网络安全态势感知中需要处理多种传感器、异构数据源、高速大流量数据流而给数据采集和信息融合带来的难题[3]。另外,也可以将数据模型的内涵进行拓展,使数据模型包含实体和关系等,进而规范数据分析和可视化范式[4],支持威胁评估[5]。需要强调的是,数据模型不仅需要定义实体、事件、任务、结果等主要业务数据的格式和语义,还需要清晰地定义与实体和事件的上下文语义相关的信息[6]

数据模型通过定义需要采集数据的格式、结构等,支持对采集到的网络安全数据进行高效存储及管理,并能提高数据融合的效率。

2.2.1.2 数据采集

数据采集又称数据获取,是指从传感器和其他待测设备等被测单元中自动采集信号,送到上位机中进行分析和处理[7]。数据采集系统是利用计算机软件、专用数据采集硬件设备、采集数据生成平台内置数据推送适配器等实现的用户可定制、自动执行的测量系统。根据采集的数据规模来划分,数据采集可分为采样式数据采集和全样本数据采集。采样式数据采集是隔一定时间或空间(采样周期)对同一采集点重复采集;全样本数据采集指收集采集点的所有状态数据。网络安全态势感知系统中的数据采集和传统的数据采集不一样,通过采样式数据采集方法很难保证采集到所有关键的敏感数据,可能导致系统不能及时准确地发现针对网络系统的攻击行为;通过全样本数据采集方法需要对所有的网络安全数据进行采集,数据体量太大、数据动态变化快、数据种类繁多,不仅给数据的有效存储和管理带来巨大难度,并且可能导致系统不能及时高效地检测网络安全事件。

数据采集是网络安全态势感知的基础,在网络安全态势感知中需要设计靶向数据采集方法。具体而言,网络安全数据包括多种维度信息,如资产维度信息、漏洞维度信息、威胁维度信息。数据采集,需要根据各种维度信息设计相应的规则,形成数据采集的特征,并对符合特征的数据进行靶向采集。例如,从资产维度需要采集网络和主机状态信息、服务状态信息、链路状态信息、资源配置信息等,从漏洞维度需要采集漏洞信息、补丁信息等,从威胁维度需要采集攻击行为的特征信息、威胁情报信息等。是否能准确、高效地采集网络安全数据直接决定着网络安全态势感知的结果[8]。针对不同维度的数据,目前的釆集方式主要包括日志釆集方式、协议采集方式、利用集成化网络采集工具的采集方式等[9]

2.2.1.3 数据融合

网络安全态势感知中采集的数据来源多、种类复杂,需要对多源异构数据进行有效融合,以消除大规模网络环境中获取的数据的差异性,并将数据融合进行关联分析。在多源异构网络中采集的有关网络安全的数据是极其不规范的。有的数据是动态的,有的数据是静态的,有的数据是离散的,有的数据是连续的;有的数据是重复的,有数据是互补的。数据融合的过程是一个剔除冗余数据、对数据格式进行标准化处理、对数据进行变换等,从而实现对网络安全事件的一致性描述的过程[10]

数据融合的方式有很多,在态势感知中,对于处理多源异构数据的研究已经比较成熟,已有的理论和方法各具特点与优势。其中,贝叶斯网络具有神经网络和图论的优点,基于概率理论来处理不确定性,提供了一种将知识直觉地进行图解以实现可视化的方法;D-S证据理论引入了对不确定性的量化表示,和对当前未知事实的形式化描述,可以用精确度的方式定义信息与事实的等级;粗糙集理论借助模糊逻辑计算,从海量、异构、多源的数据中发现数值关系、行为规律,并将这些结论形成可复用的、形式化的逻辑规则;“安全态势值”的方法具有非线性时间序列的特点,而神经网络具有处理非线性数据的优势;“赛博空间入侵者”的方法具有相对确定的意图,采用意向图进行意图识别,形成一种新颖的研究方式,将隐马尔可夫模型用于意图识别,能够从多传感器融合数据,得到正确地识别与认知;另外还有学者将博弈论应用于网络空间防御方面的研究,例如,采用马尔可夫博弈论模型,利用分布式结构有效地为网络空间的不确定因素进行建模,从而能很好地抓住网络冲突的性质[11]

数据变换是对数据进行规范化归并或转换,以便于后续的数据分析、统计和信息挖掘。常见的数据变换包括对数据进行各种处理:平滑处理,即通过统计、拟合、回归、聚类等方式,发现、去除或修订数据中的噪声;合计处理,即对数据进行总结或合计操作,常用于构造数据立方或对数据进行多粒度的分析;数据泛化处理,即通过拓展、规约、抽象等方法,用抽象的概念替换具体的对象,用高层次规则描述具体的数据;规格化处理,即将目标对象的可量化属性和特征,从一个跨度较大或较广的范围,映射到一个相对较小的特定范围内,并保持原始属性的统计特性;属性构造处理,即根据已有属性集构造新的属性,以提高数据处理的效果。

通过数据融合,态势感知系统可以对多源异构的网络安全数据进行有效整合,并将最关键的数据提供给分析师。

2.2.2 攻击检测与分析

通过对数据进行关联分析有助于实现对网络攻击事件的有效检测。传统的攻击检测与分析技术主要通过使用特征库和攻击行为规则库来实现,并对历史发生的攻击事件进行总结。利用针对单步攻击形成的特征库,当采集的数据符合单步攻击的特征时,便能直接检测出该单步攻击行为;利用针对多步攻击事件形成的攻击行为规则库,当采集和分析出的攻击行为符合对应的规则时,便能实现针对多步攻击事件的检测。但是上述攻击检测与分析方法很难用于对有效攻击的检测中,并且缺乏从人类分析师角度出发的理解和检测网络安全事件的认知过程。

在网络安全态势感知中实现攻击检测和分析,需要对人类的认知过程进行建模,采用抽象的概念模型进行表示,建立符合网络安全态势感知的认知模型,以便支持基于模型的攻击检测与分析。相关的技术主要包括本体模型、认知模型、关联分析、攻击检测等。

2.2.2.1 本体模型

本体模型是从客观世界中抽象出来的一个概念模型。这个模型包含某个学科领域内的基本术语和基本术语之间的关系(或者称为概念及概念之间的关系)。本体不等同个体。本体是团体的共识,是相应领域内公认的概念集合。这里所说的概念集合的内涵包括四层含义:将相关领域的知识表述为概念;通过概念表述的知识应明确且没有歧义;要将知识形式化地表述出来;知识的表达是要利于共享的。

网络安全态势感知的对象及环境比较复杂,存在对象属性难以量化、语义难以描述的困难。在态势感知过程中,面临着态势要素语义结构不同、数据缺失与数据冗余并存等难题。本体模型能够全面有效地描述网络安全态势,将网络安全各类数据和指标要素抽象分类并归纳为实体、属性以及关联关系,建立由安全事件的上下文环境、攻击行为的特征信息、当前已知的和系统现存的漏洞静态信息以及目标网络的历史和当前流量数据等组成的网络安全态势描述模型[12]。依托网络安全态势感知的本体模型,可以解决态势对象属性难以量化和规范、语义描述难以统一和共享等问题。依托本体的规范化描述特征,可以利用通用的推理方法,结合用户制定的约束条件,进行知识和事件推理[13]

2.2.2.2 认知模型

认知模型源于心理学研究领域,是人类对真实世界进行认知的过程模型。在认知行为中,通常包括感知对象、注意目标、形成概念、知识表示与推理、记忆留存与更新、信息传递与共享等。人们通过建立认知模型研究人类的思维机制、与环境的感知交互机制、人与人之间的集体认知机制等,指导设计和实现智能化或智能辅助系统。较早被提出的经典“3M”模型是认知模型的代表,“3M”表示事物是什么(What)、如何(How)、为什么(Why)。

网络安全态势感知引入认知模型,从注意力机制角度“理解并解释态势”[14]。网络空间安全态势感知面临着数据量大、攻击形态多样易变、网络环境复杂、对抗性强等挑战,而且,在人的认知能力、注意力机制的限制下,使态势感知必须借助辅助工具,以深刻理解并解释态势,达到“感”和“知”的目的。因此,认知模型在网络安全态势感知应用场景下,必须从环境、行为和过程等不同层面实现“智能化辅助”[15]

构建认知模型是为了将人类分析师理解网络安全态势感知的过程进行自动化建模,从而实现自动化的态势理解过程,以便支持对网络攻击事件进行有效检测。

2.2.2.3 关联分析

关联分析又称关联挖掘,就是在行为记录、关系数据或其他信息中,查找存在于项目集合或对象集合之间的相关关系,包括值相关关系、语义相关关系、共现关系、因果关系等。关联分析用于描述多个变量之间的关联。如果两个或多个变量之间存在一定的关联,那么其中一个变量的状态就能通过其他变量进行预测。例如,房屋的位置和房价之间的关联关系或者气温和空调销量之间的关系。

在网络安全态势感知场景中,关联分析用于发现网络安全数据在时间、空间、序列等表层关系,并结合资产维度、漏洞维度、威胁维度的信息,通过安全攻击事件溯源和复盘,发现攻击活动与安全数据、安全事件及攻击模型等的语义关系,从而为实现自动化检测网络攻击事件提供支持。

2.2.2.4 攻击检测

传统的攻击检测是通过使用流量分析、负载分析、行为分析等技术,以及基于经验和基于机器学习生成规则的方法,发现并验证网络中的攻击行为或可疑行为。在网络安全态势感知中,攻击检测主要基于日志、流量、负载、协议等数据,通过关联分析和规则匹配等方法,识别网络或系统中的恶意行为。在构建本体模型和认知模型以后,通过模型进行推理实现对网络攻击事件的检测。

2.2.3 态势评估与计算

对网络安全态势进行评估与计算是全面、准确、实时反映网络安全态势的重要手段。态势评估一般可分为定性评估和定量评估。其中,定性评估是由评估者根据自己的经验和认知,对网络系统面临的非量化指标进行评估;定量评估是对所要评估的元素根据一定的标准进行量化,对量化后得到的数据采用数学方法或数学模型进行分析和计算。态势评估与计算涉及的主要关键技术包括指标体系的构建、对网络系统风险的评估。

2.2.3.1 态势评估指标体系

态势评估指标体系是根据网络安全态势感知中威胁评估、影响评估、能力评估等,定义相关的指标体系及其评估模型。一般而言,态势评估指标体系包括从漏洞维度、威胁维度、资产维度建立的度量指标。其中,漏洞维度的度量指标包括单个漏洞的度量指标和网络漏洞的总体度量指标;威胁维度的度量指标包括单个攻击的度量指标和整个网络面临攻击的度量指标;资产维度的度量指标包括工作任务的度量指标和资产度量指标等。通过不同维度的度量指标,形成整个网络安全态势感知系统的多层次、多维度、多粒度的指标体系。

2.2.3.2 风险评估与计算方法

风险评估是网络安全态势感知的核心要素,准确计算当前网络系统面临的安全风险有助于分析师制定针对系统的防护措施。如上述态势评估指标体系所述,风险评估与计算需要根据指标体系中对不同维度评估指标的定义,融合各类安全设备数据,借助某种数学模型经过形式化推理计算,得到当前网络态势中某一目标在某层面上的安全、性能等评估值。按照风险评估与计算方法的不同,网络安全态势评估可以分为定量评估和定性评估。不同评估方式所采用的方法不同,各种方法均有优点和不足。定性评估方法主要包括调查问卷法、逻辑评估法、历史比较法和德尔菲法等,其优点是可以挖掘出一些蕴藏很深的思想,使评估的结论更全面、更深刻。定量评估方法主要包括贝叶斯技术、人工神经网络、模糊评价方法、D-S证据理论、聚类分析等,具有结果更直接、更客观,依据更科学、更严密等优点。

2.2.4 态势预测与溯源

态势预测是对当前网络安全态势未来将如何演化的展望,以及对未来态势中安全元素的预期,是态势感知的最高层级。网络安全态势预测的内容包括对当前正在发生的网络攻击事件的演化进行预测、对未来可能发生的网络攻击行为进行预测,以及对网络安全整体态势进行预测等。传统态势感知的最高层级即为态势预测,而网络安全态势感知除了进行态势预测,还要进行溯源,这是实现主动防御的关键技术。网络攻击溯源是指还原攻击路径,确定网络攻击者身份或位置,找出攻击原因等。通过攻击溯源可以帮助分析师有针对性地制定安全策略,能显著地降低防御成本,大幅度地提升防御效果。具体而言,态势预测与溯源包括的关键技术为构建预测模型、攻击预测、攻击溯源、取证分析等。

2.2.4.1 构建预测模型

一般概念上的预测模型是指用数学语言或公式描述和预测事物间的数量关系。预测模型在一定程度上揭示了事物间的内在规律。构建预测模型是态势预测与溯源的基础工作。在做态势预测时可以把预测模型作为计算预测值的直接依据。因此,预测模型对预测准确度有极大的影响。任何一种具体的预测方法都是以其特定的数学模型为特征的。预测方法的种类有很多,各有相应的预测模型[16]

在网络安全态势感知应用中,预测模型主要针对攻击事件、攻击对网络部件及业务任务的影响这两个方面来构建。传统网络安全事件预测主要采用时间序列预测[17]、回归分析预测[18]和支持向量机预测[19]等方法。当前基于知识推理的网络安全事件预测主要采用攻击图方法[20,21],对攻击行为[22]、攻击能力及意图[23]、攻击模式等进行预测[24]

2.2.4.2 攻击预测

攻击预测是指根据当前及历史网络安全数据,结合已经形成的网络安全知识,通过推理的方法预测攻击的未来动向,包括攻击路径、攻击目标、攻击意图等[25]。如构建预测模型所述,攻击预测的常用方法包括基于时间序列的预测、基于回归分析的预测、基于支持向量机的预测等传统预测方法,以及基于攻击图的预测等知识推理预测方法。

2.2.4.3 攻击溯源

攻击溯源是指利用网络溯源技术查找并确认攻击发起者的信息,包括地址、位置、身份、组织甚至意图等,还原攻击路径,找出攻击原因等。攻击溯源分为应用层溯源和网络层溯源,在将应用层行为体、目标体等关联映射到网络层标识,如IP地址,从而将应用层的溯源活动转化为网络层的溯源操作。在网络安全态势感知中,攻击溯源是攻击预测的重要基础或前提,也可为理解当前态势和复盘分析历史安全事件提供手段。

2.2.4.4 取证分析

取证分析是攻击溯源操作的组成部分,根据分析的环境目标对象,可以分为网络取证、系统取证、业务取证。网络取证是指通过网络设备日志,提取分析协议层次的通信行为、路径和流量等特征数据,发现攻击活动的网络轨迹;系统取证是指通过计算机的系统日志,提取分析主机系统内及相关系统间的活动记录,发现针对计算机系统的攻击活动痕迹;业务取证是指针对服务系统的业务日志,提取分析业务软件层面的操作记录,发现穿透网络和计算机系统到达业务系统的恶意破坏行为。

2.2.5 态势可视化

实现态势可视化要依托信息可视化技术。信息可视化技术是一套关于信息转化、图形显示和人机交互的技术,运用图形或图像计算技术,按照认知交互理论,将抽象、复杂的信息内容或数值关系转换为直观、易读的图形或图像,并显示在电子或虚拟屏幕上。在网络安全态势感知过程中,人类通过可视化技术提供的交互手段感知态势信息,包括安全数据的展示、为发现攻击事件而通过迭代进行的数据分析统计等活动。可视化模块与网络安全态势感知的各个阶段息息相关,是实现统一协作的核心技术。信息可视化是一种视觉感知手段,能够激发并支持使用者的认知主动性,并以交互的方式强化使用者对信息的深度理解[26]。态势感知系统集成可视化模块,以大数据、机器学习、深度分析、可视化为技术基础,将威胁情报分析、安全策略解析、异常流量监测、日志深度挖掘、攻击发现溯源和安全事件响应等多种功能进行融合集成,实现对网络安全态势的实时感知、对攻击行为的准确发现和预测,提升用户网络的安全运行、管理和维护效率。