APP下载

基于大数据的安全事件挖掘框架*

2015-06-23李明桂陈剑锋

通信技术 2015年3期
关键词:数据仓库安全事件离线

李明桂,肖 毅,陈剑锋,许 杰

(中国电子科技集团公司第三十研究所,四川 成都 610041)

基于大数据的安全事件挖掘框架*

李明桂,肖 毅,陈剑锋,许 杰

(中国电子科技集团公司第三十研究所,四川 成都 610041)

安全态势感知是掌控网络空间的听觉和视觉,安全事件的获取是安全态势感知的基础。在大数据时代,安全事件的挖掘是一个典型的大数据问题。运用大数据技术进行网络安全研究,构建了一种安全事件挖掘框架,结合在线反馈和离线分析两种方式,从海量、多源、异构的原始数据中,提取有效的安全事件,发现安全风险、潜在威胁和未知攻击。挖掘结果可用于安全态势感知、攻击追踪溯源、攻击知识学习等进一步研究。

大数据 安全事件 数据挖掘 机器学习

0 引 言

自棱镜计划曝光以后,国家层面在网络空间安全领域相继展开大动作,网络安全领导小组成立、世界互联网安全大会在乌镇召开、国家网络安全宣传周设定,网络空间的安全越来越受到全社会的关注。

关注网络空间安全,需要能够全面感知网络安全态势,而安全事件是网络安全态势感知的基础,这就要求能够快速、高效、准确地发现网络安全事件。安全事件的提取依赖于以主动方式获取的探针数据和以被动方式接收的上报数据。探针数据是指操作系统、防火墙、入侵检测等产生的日志信息或告警信息。上报数据则是指网络用户、运营商等主动上报的威胁信息。在大规模网络环境中,数量庞大、类型不一的安全防护设备将产生大数据级、格式多样的日志、告警和威胁信息。在此背景下,传统的数据挖掘或安全分析方法就不再适用了。

在大规模网络环境中,安全事件的挖掘已经成为一个大数据问题,需要借助大数据分析技术予以解决。

1 研究进展

大数据分析是指用以解决大数据问题的,包括集成、存储、处理、分析、评估、预测等在内的方法[1]。它具有两层涵义:其一是处理的数据量非常庞大,这是一个存储问题;其二是如何对海量的数据进行分析,这是一个计算问题。因而,现有的大数据技术都可以被划分为存储和计算两个层面。

国外针对大数据的研究开展较早,已经取得了颇为丰硕的成果,形成了以Hadoop为基础的大数据生态系统[2],包括HDFS、GFS、MapReduce、YARN、Spark、Storm、HBase、BigTable、Hive、Mahout、Pig、Impala、Dremel、Kafka、Flume、Lucene、Zookeeper等。

在大数据发展的短短几年间,Hadoop从一种边缘技术已然成为大数据分析事实上的标准。

Hadoop是一个能够对大量数据进行分布式存储和计算的软件框架。Hadoop框架最核心的设计就是HDFS和MapReduce,HDFS为海量数据提供存储,则MapReduce为海量数据提供计算。Hadoop平台广泛应用于大数据处理,得益于其自身在数据提取、转换和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似操作的批处理结果直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务发送(Map)到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。

虽然我国在大数据领域的研究起步较晚,但我国是一个天然的数据大国,拥有着绝对量数据资源。目前,国内针对大数据的研究正如火如荼。比如,中国计算机协会(CCF)专门成立了大数据专家委员会,可以看出大数据在国内已经受到了足够的重视。国内厂商的研究成果主要以百度、阿里巴巴、腾讯等互联网巨头和中国移动、中国电信、中国联通等电信运营商为代表,尤以“BAT”三巨头为最。其中,百度成立了深度学习研究院开展大数据和深度神经网络的研究,已经面向市场推出了“百度预测”、“百度大数据引擎”产品。阿里巴巴继推出阿里云之后,又高调打造大数据平台服务。腾讯也开放了大数据基础平台,提供大数据技术框架。然而,眼下国内的大数据产品大都基于国外开源软件修改而来,且研究进度明显滞后于美国等发达国家,天然的海量数据资源还没有能力充分加以利用。

2 设计思想

在大规模网络环境中,安全事件的挖掘是一个大数据问题。大数据问题需要具体问题具体分析。落实到安全事件的挖掘这个问题上,大数据的分析技术使我们看到了从海量的原始数据中发现安全威胁的可能。

