基于实时关联分析算法及CEP的大数据安全分析模块研究与实现

2018-03-21 14:20:36 电力信息与通信技术  点击量: 评论 (0)
从海量安全日志中发现威胁,提取有效安全事件,生成安全告警供相关人员处置是企业内大数据安全管理平台的研究热点。在传统的大数据安全管理平台中,安全事件由安全分析人员人工研判,在数据关联分析的实时性、准确性及个性化分析方面有所欠缺,同时还存在交互性弱的问题。为了完善及

足“当邮件账号2次登录的IP位置距离大于2次登录时间内飞机的最大飞行距离时,该账号即为异常账号”的场景分析规则即为异常登录行为。对符合该类场景规则的数据关联分析最终生成告警,并由相关人员进行不同处置。

首先通过数据采集层获取的主机类日志,识别邮件登录日志,对邮件登录日志进行去重去噪分析及语义分析,由于生产环境的数据类型各异,数据采集量达到上亿级,所以依据该场景以1 h为单位进行分析。

1.4.1 邮件系统登录数据中的字段定义

Affiliated_Network:邮件登录IP所属网络;

Server_IP:邮件服务器IP地址;

Login_IP:邮件账号登录IP地址;

Login_Account:邮件登录账号;

LogIds:日志唯一标识id;

Login_Longitude:邮箱登录地址经度;

Login_Latitude:邮箱登录地址维度。

1.4.2 邮件账号登录事件流

E为邮件账号登录日志事件集合:

E={en|n=1,2...n}, e={a,t0,t1}

a={ Affiliated_Network,Server_IP,Login_IP,Login_Account,LogIds,Login_Longitude,Login_Latitude}

1.4.3 邮件账号异常登录复杂事件EPL

事件描述:在T时间段内,同一邮件登录账号
2次登录的IP地点的距离大于飞机在2次登录时间内所飞行的最大距离,飞机时速按500 km/h计算。

1.4.4 生成账号异常登录告警的流程

启动Storm集群时将会启动3个拓扑并加载Esper引擎,每个拓扑是Storm运行的一个实时应用程序。在本文设计的模型中,Storm中的3个拓扑分别对应所设计模型中的3个引擎。

1)主题去重去噪拓扑——TopologySrc

对应模型中的标准化引擎,TopologySrc将采集到的邮件登录日志进行识别、解析、分类、去重、去噪,生成较为规整的数据流,发送到下一数据关联加强的拓扑中。

2)关联加强拓扑——TopologyConvert

对应模型中的复杂事件语义分析引擎,将从上一个TopologySrc中标准化后的邮件登录数据流发送到TopologyConvert,TopologyConvert将数据流与数据库中的结构化离线位置知识库关联,加强出邮件登录IP相关的位置信息,生成格式规范、信息完整的数据流。

3)分析拓扑——TopologyAnalysis

对应模型中的安全分析模型计算引擎,结合Esper引擎,经过该步骤的事件流在Esper的1 h滑动事件窗口中,读取数据库中的EPL语句进行场景关联分析,EPL语句如下:

①create window EmailLoginFail1h.win:time_batch(1 hour) as EmailLogin;EmailLoginFail1h为
1 h内登录失败时间窗口。

②create schema HostLoginDistance as (Affiliated_Network string,Server_IP string,Login_IP string,Login_Account string,LogIds string,SlogStartId long,SlogEndId long,Reality double,FlyMax double);HostLoginDistance为创建的模式,模式中存储服务器IP、登录IP等关键信息及经过计算的飞行信息。

③insert into HostLoginDistance select e1.Affiliated_Network as Affiliated_Network,concat(e1.Server_IP,e2.Server_IP) as Server_IP,concat(e1.Login_IP,e2.Login_IP) as Login_IP,concat(e1.SN,e2.SN) as LogIds,e1.Login_Account as Login_Account,e1.SN as SlogStartId,e2.SN SlogEndId,calcReal(e1.Login_Longitude,e1.Login_Latitude,e2.Login_Longitude,e2.Login_Latitude) as Reality,calcFly(500D,e1.Login_Time,e2.Login_Time) as FlyMax from pattern [every e1=HostLogin -> e2=HostLogin(e2.Login_Account=e1.Login_Account and e2.Affiliated_Network=e1.Affiliated_Network and e2.Login_IP!=e1.Login_IP)]。

