一种流量数据监测方法和装置与流程

文档序号:11388875阅读:259来源:国知局
一种流量数据监测方法和装置与流程

本发明涉及移动通讯网络安全技术,尤其涉及一种流量数据监测方法和装置。



背景技术:

流量监控系统的建设是网络安全工作从基于经验向基于流量数据进行精确管理的转型,以解决当前网络安全管理水平由于不掌握、不分析流量数据而无法实现质的提升的几个关键问题,如:在防火墙策略审计过程中,不能获知精确、真实的互连需求,无法发现anytoany、***toany、anyto***等明显错误之外的其它策略设置问题;系统维护人员无法判断业务开通、变更时厂家提出的互连需求的合理性;也不了解安全域子域之间的流量,无法判断是否符合划分要求、设备部署要求和设备互连要求。

基于端口镜像的流量监控系统虽然已经实现了流量的可视化,全流量的可见,但对于异常流量的检测分析尚未完善,而且仍然存在一些安全盲区。传统的基于规则特征匹配检测技术的入侵检测系统(ids,intrusiondetectionsystem)/入侵防御系统(ips,intrusionpreventionsystem)、防病毒(av,anti-virus)和反垃圾邮件系统(anti-spam)等,一直注重识别已知的威胁,无法应对未知复杂的威胁。随着科技的进步以及快速发展,新的检测技术不断出现,一些基于统计和概率的异常检测技术等也开始应用在anti-spam和ids等系统中。虽然问题已得到了缓解,但还面临很大的挑战,主要体现在判断能力有限、精度难以满足要求、样本标注存在瓶颈、以及样本分布的不均衡等。

电信行业的安全管控平台同样强调事件关联分析的重要性,可通过关联引擎将关注的安全事件从海量信息中挖掘出来;但是,基于规则的关联分析必须 依靠规则才能起作用,若未事先配好规则或者规则设置不合理,就无法发现安全问题;而规则只能描述已知的安全问题,无法对未知的安全问题进行描述。

可见,如何对包含未知安全问题的流量数据进行判断,是移动运行商亟待解决的问题。



技术实现要素:

有鉴于此,本发明实施例期望提供一种流量数据监测方法和装置,可以对包含未知安全问题的流量数据进行判断,提高移动网络的安全性。

为达到上述目的,本发明的技术方案是这样实现的:

本发明实施例提供了一种流量数据监测方法,所述方法包括:根据现有业务数据建立指标基线;所述方法还包括:

对当前监测的流量数据与所述指标基线进行对比,确定所述流量数据的行为类型;

对非异常行为类型的流量数据,采用时间序列分析,确定所述非异常行为类型的流量数据的行为类型。

上述方案中,所述根据现有业务数据建立指标基线,包括:

根据现有业务内容和信息技术(it,informationtechnology)资源类型,确定指标基线白名单;

其中,所述业务内容包括:业务种类、敏感数据、关键业务流程;所述it资源类型包括:安全设备、网络设备;

根据已知威胁信息,确定指标基线黑名单;

其中,所述威胁信息包括:信誉信息、攻击信息;所述信誉信息包括:恶意的互联网协议(ip,internetprotocal)地址、统一资源定位符(url,uniformresourelocator)和域名;所述攻击信息包括:攻击源、攻击工具、利用的漏洞信息。

上述方案中,所述对当前监测的流量数据与所述指标基线进行对比,确定所述流量数据的行为类型,包括:

将属于所述指标基线黑名单的流量数据,确定为异常行为类型;

将属于所述指标基线白名单的流量数据,确定为非异常行为类型;

将不属于所述指标基线白名单和所述指标基线黑名单的流量数据,确定为非异常行为类型。

上述方案中,所述对非异常行为的流量数据,采用时间序列分析,确定所述流量数据的行为类型;包括:

采用自回归(ar,autoregressive)模型进行时间序列分析;

根据预设的时间窗,确定ar预测模型;

根据所述ar预测模型,计算所述流量数据检测点的观测值与预测值的残差;

根据所述残差,确定决策函数,比较所述决策函数与单点阈值;所述决策函数超出单点阈值时,统计多点异常数据,将所述统计的多点异常数据与多点阈值比较;根据比较结果确定所述流量数据的行为类型;

预先根据历史流量数据设定所述单点阈值。

上述方案中,所述根据比较结果确定所述流量数据的行为类型,包括:

如果所述决策函数未超出单点阈值,则确定所述流量数据为正常行为类型,并根据所述流量数据更新所述历史流量数据;

如果所述决策函数超出单点阈值,且所述多点异常数据超出多点阈值,则确定所述流量数据为异常行为类型;

如果所述决策函数超出单点阈值,所述多点异常数据未超出多点阈值,且所述流量数据属于所述指标基线白名单,则确定所述流量数据为正常行为类型,并根据所述流量数据更新所述单点阈值;

如果所述决策函数超出单点阈值,所述多点异常数据未超出多点阈值,且所述流量数据不属于所述指标基线白名单,则确定所述流量数据为异常行为类型。

上述方案中,所述方法还包括:上报所述异常行为类型,并根据所述流量数据是否属于所述指标基线白名单,确实异常行为的等级。

本发明实施例还提供了一种流量数据监测装置,所述装置包括:基线建立模块、第一确定模块、第二确定模块,其中,

所述基线建立模块,用于根据现有业务数据建立指标基线;

所述第一确定模块,用于对当前监测的流量数据与所述指标基线进行对比,确定所述流量数据的行为类型;

所述第二确定模块,用于对非异常行为类型的流量数据,采用时间序列分析,确定所述非异常行为类型的流量数据的行为类型。

上述方案中,所述基线建立模块具体用于:

根据现有业务内容和信息技术it资源类型,确定指标基线白名单;

其中,所述业务内容包括:业务种类、敏感数据、关键业务流程;所述it资源类型包括:安全设备、网络设备;根据已知威胁信息,确定指标基线黑名单;

其中,所述威胁信息包括信誉信息、攻击信息;所述信誉信息包括:恶意的ip地址、url和域名;所述攻击信息包括:攻击源、攻击工具、利用的漏洞信息。

上述方案中,所述第一确定模块具体用于:

将属于所述指标基线黑名单的流量数据,确定为异常行为类型;

将属于所述指标基线白名单的流量数据,确定为非异常行为类型;

将不属于所述指标基线白名单和所述指标基线黑名单的流量数据,确定为非异常行为类型。

上述方案中,所述第二确定模块具体用于:

采用ar模型进行时间序列分析;

根据预设的时间窗,确定ar预测模型,并计算所述流量数据检测点的观测值与预测值的残差;

根据所述残差,确定决策函数,比较所述决策函数与单点阈值;所述决策函数超出单点阈值时,统计多点异常数据,将所述统计的多点异常数据与多点阈值比较;根据比较结果确定所述流量数据的行为类型;

预先根据历史流量数据设定所述单点阈值。

本发明实施例所提供的流量数据监测方法和装置,根据现有业务数据建立指标基线;对当前监测的流量数据与所述指标基线进行对比,确定所述流量数据的行为类型;对非异常行为类型的流量数据,采用时间序列分析,确定所述非异常行为类型的流量数据的行为类型。如此,能对包含未知安全问题的流量数据进行判断,提高移动网络的安全性。

附图说明

图1为本发明实施例流量数据监测方法的流程示意图;

图2为本发明实施例采用时间序列分析流量数据的流程示意图;

图3为本发明实施例流量数据监测装置的组成结构示意图。

具体实施方式

本发明实施例中,根据现有业务数据建立指标基线;对当前监测的流量数据与所述指标基线进行对比,确定所述流量数据的行为类型;对非异常行为类型的流量数据,采用时间序列分析,确定所述非异常行为类型的流量数据的行为类型。

下面结合实施例对本发明再作进一步详细的说明。

本发明实施例提供的一种流量数据监测方法,如图1所示,所述方法包括:

步骤101:根据现有业务数据建立指标基线;

这里,所述指标基线是从表征一个对象或者环境的安全运行参数、状态参数中选取的关键性的指标,并设定这些指标的基线。实际应用中,可以对所有流量业务设定一个总的指标基线,所述指标基线可以包括:指标基线白名单,指标基线黑名单;设定总的指标基线时,可以针对已知业务数据提炼,确定已知业务数据中属于可以信任的数据,所述业务数据包括:业务种类、敏感数据、关键业务流程等信息,并建立起业务之间可信任的指标基线白名单,如将已知 的某个业务种类确定为指标基线白名单,或将某个业务流程确定为指标基线白名单;根据it资源类型,如:安全设备、网络设备等,建立设备之间可信任的指标基线白名单,如将某一类设备的标识确定为指标基线白名单;针对外部的攻击,可以通过收集威胁信息建立知识库的方式,确定指标基线黑名单;威胁信息一般包括信誉信息和攻击信息等;所述信誉信息包括:恶意的ip地址、url、域名等,比如c2服务器相关信息;所述攻击信息包括:攻击源、攻击工具、利用的漏洞信息等;这里,可以将已知恶意的ip地址,url、域名等确定为指标基线黑名单。