挖掘网络安全事件,需要结合离线和在线两种方式,离线方式以深层分析为主,在线方式以快速反馈为先,两者互为补充。在线方式用于实时或准实时地捕捉短时间高并发的攻击行为,例如,端口扫描、嗅探、DDoS等。而离线的方式能够发现更深层次的威胁,例如周期或潜伏期较长的APT类攻击。

基于上述思想,提出一种安全事件挖掘系统框架,如图1所示。

图1 安全事件挖掘系统框架

在线反馈平台接入网络中,在线收集和处理原始数据,实时或准实时地给出安全事件的挖掘结果。离线分析平台在线下收集和分析全网的历史数据,利用聚类、关联和深度学习等方法,深层次地挖掘安全事件。离线平台注重挖掘结果,适当弱化时延的要求,在线平台则强调分析的实时性,容忍一定的遗漏,两者为补充。

安全事件处理平台维护全局的安全事件库,用于进一步的处理,如安全态势感知、攻击追踪溯源、攻击知识学习等。

3 框架设计

3.1 在线反馈平台

在线反馈平台收集原始数据,并对其进行并行化ETL处理。这是因为,原始数据具有多源异构性,需要对其进行清洗,去除冗余、统一格式,以便后续分析。数据清洗时,只保留事件挖掘所关心的字段信息,并按照预先定义的数据格式存于数据库中。挖掘引擎利用并行化聚类算法从数据库中挖掘有效的安全事件,并转交给安全事件处理平台进一步分析。挖掘引擎中的深度学习训练模块以规则库为依据在线地进行训练,训练完毕的深度学习算法可用于离线分析,同时,离线平台会将新的事件挖掘结果抽象成规则用于更新在线平台的规则库。在线反馈平台基本架构如图2所示。

图2 在线反馈平台基本架构

在线反馈平台基于Spark框架,Spark采用内存计算方式对批量数据进行流处理,具有高效的计算能力和并发处理能力[3],特别适用于在线分析的情形。此外,Spark的流计算与深度学习数据交互简单,学习成本较低,资源可统一规划,并且能够充分利用足够量的在线数据作为训练样本。此外,由于Hadoop不支持迭代[4],因而不能用于深度学习的训练过程,即便通过复杂的设计使深度学习训练能够在Hadoop上实现,其效率也将是非常不理想的。这也是在线反馈平台基于Spark框架的另一个原因。

各数据源通过数据高速公路进入在线反馈平台。数据高速公路选用Kafka,由Linked in提供,是一种分布式消息系统,其数据消费方式支持pull模式,具有O(1)复杂度的持久化和很高的吞吐率。凭借这些特性,Kafka非常适用于在线反馈平台对高并发数据的在线计算。

通过并行化的ETL过程对多源异构的原始数据进行预处理。ETL的并行化是因为:一方面,数据吞吐量大,并行化能够大大提高处理效率;另一方面,Spark是基于MapReduce原理构建的,并行化能够较为容易的实现。

经过ETL的数据存放于数据库中,数据库选用Shark。Shark类似于Hadoop上的Hive[5],本质上是通过Hive的HQL解析,把HQL翻译成Spark上的RDD操作,然后通过Hive的metadata获取数据库里的表信息,实际存放于HDFS的数据和文件会由Shark获取并放到Spark上计算。

挖掘引擎对高并发数据进行实时或准实时处理,采用批量流计算模型。与MapReduce调度计算不同,流计算是对数据的调度。流计算能够对流式数据进行实时或准实时处理,能够根据计算的规模进行弹性资源扩展,能够灵活数据处理任务之间的依赖关系,较为适合对数据的在线分析与处理,但是流计算不适合海量数据处理的情形。选用Spark Streaming能够很好的解决这个问题。Spark Strea-ming是一种小规模批处理系统,它将数据分成很小的batch在Spark上处理,其数据吞吐率很高,并且可以与YARN[6]和Hadoop共享计算资源。

在线反馈平台对在线数据流进行实时或准实时的分析,强调快速高效的处理能力,适当弱化对安全事件的挖掘结果的准确度要求。挖掘引擎的主要功能是挖掘安全事件和判决威胁类型,对于不确定的疑难事件,交由离线分析平台进一步处理。

3.2 离线分析平台