④insert into EventWarning select Affiliated_Network as affiliatedNetwork,Login_IP as attackSrc,Server_IP as attackTarget,SlogStartId as slogStartId,SlogEndId as slogEndId,LogIds as logIds from HostLoginDistance(Reality>FlyMax)。

符合条件的日志事件插入告警窗口,并生成最终告警,生成后,同一源IP符合关联分析规则的生成一条告警,在平台告警界面展示,安全分析人员在看到告警后可以回溯告警相关日志,进行其他人工分析,告警处置人员则需要与登录异常IP的资产责任人联系,进行排查,如确实存在问题则需封禁该源IP并按照公司内部规定进行其他处理操作。

以上安全关联分析过程只需将去重去噪规则及邮件账号异常登录的复杂事件处理EPL固化存储在数据库中,待事件流到达自动执行进行关联分析,无需人工干预,最终将大量的数据转化成人工易于观察的安全告警信息。场景规则EPL也可以通过交互式用户界面自定义配置,配置后,Esper及Storm将重启,热加载将新配置的EPL规则作为大数据安全关联分析的依据。

 2 模型实现与应用

本文设计的模型投入实际生产环境使用,模型的部署环境如下。

2.1 环境部署

使用了4台Storm服务器组成的大数据分析集群,1台数据库服务器,1台Web应用服务器,均预装CentOS 6.5的Linux发行版本,Java编译环境(JDK 1.7)、Storm和Esper引擎。网络结构如图5所示。

图5 实际环境网络结构Fig.5 Real environment network structure

在大数据时代,机器的硬件已由以往的纵向拓展转变为了横向拓展,生产环境亦是如此,当资源不够时,大数据集群可以在现有部署结构的基础上,扩展服务器节点的数量,提高安全日志的数据分析处理能力。搭建好大数据集群后,将程序部署在各节点,依照本文设计的模型实现大数据安全事件
分析。

2.2 实际运行结果集分析

通过实际部署的环境及以上的操作步骤,实现了基于复杂事件处理的大数据安全事件分析模型的完整安全数据分析流程,并实现了依据预定义规则和用户自定义建立攻击模型进而产生告警事件。在实际生产环境中,对采集装置收集到的全量数据进行处理,每天约采集到2亿条来自不同系统、不同类型的数据,基于Storm的高吞吐性及Esper引擎的关联规则处理,在峰值时,每个worker每秒处理
2 000条数据,一个Slave节点依据分配有3~4个worker,数据处理的速度优于普通的数据处理速度,将海量数据快速识别、分解、标准化、分析,转化为有用的信息,实现了大数据安全关联分析实时、准确的目标。统计现场不同拓扑在不同时间节点处理的数据条数,结果如
图6所示。

其中,影响不同拓扑处理速度的原因在于:前置拓扑数据的输出效率及每个拓扑的业务实现逻辑,TopologySrc每时刻处理的数据量最大,因为TopologySrc处理的采集装置通过消息队列Kafka推送到Storm的数据,而TopologySrc要做去重去噪会过滤掉一半左右不符合规范的数据,故TopologyConvert中需处理的数据量就减少了。同时,TopologyConvert是TopologyAnalysis的前置,这也决定了TopologyAnalysis处理的数据量。
3个拓扑中只有TopologyAnalysis结合了Storm和Esper 2类技术,其余2个拓扑只用Storm技术。

图6 不同拓扑的数据处理效率Fig.6 Data processing efficiency of different topologies

图6不难看出,每天10点及15点左右数据量会达到一个峰值。但即使数据量增加,生产环境中使用所设计模型可以满足大数据安全事件分析需求,该模型的实现是切实可行的。

 3 结语

本文采用Storm及Esper引擎,在已有大数据处理技术及复杂事件处理技术的结合改进基础上,设计并实现了基于复杂事件处理的大数据安全关联分析模型,达到了数据关联分析生成告警的实时性、准确性的高要求。同时,在安全事件分析方法上采用了事件流语义分析、实时关联分析两种事件分析技术。与传统的大数据安全分析方案相比,抛弃了人工的干预,高效地关联了事件关键信息,生成了实时告警,灵活实现了规则热加载。所设计的模型投入生产环境中使用,有实际应用价值。

大云网官方微信售电那点事儿

责任编辑:售电衡衡

免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
我要收藏
个赞