APP下载

基于海量安全数据的专家分析系统的功能设计与实现

2017-10-12李艳斐李海威

网络安全技术与应用 2017年10期
关键词:海量数据管理日志

◆李艳斐 李海威 王 锐

(公安部第一研究所 北京 100048)

基于海量安全数据的专家分析系统的功能设计与实现

◆李艳斐 李海威 王 锐

(公安部第一研究所 北京 100048)

本文提出一种基于海量安全数据的专家分析系统技术框架。该框架主要划分为数据处理引擎、数据管理引擎、专家分析引擎以及数据可视化引擎等关键技术。在此基础上,通过“采集、标准化、归约化、聚类、合并、关联”的层次化架构设计,充分关联海量异构数据、挖掘安全事件、感知安全态势。最后,以入侵攻击及流量两类日志的数据处理、规则分析及可视化分析、智能预警为例,结合典型功能模块阐述本系统的具体实现。

数据管理;专家分析;智能预警

0 引言

随着行业专网信息化工作的深入推进,应用日益多元丰富,信息数据快速膨胀,虚拟化、云计算、大数据等前沿技术得到迅速的推广和应用。与此同时,应用非授权访问、数据盗取、信息泄露、网络攻击、病毒传播等问题严重威胁着行业专网的网络安全和信息安全,传统被动安全防护模式已经无法适应安全管理的需要,安全保障业务人员面临从海量报警日志中发现安全事件的困难。因此,迫切需要借助一套基于海量安全数据的专家分析系统,由安全分析专家介入,实现安全事件的研判分析和智能推送,将业务专家从相互孤立的防御系统、分散的报警设备运维中解放出来,真正投入到及时发现、核实、处置安全事件的日常工作中,保证安全保障工作的正常开展。

1 研究现状

目前,基于海量安全数据的专家分析系统普遍采用的一些技术手段包括以下四个方面:

(1)统一化:指对信息安全相关系统中常见的数据源进行采集,根据预先定义的配置,把各种类型的安全数据格式化成统一的格式。

(2)整合化:指对统一采集的日志进行过滤、去冗余处理后,根据预先定义的分类规则对日志进行归纳分类,转发处理或直接转存数据库。

(3)关联化:包括日志与环境信息(资产信息,网络逻辑等)的关联;日志风险级别、优先级、时间段关联;基于统计的时间窗关联;日志与固有安全漏洞的关联等多种处理方法。

(4)可视化:分为在线和离线两种方式,在线指通过实时获取风险日志数据进行综合计算和可视化来表达当前的安全态势;离线指基于已有数据进行安全事件挖掘,并对统计分析的结果进行可视化输出[1]。

综上,所谓专家分析系统是指能够利用智能信息处理技术以及描述安全事件关联关系的先验知识对网络中的各类安全设备的报警日志信息进行智能处理和关联分析,实现报警信息的精炼化和关联化,达到提高报警信息的可用信息量、降低安全设备的虚警和误警、发现网络安全威胁事件的目的。因此,本系统设计的重点是如何实现高效的日志关联分析及事件研判挖掘引擎设计,支持自由定义规则的组合方式及任务的执行顺序,通过分析结果直观反映网络安全中的典型问题并及时预警。

2 技术思路

本系统在日志数据处理上采用“采集、标准化、归约化、聚类、合并、关联”的层次化架构[1],其中前三步将有效地降低重复、错误的原始安全日志,为提高海量数据环境下的相关事件关联计算奠定基础;而后三步能够较好地从全局角度出发,对异构网络中的海量安全日志进行高效的聚类与合并,进而对相关事件进行关联计算,从而为网络安全管理中安全威胁的快速定位、态势识别与联动响应提供有效的机制保障。

系统总体划分为数据采集、数据处理、数据分析、业务应用四大功能模块。安全数据的采集是辅助功能,安全数据的处理和分析是本系统的核心功能,并在此基础上衍生出多种业务应用,其中包括:数据管理(原始日志分类查询、原始日志关联及分析结果查询、原始日志归并及统计结果查询)、专家分析(源数据选择、规则编写、模型测试、结果论证,及典型网络攻击模型可视化呈现)、智能预警(分析引擎配置、定时任务执行、命中安全事件列表及详情查询)、系统配置等。