离线分析平台收集全部历史数据,经ETL后,存放于数据仓库之中。另外,数据仓库还存储在线反馈平台转交的疑难事件数据。离线分析平台维护着一个已知的安全事件仓库,事件仓库中的安全事件来自离线平台分析的结果和在线平台反馈的结果。挖掘引擎结合该事件仓库对数据仓库中数据进行深层分析,将最新的事件挖掘结果交由安全事件处理平台进一步处理,并把最新的事件保存于事件仓库中。同时,离线平台将新型安全事件抽象形成规则,用于在线平台的规则库更新。离线分析平台基本架构如图3所示。

图3 离线分析平台基本架构

离线分析平台承载PB级的数据量,规模可达到数千服务器节点,需要进行海量数据的持久化和非实时批处理计算,采用分布式存储和计算的Hadoop框架。分布式存储要求使大量服务器的物理存储聚合,统一访问,采用HDFS的分布式文件系统[7]。分布式计算要求将分布式存储上的海量数据做分布式处理,尽可能调度计算而不是调度数据,即各节点独立计算,并将计算结果汇总得出最终结果,采用MapReduce的计算模型[8]。在Hadoop框架上,基于MapReduce模型实现ETL并行化、关联分析并行化、聚类分析并行化以及高并发海量数据的深度学习,基于HDFS分布式文件系统、HBase数据库和Hive数据仓库,提供海量数据的存储能力。

离线平台分析的数据吞吐量很大,为TB以上量级。数据源来自大量的、不同类型的设备节点,需要被送到多个目的地。转运的数据可以容许很少量的丢失,也可以容许一定的乱序。基于上述原因,采用Flume收集历史数据。Flume是一个高可用、高可靠、分布式的海量日志采集、聚合和传输系统,能够满足吞吐量大、数据源结构复杂、数据一致性要求稍低等的环境要求[9]。

挖掘引擎包含三部分,并行化聚类、并行化关联、深度学习。并行化聚类与在线反馈平台相似,用于从数据仓库中提取有效安全事件,并判别威胁类型。并行化关联挖掘用于深层次地威胁发现,基于数据仓库中的原始数据集和平台的事件仓库中的已知安全事件,进行深入的关联规则分析,找出多个安全事件背后隐藏的联系,并将一次成体系的系列攻击动作产生的系列安全事件归并为一个新的安全事件,另外,通过将确定的安全事件与关联关系结合,还能发现还未启动的、潜在的威胁。采用在线反馈系统中训练完成的深度学习算法,结合事件仓库的已知安全事件集,从数据仓库的原始数据集合中挖掘全部已知威胁和部分未知攻击。

离线分析平台对历史数据进行并行化的关联分析和深层挖掘,强调安全事件挖掘结果的严谨性,适当弱化对处理延时的要求,但关注并行化处理效率,即不要求实时或准实时的给出分析结论,却需要在可接受的时间内给出准确的挖掘结果。

3.3 事件处理平台

安全事件处理平台基于已获取的安全事件进一步分析,包括但不局限于安全态势感知、攻击追踪溯源、攻击知识学习,其基本架构如图4所示。

图4 安全事件处理平台基本架构

安全事件处理平台接收来自离线分析平台和在线反馈平台的安全事件挖掘结果,存储于数据仓库中,形成全局事件仓库。安全态势感知系统、攻击追踪溯源系统、攻击知识学习系统提取事件仓库的数据进行业务分析。

安全态势感知系统,从事件仓库中提取安全事件,通过SQL查询获取安全事件统计结果,利用特定的态势评估模型进行安全态势评估,利用特定的态势预测算法进行安全态势预测,进而通过可视化方法将态势现状和预测结果呈现出来。

攻击追踪溯源系统,对事件仓库中的全部安全事件做关联规则分析,依据事件关联结果,构建攻击路径模型,利用图论经典算法进行分析,找出攻击源头,进而获取攻击者IP地址、地理位置和真实身份信息。

攻击知识学习系统,基于对全局安全事件的特定分析,标记出可疑节点,提取可疑节点的真实IP等关键信息,建立攻击者档案库,再对可疑节点的行为建模分析,将攻击者的行为抽象成某种特征,形成攻击行为特征库。攻击知识学习系统的重要输出就是攻击者档案库、攻击行为特征库,它们可以作为知识库帮助挖掘引擎从海量数据中发现安全事件或安全事件集。

4 结 语