步骤102:对当前监测的流量数据与所述指标基线进行对比,确定所述流量数据的行为类型;

具体的,当流量数据到达时,可以将流量数据对象汇入待处理序列;根据现有业务数据提炼出业务之间可信任的指标基线白名单,以及从网络威胁信息获取的指标基线黑名单共同建立指标基线;然后将待处理序列的流量数据进行数据比对;

这里,可以将流量数据中包含的业务数据、发送所述流量数据的设备、发送所述流量数据的ip地址等与所述指标基线进行对比,确定流量数据是否属于指标基线白名单或指标基线黑名单。其中,所述流量数据经过与指标基线的比对,将属于指标基线黑名单的流量数据,确定为异常行为类型;将属于指标基线白名单的流量数据,确定为非异常行为类型;将既不属于指标基线白名单也不属于指标基线黑名单的流量数据,同样确定为非异常行为类型。

实际应用中,对于异常行为类型,可以直接进行异常报告,上报所述异常行为类型;并可以将属于黑名单的流量数据异常级别定为高级,提高处理优先级;对于非异常行为类型的流量数据,通过后续步骤继续分析。

步骤103:对非异常行为类型的流量数据,采用时间序列分析,确定所述非异常行为类型的流量数据的行为类型;

具体的,如图2所示,步骤103进一步包括:

步骤103a:根据流量模型预测当前检测点的观测值;

这里,流量模型可采用ar模型;

具体的,首先确定ar模型的阶数p,通常流量数据的观测值是不平稳的,可以假定这些流量数据序列在一定的时间窗口n内是平稳的,其中,时间窗口n可以取值20,ar模型的阶数p与时间窗口n满足约束条件:0≤p≤0.1n;由于n取值20,在此算法中p取值2。用流量数据的时间序列x1,x2,x3...xn拟合二阶ar模型,则ar(2)模型可以用表达式(1)表示:

其中,表示ar(2)的系数,et表示噪音,所述et是均值为零、方差为σe2的独立同分布高斯随机变量;

可以使用时间序列x1,x2,x3...xn来估计ar(2)模型参数和σe2

这里,的估算公式,可以用表达式(2)表示:

其中,t表示转置矩阵;

根据表达式(3)、表达式(4)、表达式(5),ar(2)模型的参数可以根据时间序列x1,x2,x3...xn估计得出;

将估算出的参数代入表达式(2),可以得到ar模型;

步骤103b:预测模型确定后,通过观测值与预测值的残差定义网络异常;

这里,在时间点…tn-1,tn,tn+1…的一个零均值化后的观测值序列为…x(tn-1),x(tn),x(tn+1)…,则可以根据ar模型拟合得到残差序列{…,et+1,et+2,et+3,…},et+i 可以用表达式(6)表示:

其中,表示时间点的预测值,一个检测点可以看作一个时间点;

步骤103c:确立当前检测点判异决策函数;

这里,决策函数wt(n+1),可以用表达式(7)表示:

其中,

步骤103d:计算当前检测点的单点阀值,判断当前检测点是否超过了单点阀值;如果否,则判断所述流量数据为正常行为类型,并存储当前检测点数据,作为历史数据内容,以便后续作为单点阀值的计算来源数据,自此,对所述流量数据的检测结束,可以进行下一个流量数据的检测;如果是,则进行下一步处理;

这里,通过决策函数判断是否异常,当wt(n+1)>u或wt(n+1)<-l时,是异常行为类型,否则,是非异常行为类型;其中,表示检测点的预测值,u和-l分别是根据历史流量数据取的决策函数单点阈值的上限和下限;

步骤103e:如果当前检测点超过了所述单点阀值时,计算出多点异常数据统计量;

通常情况下,单点的异常可能会是突发性的网络波动,如果真正的网络异常发生,则后续的检测点也会检测出异常,而且偏离程度较大;一般偏离比较大的情况,多点异常统计量都会呈指数2的形式迅速增长的;