根据上述架构设计,本次主要完成数据处理引擎、数据管理引擎、专家分析引擎、可视化分析引擎等四大核心功能模块的设计与实现。

2.1 数据处理引擎

数据处理引擎主要包括两个处理过程,一是数据标准化,将原始数据通过数据规整和数据标注进行格式转换和类型区分,形成格式统一的安全数据,具有较好的可扩展性、兼容性及逻辑统一性,满足了异构环境中对安全日志的标准化要求;二是数据规约化,对安全日志进行过滤、聚合、归一等处理,首先,为消除冗余数据(如时序错乱、延迟/丢失、重复和错误告警等),采用基于属性约束策略的实时归约算法,其次,将安全日志数据,基于已知的特征进行合并,形成具体相同特征或属性的日志数据族。处理完成后,所有日志数据分类入库,并建立索引类型。

2.2 数据管理引擎

本系统支持将采集的异构的、结构化和非结构化的、实时和批量的数据集中到大数据分析平台,整合成为集中、一致、多维度的数据平台。

基于Hadoop开发的面向列的分布式数据库Hbase[2],为海量日志的存储提供了技术解决方案,其优势在于利用HDFS作为其文件存储系统,利用Map/Reduce来处理HBase中的海量数据,利用Zookeeper作为协同服务,可以用于实时随机读/写超大规模数据集。但为了实现更加高效的数据存储与管理,需要对此数据库进行优化,以适应多样化的日志格式。与此同时,在表中的数据量非常多的情况下,HBase很难实现非常高效的索引检索机制。因此,需要借助全文检索引擎ElasticSearch提供的索引的能力来给HBase的rowKey建立索引。

阿里呵呵呵地尾随着阿东。路上有熟人见到阿里,都热情地跟他打招呼。阿里,今天怎么这么开心呀!阿里,笑得蛮好咧。阿里,你比阿东帅多了!

本系统中 HBase只负责存储采集的安全日志原始数据及相关统计、分析数据,相应的检索查询功能由ElasticSearch[3]完成。

2.3 专家分析引擎

专家分析引擎主要包括两个核心功能,一方面,支持数值统计、算法挖掘和攻击树推理等模型的规则设计与验证,另一方面,可以支持任务配置,对应每次任务可以选择数据源以及相应的测试规则,并对每次任务执行后的结果进行保存、查询和二次分析。

为了实现上述功能,首先,需要在内存中主要嵌入两个数据库,分别是索引数据库和查询语句数据库[4]。索引数据库负责存储安全日志及事件的索引类型;查询语句数据库负责存储需要对不同类型的数据源进行何种处理的具体业务规则,即 SQL 查询语句等。其次,规则引擎的设计[5]主要包括模式匹配器和执行引擎,可以为日志或事件的查询结果提供进一步的计算以及封装操作。模式匹配器负责根据处理对应索引类型的查询规则匹配相关联的监听器,即每套规则需与一种索引类型的监听器匹配;而执行引擎则负责监听器内部具体的计算和封装工作。

当用户编写相应规则的查询语句并执行后,对日志或事件查询的结果信息会立即传入由模式匹配器为其匹配的监听器中,并在监听器中进行事件统计计算、态势计算以及对计算结果的二次事件封装,形成新的事件再重新推入索引库,或直接推送报警。

这种通过配置规则引擎的任务执行列表及条件能够很好地实现数据的多次交互迭代处理,按步骤完成复杂的统计和算法逻辑,挖掘数据的潜在价值,同时,这也是积累模型库的一种可行性方案。

2.4 可视化分析引擎

可视化分析引擎的工作包括四个步骤:选取数据源、依据不同的数据源和显示需求选取可视化结构、设计和实现信息实时性显示以及设计人机交互。由数据源的类型决定系统中安全数据的可视化分析及呈现方式。由于网络结构复杂、网络数据种类繁多,那么在不同的网络应用场景下,网络安全日志的数据源的类型也大不相同,比如入侵检测系统的警报日志和防火墙日志数据使用的显示方式就大不相同,前者注重异常的挖掘,后者注重网络数据结构及数据流的展示。因此,本系统中仅对流量日志和入侵检测日志这两类显示方式相似的数据的可视化呈现方式进行设计和实现。