安全态势感知是网络空间对抗的耳与目,而安全事件的提取是安全态势感知的基础。本文利用大数据分析技术,构建了一种安全事件挖掘系统框架。主要包含三个部分,以在线反馈平台和离线分析平台相互配合,有效地监测各类安全事件,其结果交由安全事件处理平台作进一步分析处理。本文提出的方法为部署大规模网络环境下的安全态势感知、攻击追踪溯源等业务系统提供了一种技术思路。

[1] 刘师语,周渊平,杜江.基于HADOOP分布式系统的数据处理分析[J].通信技术, 2013,46(09): 99-102. LIU Shi-yu, ZHOU Juan-ping, DU Jiang. Analysis of Massive Data Processing based on Hadoop Cluster[J]. Communications Technology, 2013, 46(09): 99-102.

[2] 张锋军.大数据技术研究综述[J].通信技术,2014,47(11):1240-1248. ZHANG Feng-jun. Overview on Big Data Technology[J]. Communications Technology,2014,47(11):1240-1248.

[3] ZAHARIA M, CHOWDHURY M, DAS T, et al. Fast and interactive analytics over Hadoop data with Spark [J]. USENIX, 2012, 37(04): 45-51.

[4] BIFET A. Mining Big Data in Real Time [J]. Informatica (Slovenia), 2013, 37(01): 15-20.

[5] THUSOO A, SARMA J S, JAIN N, et al. Hive: a warehousing solution over a map-reduce framework [J]. Proceedings of the VLDB Endowment, 2009,2(02):1626-1629.

[6] KULKARNI A P, KHANDEWAL M. Survey on Hadoop and Introduction to YARN [J]. International Journal of Emerging Technology and Advanced Engineering, 2014, 4(05): 82-87.

[7] BORTHAKUR D. The hadoop distributed file system: Architecture and design [J]. Hadoop Project Website, 2007, 11(2007): 21.

[8] DEAN J, GHEMAWAT S. MapReduce: simplified data processing on large clusters [J]. Communications of the ACM, 2008, 51(01): 107-113.

[9] LOGANATHAN A, SINHA A, MUTHURAMAKRISHNAN V, et al. A Systematic Approach to Big Data [J]. International Journal of Information & Computation Technology, 2014, 4(09): 869-878.

LI Ming-gui (1989- ),male,graduate student,majoring in information security and big data;

肖 毅(1970—),男,硕士,研究员,主要研究方向为通信与信息安全;

XIAO Yi (1970- ),male,M. Sci.,research fellow,mainly engaged in telecommunication and information security;

陈剑锋(1983—),男,博士,高级工程师,主要研究方向为信息安全与云计算;

CHEN Jian-feng(1983- ),male,Ph. D.,senior engineer,specialized in information security and cloud computing;

许 杰(1978—),男,博士,工程师,主要研究方向为信息安全与大数据。

XU Jie(1978- ),male,Ph. D.,engineer,majoring in information security and big data.

National Natural Science Foundation Project (No.61202043)

Big Data-based Framework for Security Event Mining

LI Ming-gui, XIAO Yi, CHEN Jian-feng, XU Jie

(No.30 Institute of CETC, Chengdu Sichuan 610041, China)

Security situation awareness is,just like the eyes and ears,to grasp and control the cyber space. Further,the acquisition of security event is the basis for security situation awareness. In the era of big data, security event mining is also a typical big data problem. This paper proposes a framework for mining security event by on-line and off-line mode. It provides a solution to detect security risks, potential threats and unknown attacks from the massive, multi-source, heterogeneous raw data. Moreover, the mined results can be used for implementing further processing,including security situation awareness,attack-source tracking attack-knowledge learning.

big data; security event; data mining; machine learning

date:2014-10-07;Revised date:2015-02-04

国家自然科学基金项目(No.61202043)

TP309

A

1002-0802(2015)03-0346-05

李明桂(1989—),男,硕士研究生,主要研究方向为信息安全与大数据;

10.3969/j.issn.1002-0802.2015.03.019

2014-10-07;

2015-02-04

猜你喜欢

数据仓库安全事件离线
淮安市加强安全事件管理提升风险管控能力
异步电机离线参数辨识方法
2020年度区块链领域安全事件达555起
基于数据仓库的数据倾斜解决方案研究
浅谈ATC离线基础数据的准备
FTGS轨道电路离线测试平台开发
基于数据仓库的住房城乡建设信息系统整合研究
离线富集-HPLC法同时测定氨咖黄敏胶囊中5种合成色素
探析电力系统调度中数据仓库技术的应用
基于数据仓库的数据分析探索与实践