这里,由{ζi}表示观测序列得到的残差序列,分别计算正统计量ζi的平均值及相应的标准差;分别表示{ζi}的正值和负值组成的序列,他们的个数分别是m和n,σ+和σ-分别表示他们的标准差,σ+和σ-,可以 分别有表达式(8)、表达式(9)、表达式(10)、表达式(11)表示:

步骤103f:判断多点异常数据是否超过了报警多点阀值,如果否,则更新单点阀值内容,并判断是否为数据是否为指标基线白名单数据,如果为指标基线白名单数据,则判断为正常行为类型,如果不是指标基线白名单数据,则报告此事件为异常行为类型;如果是,则报告此事件为异常行为类型;实际应用中,可以对异常行为类型进行分级,如此,可以判断异常处理的优先级;如:如果多点异常数据未超出报警多点阀值,且不是指标基线白名单数据,则报告此事件为中级异常行为类型;如果多点异常数据超出报警多点阀值,且为指标基线白名单数据,则报告此事件为中级异常行为类型;如果多点异常数据超出报警多点阀值,且不是指标基线白名单数据,则表明该流量数据属于危险数据的几率较高,此时可以报告此事件为高级异常行为类型,以提高处理优先等级。

这里,确定异常判断的多点阀值,多点阀值的选择对异常检测很重要,如果多点阀值太大或太小,都会直接导致漏报或是虚报的情况;多点异常数据统计量的多点阀值为:当ζ在范围内时,所述流量数据的行为确定为非异常行为类型;否则,所述流量数据行为确定为异常行为类型。

本发明实施例提供的一种流量数据监测的方法,如图3所示,所述装置包括:基线建立模块31、第一确定模块32、第二确定模块33,其中,

所述基线建立模块31,用于根据现有业务数据建立指标基线;

所述指标基线是从表征一个对象或者环境的安全运行参数、状态参数中选取的关键性的指标,并设定这些指标的基线。实际应用中,可以对所有流量业务设定一个总的指标基线,所述指标基线可以包括:指标基线白名单,指标基线黑名单;设定总的指标基线时,可以针对已知业务数据提炼,确定已知业务数据中属于可以信任的数据,所述业务数据包括:业务种类、敏感数据、关键业务流程等信息,并建立起业务之间可信任的指标基线白名单,如将已知的一个业务种类确定为指标基线白名单,或将某个业务流程确定为指标基线白名单;根据it资源类型,如:安全设备、网络设备等,建立设备之间可信任的指标基线白名单,如将某一类设备的标识确定为指标基线白名单;针对外部的攻击,可以通过收集威胁信息建立知识库的方式,确定指标基线黑名单;威胁信息一般包括信誉信息和攻击信息等;所述信誉信息包括:恶意的ip地址、url、域名等,比如c2服务器相关信息;所述攻击信息包括:攻击源、攻击工具、利用的漏洞信息等;这里,可以将恶意的ip地址,url、域名等确定为指标基线黑名单。

所述第一确定模块32,用于对当前监测的流量数据与所述指标基线进行对比,确定所述流量数据的行为类型;

具体的,当流量数据到达时,可以将流量数据对象汇入待处理序列;根据现有业务数据提炼出业务之间可信任的指标基线白名单,以及从网络威胁信息获取的指标基线黑名单共同建立指标基线;然后将待处理序列的流量数据进行数据比对;这里,可以将流量数据中包含的业务数据、发送所述流量数据的设备、发送所述流量数据的ip地址等与所述指标基线进行对比,确定流量数据是否属于指标基线白名单或指标基线黑名单。其中,所述流量数据经过与指标基线的比对,将属于指标基线黑名单的流量数据,确定为异常行为类型;将属于指标基线白名单的流量数据,确定为非异常行为类型;将既不属于指标基线白名单也不属于指标基线黑名单的流量数据,同样确定为非异常行为类型。实际应用中,对于异常行为类型,可以直接进行异常报告;上报所述异常行为类型;并可以将属于黑名单的流量数据的异常级别定为高级;对于非异常行为类型的 流量数据,通过后续模块继续分析。

所述第二确定模块33,用于对非异常行为类型的流量数据,采用时间序列分析,确定所述非异常行为类型的流量数据的行为类型;

所述第二确定模块33,具体用于:

根据流量模型预测当前检测点的观测值;这里,流量模型可采用ar模型;

具体的,首先确定ar模型的阶数p,通常流量数据的观测值是不平稳的,可以假定这些流量数据序列在一定的时间窗口n内是平稳的,其中,时间窗口n可以取值20,ar模型的阶数p与时间窗口n满足约束条件:0≤p≤0.1n,由于n取值20,在此算法中p取值2。用流量数据的时间序列x1,x2,x3...xn拟合二阶ar模型,则ar(2)模型可以用表达式(1)表示;其中,表示ar(2)的系数,et表示噪音,所述et是均值为零、方差为σe2的独立同分布高斯随机变量;

可以使用时间序列x1,x2,x3...xn来估计ar(2)模型参数和σe2

这里的估算公式,可以用表达式(2)表示;其中,t表示转置矩阵;

根据表达式(3)、表达式(4)、表达式(5),ar(2)模型的参数可以根据时间序列x1,x2,x3...xn估计得出;将估算出的参数代入表达式(2),可以得到ar模型。

预测模型确定后,通过观测值与预测值的残差定义网络异常;

这里,在时间点…tn-1,tn,tn+1…的一个零均值化后的观测值序列为…x(tn-1),x(tn),x(tn+1)…,则可以根据ar模型拟合得到残差序列{…,et+1,et+2,et+3,...},et+i可以用表达式(6)表示;其中,表示时间点的预测值,一个检测点可以看作一个时间点。

确立当前检测点判异决策函数;

这里,决策函数wt(n+1,可以用表达式(7)表示;其中,

计算当前检测点的单点阀值,判断当前检测点是否超过了单点阀值数;如果否,则判断所述流量数据为正常行为类型,并存储当前检测点数据,作为历史数据内容,以便后续作为单点阀值的计算来源数据,自此,对所述流量数据的检测结束,可以进行下一个流量数据的检测;如果是,则进行下一步处理;

这里,通过决策函数判断是否异常,当wt(n+1)>u或wt(n+1)<-l时,是异常行为类型,否则,是非异常行为类型;其中,表示检测点的预测值,u和-l分别是根据历史流量数据取的决策函数单点阈值的上限和下限。

如果当前检测点超过了所述单点阀值时,计算出多点异常数据统计量;

通常情况下,单点的异常可能会是突发性的网络波动,如果真正的网络异常发生,则后续的检测点也会检测出异常,而且偏离程度较大;一般偏离比较大的情况,多点异常统计量都会呈指数2的形式迅速增长的;

这里,由{ζi}表示观测序列得到的残差序列,分别计算正统计量ζi的平均值及相应的标准差;分别表示{ζi}的正值和负值组成的序列,他们的个数分别是m和n,σ+和σ-分别表示他们的标准差,σ+和σ-,可以分别有表达式(8)、表达式(9)、表达式(10)、表达式(11)表示。

判断多点异常数据是否超过了报警多点阀值,如果否,则更新单点阀值内容,并判断是否为数据是否为指标基线白名单数据,如果为指标基线白名单数据,则判断为正常行为类型,如果不是指标基线白名单数据,则报告此事件为异常行为类型;如果是,则报告此事件为异常行为类型;实际应用中,可以对异常行为类型进行分级,如此,可以判断异常处理的优先级;如:如果多点异常数据未超出报警多点阀值,且不是指标基线白名单数据,则报告此事件为中级异常行为类型;如果多点异常数据超出报警多点阀值,且为指标基线白名单数据,则报告此事件为中级异常行为类型;如果多点异常数据超出报警多点阀 值,且不是指标基线白名单数据,则表明该流量数据属于危险数据的几率较高,此时可以报告此事件为高级异常行为类型,以提高处理优先等级;

这里,确定异常判断的多点阀值,多点阀值的选择对异常检测很重要,如果多点阀值太大或太小,都会直接导致漏报或是虚报的情况;多点异常数据统计量的多点阀值为:当ζ在范围内时,所述流量数据的行为确定为非异常行为类型;否则,所述流量数据行为确定为异常行为类型。

在实际应用中,基线建立模块31、第一确定模块32、第二确定模块33可由核心网络系统的中央处理器(cpu)、微处理器(mpu)、数字信号处理器(dsp)、或现场可编程门阵列(fpga)等实现。

以上所述,仅为本发明的佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1