3 系统实现

根据系统总体架构及功能设计,系统实现了三个核心功能模块:数据管理、专家分析和智能预警。

其中,数据管理模块主要完成网络流量和入侵攻击两类安全数据的采集、建模、分类管理;专家分析模块主要完成原始日志和安全事件的数值统计、关联分析[6]、攻击树模型等规则分析和可视化分析;智能预警模块主要完成安全态势展示及安全风险预警[7]等。

3.1 数据管理

数据管理的主功能界面如下图1所示,包括数据列表区和数据检索区。

数据列表区:包括表名以及相应数据条数。点击表名右侧的下拉键头,可以显示描述该表的字段列表。

数据检索区:支持两种数据查询模式,即检索模式和代码模式。其中,检索模式下,用户选中数据表后,可以定义需要查询的条件,每个条件都是并且的关系。点击查询按钮,筛选同时满足设定条件的数据。代码模式下,用户编写SQL代码,进行数据的查询。支持将编辑的代码保存为模板,用户可以在模板列表中可以选择需要执行的代码模板。

图1 数据管理主功能页面

3.2 专家分析

专家分析引擎的主功能界面包括规则管理区和规则内容编辑区。

规则管理区:支持对规则列表进行管理。单点规则时,右侧内容编辑区可以显示该条规则的具体内容。

规则内容编辑区:以原生SQL方式对规则内容进行编写。支持对选定的规则内容进行修改。点击保存按钮,可保存当前的规则内容。点击测试按钮,可将规则下发到系统中,并在结果框中显示执行规则的状态。点击发布按钮,可配置发布规则。

本系统针对网络流量和入侵攻击等安全数据进行规则分析后,还可以通过可视化分析工具对分析结果进行呈现,如下图2所示:

图2 规则管理-可视化分析工具

3.3 智能预警

本系统支持对专家分析得到的疑似安全事件进行基于机器学习的智能分析,如图3所示,展示针对匹配网络流量异常特征的数据集进行训练后得到的结果,对 IP访问流量异常的预警具有一定的参考价值。

图3 智能分析-结果展示

4 结束语

本文从网络安全形势及安全监测现状出发,分析了现有的安全监测手段的落后及应用智能手段进行日志分析的必要性,并在此基础上设计与实现了基于海量安全数据的专家分析系统,从数据管理、专家分析、智能预警三方面详细阐述了网络流量和入侵攻击两类安全数据的分析处理和异常预警。因此,基于海量安全数据的专家分析系统能够使业务人员从海量报警日志的运维中解放出来,借助规则分析和可视化分析等手段,有效地发现行业专网中存在的安全隐患,并及时交付处置,提高信息安全管理的工作效率。

[1]刘兰.网络安全事件管理关键技术研究[D].华中科技大学,2007.

[2]Tom White. Hadoop 权威指南[M].北京:清华大学出版社, 2010.

[3]程永新, 宋辉, 冼土彪.基于ElasticSearch的HBase模糊检索系统,CN 106682073 A[P],2017.

[4]沈建宇.基于规则事件流处理引擎的安全事件监控系统研究[D].上海交通大学,2010.

[5]彭磊.规则引擎原理分析[J].福建电脑,2006.

[6]杨茜越.网络安全态势分析系统中关联引擎的设计与实现[D].北京邮电大学,2015.

[7]刘效武.基于多源融合的网络安全态势量化感知与评估[D].哈尔滨工程大学,2009.

猜你喜欢

海量数据管理日志
一种傅里叶域海量数据高速谱聚类方法
企业级BOM数据管理概要
定制化汽车制造的数据管理分析
一名老党员的工作日志
海洋环境数据管理优化与实践
CTCS-2级报文数据管理需求分析和实现
扶贫日志
海量快递垃圾正在“围城”——“绿色快递”势在必行
雅皮的心情日志
游学日志