一种基于大数据的网络安全预警方法与系统与流程

文档序号:12068181阅读:322来源:国知局
一种基于大数据的网络安全预警方法与系统与流程

本发明涉及一种基于大数据的网络安全预警方法与系统。



背景技术:

当代信息技术的发展推动了数据的产生、收集、传输、共享与分析,使得科学与工程研究日益成为数据密集型的工作。人类社会的信息化程度越来越高,整个社会对网络信息的依赖程度也越来越高,从而网络安全的重要性也越来越高;但是,伴随着网络流量的日益增加,网络违法、突发事件层出不穷,给国家安全、社会稳定、人民利益造成重大危害。因此,对网络安全进行监控预警,对于及时处理网络违法、突发事件,国家社会稳定,以及人民利益具有十分重要的作用。

传统的信息安全防护体系采用防火墙技术和入侵检测技术,已无法阻止对应用层等深层的攻击行为,无法实现对攻击行为的实时阻断。因此,为保证网络的有效安全性,入侵防御系统应运而生。入侵防御系统对数据包进行逐个字节检查,阻止数据链路层至应用层之间的攻击行为。当发现新的攻击手段后,入侵防御系统就会创建对应的新的过滤器。有效保证网络的安全性。然而,现有技术中的入侵防御系统的安全策略均为用户事先手动配置且配置后为固定不变的,而防护链路的实际流量则是实时变化的。如果配置的安全策略的安全等级较低,虽然可以保证处理效率,但当链路流量较小时,则会造成系统资源的闲置;如果配置的安全策略的安全等级较高,虽然可以保证网络的安全,但当链路流量较大时,则会造成链路带宽的限制,影响用户正常使用业务。

与此同时,随着用户数据的容量和类型的增长,对用户数据进行分析、追踪潜在的问题、发现错误变得越来越难,尤其是在多用户相关性分析出现之后。即便在最佳状态下,也需要经验丰富的操作人员跟踪事件链、过滤噪音,并最终诊断出导致复杂问题产生的根本原因。海量的用户数据对用户分析处理的效率提出了更高的要求,使得传统的用户数据存储和分析方法已经不能胜任了。随着大数据时代的来临,大数据分析也应运而生。大数据分析是指对规模巨大的数据进行分析。大数据分析基于数据可视化可以直观的展示数据,基于数据挖掘可让我们深入数据内部去挖掘价值。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种基于大数据的网络安全预警方法与系统,一方面根据网络安全基础数据建立网络风险信息识别模型,另一方面汇集网络用户的正常操作行为,构建用户操作行为序列库,通过风险信息识别模型和用户操作行为序列库对实时信息进行综合分析进而准确实现了网络安全预警。

本发明的目的是通过以下技术方案来实现的:一种基于大数据的网络安全预警方法,包括以下步骤:

S1.进行网络安全基础数据提取,并对提取的数据进行大数据分析,建立网络风险信息识别模型;

S2.汇集网络用户的正常操作行为,构建用户操作行为序列库;

S3.采集网络安全的实时信息,输入风险信息识别模型,判断实时信息是否安全:

(1)如果实时信息安全,进入步骤S4;

(2)如果实时信息不安全,进入步骤S5;

S4.提取实时信息的用户操作行为序列,与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果,根据匹配结果判断用户操作行为是否具有威胁:

(1)如果用户操作行为具有威胁,进入步骤S5;

(2)如果用户操作行为不具有威胁,返回步骤S3进行下一条实时信息的采集和判断;

S5.将对应的实时信息进行标记,并关联对应的IP、用户虚拟账号和用户实际地理位置,进行网络安全预警,并返回步骤S3,继续进行下一条实时信息的采集和判断。

进一步地,所述的步骤S1包括以下子步骤:

S11.提取网络安全基础数据;

S12.对提取的网络安全信息进行聚类和筛选,得到可疑特征数据簇;

S13.将可疑特征数据簇交由人工进行判断,根据判断结果,对可疑特征数据簇中的每一条数据用标签x进行标记;x为0表示正常数据,x为1表示风险数据;

S14.建立风险信息识别模型,并初始化模型参数{m1,m2,m3,...,mi,...,mn},mi表示第i个模型参数值,n表示模型参数的个数;

S15.根据可疑特征数据簇中的数据对建立的模型进行训练:

依次提取可疑特征数据簇中的每一条数据输入模型,由模型对其检测得到检测参数y;

计算检测参数y与对应数据标签x的差值:β=|x-y|,记为误差;

利用误差β对模型参数进行调整,利用调整后的模型进行下一次检测;

当β连续N次小于预设阈值时,定义模型训练成熟,存储成熟模型的参数。

进一步地,所述的步骤S2包括以下子步骤:

S21.探测网络用户的正常操作行为;

S22.利用串表压缩算法提取所述正常操作行为中的序列模式;

S23.建立行为列表,判断提取出的序列模式是否存在于行为列表中,若否,则将所述序列模式记录在所述行为列表中,并将所述序列模式的出现次数设为1;若是,则将所述序列模式的累计出现次数加1;

S24.建立用户操作行为序列库D,判断所述序列模式的累计次数是否大于等于预设阈值,若是,则将所述用户的操作行为作为有效行为加入用户操作行为序列库D;

S25.去除所述用户操作行为序列库中的冗余行为序列,优化所述用户操作行为序列库:

计算用户操作行为序列库D中的任一序列Pi与用户操作行为序列库D中其余序列的编辑距离,将编辑距离为1的所有序列构成候选子集合Si;其中,所述编辑距离为两个序列之间,由一个序列转成另一个序列所需的最少编辑操作次数;

在所述候选子集合Si中提取出权值与序列长度之积最大的序列模式,并去除其余序列;

对于序列库中每个序列重复上述过程,提取出出现频次最高且长度最大的序列,构成优化后的用户操作行为序列库。

进一步地,所述的步骤S3包括以下子步骤:

S31.采集网络安全的实时数据,输入风险信息识别模型中,模型对数据进行风险预测得到预测值y1;

S32.将预测值y1进行标准化,得到y2:

S33.根据y2的值判断实时信息是否安全:

(1)如果y2=0,则实时信息安全,进入步骤S4;

(2)如果y2=1,则实时信息不安全,进入步骤S5。

进一步地,所述的步骤S4包括以下子步骤:

S41.基于大数据方法提取用户操作行为序列;

S42.将提取的所述用户操作行为序列与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果,根据匹配结果判断用户操作行为是否具有威胁:

(1)如果用户操作行为具有威胁,进入步骤S5;

(2)如果用户操作行为不具有威胁,返回步骤S3进行下一条实时信息的采集和判断;

一种基于大数据的网络安全预警系统,包括:

风险信息识别模型构建模块,用于进行网络安全基础数据提取,并对提取的数据进行大数据分析,建立网络风险信息识别模型;

用户操作行为序列库构建模块,用于汇集网络用户的正常操作行为,构建用户操作行为序列库;

实时信息安全判断模块,用于根据风险信息识别模型,对实时信息的安全性进行判断;

用户操作行为判断模块,用于提取实时信息的用户操作行为序列,与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果,根据匹配结果判断用户操作行为是否具有威胁;

安全预警模块,用于在实时信息不安全或者用户操作行为具有威胁时,进行网络安全预警。

进一步地,所述的风险信息识别模型构建模块包括:

数据提取单元,用于提取网络安全基础数据;

聚类单元,用于对提取的网络安全信息进行聚类和筛选,得到可疑特征数据簇;

判断标记单元,用于将可疑特征数据簇交由人工进行判断,根据判断结果,对可疑特征数据簇中的每一条数据进行标记;

模型建立单元,用于建立风险信息识别模型,并初始化模型参数;

模型训练单元,用于利用标记后的可以特征数据簇对建立的模型进行训练,得到成熟模型。

进一步地,所述的用户操作行为序列库构建模块包括:

数据采集单元,用于探测网络用户的正常操作行为;

序列模式提取单元,用于利用串表压缩算法提取所述正常操作行为中的序列模式;

行为列表构建单元,用于建立行为列表,判断提取出的序列模式是否存在于行为列表中,若否,则将所述序列模式记录在所述行为列表中,并将所述序列模式的出现次数设为1;若是,则将所述序列模式的累计出现次数加1;

序列库构建单元,用于建立用户操作行为序列库,判断行为列表中的序列模式累计次数是否大于等于预设阈值,若是,则将所述用户的操作行为作为有效行为加入用户操作行为序列库;

优化单元,用于去除所述用户操作行为序列库中的冗余行为序列,优化所述用户操作行为序列库。

进一步地,所述的实时信息安全判断模块包括:

采集单元,用于采集网络实时信息;

输入单元,用于将采集到的实时信息输入风险信息识别模型;

判断单元,用于根据风险信息识别模型输出的结果对实时信息的安全性进行判断。

进一步地,所述的用户操作行为判断模块包括:

行为序列提取单元,用于通过大数据方法提取实时信息对应的用户操作行为序列;

匹配分析单元,用于将提取的所述用户操作行为序列与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配分析结果;

行为判断单元,用于根据匹配结果判断用户操作行为是否具有威胁。

本发明的有益效果是:一方面根据网络安全基础数据建立网络风险信息识别模型,另一方面汇集网络用户的正常操作行为,构建用户操作行为序列库,通过风险信息识别模型和用户操作行为序列库对实时信息进行综合分析进而准确实现了网络安全预警。同时本发明在用户操作行为的分析过程,基于大数据行为序列分析来实现,对于高级持续性渗透攻击具有特别显著的安全预警效果。

附图说明

图1为本发明的流程图;

图2为本发明的系统原理框图。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。

如图1所示,一种基于大数据的网络安全预警方法,包括以下步骤:

S1.进行网络安全基础数据提取,并对提取的数据进行大数据分析,建立网络风险信息识别模型;

S2.汇集网络用户的正常操作行为,构建用户操作行为序列库;

S3.采集网络安全的实时信息,输入风险信息识别模型,判断实时信息是否安全:

(1)如果实时信息安全,进入步骤S4;

(2)如果实时信息不安全,进入步骤S5;

S4.提取实时信息的用户操作行为序列,与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果,根据匹配结果判断用户操作行为是否具有威胁:

(1)如果用户操作行为具有威胁,进入步骤S5;

(2)如果用户操作行为不具有威胁,返回步骤S3进行下一条实时信息的采集和判断;

S5.将对应的实时信息进行标记,并关联对应的IP、用户虚拟账号和用户实际地理位置,进行网络安全预警,并返回步骤S3,继续进行下一条实时信息的采集和判断。

具体地,所述的步骤S1包括以下子步骤:

S11.提取网络安全基础数据;

S12.对提取的网络安全信息进行聚类和筛选,得到可疑特征数据簇;

S13.将可疑特征数据簇交由人工进行判断,根据判断结果,对可疑特征数据簇中的每一条数据用标签x进行标记;x为0表示正常数据,x为1表示风险数据;

S14.建立风险信息识别模型,并初始化模型参数{m1,m2,m3,...,mi,...,mn},mi表示第i个模型参数值,n表示模型参数的个数;

S15.根据可疑特征数据簇中的数据对建立的模型进行训练:

依次提取可疑特征数据簇中的每一条数据输入模型,由模型对其检测得到检测参数y;

计算检测参数y与对应数据标签x的差值:β=|x-y|,记为误差;

利用误差β对模型参数进行调整,利用调整后的模型进行下一次检测;

当β连续N次小于预设阈值时,定义模型训练成熟,存储成熟模型的参数。

具体地,所述的步骤S2包括以下子步骤:

S21.探测网络用户的正常操作行为;

S22.利用串表压缩算法提取所述正常操作行为中的序列模式;

S23.建立行为列表,判断提取出的序列模式是否存在于行为列表中,若否,则将所述序列模式记录在所述行为列表中,并将所述序列模式的出现次数设为1;若是,则将所述序列模式的累计出现次数加1;

S24.建立用户操作行为序列库D,判断所述序列模式的累计次数是否大于等于预设阈值,若是,则将所述用户的操作行为作为有效行为加入用户操作行为序列库D;

S25.去除所述用户操作行为序列库中的冗余行为序列,优化所述用户操作行为序列库:

计算用户操作行为序列库D中的任一序列Pi与用户操作行为序列库D中其余序列的编辑距离,将编辑距离为1的所有序列构成候选子集合Si;其中,所述编辑距离为两个序列之间,由一个序列转成另一个序列所需的最少编辑操作次数;

在所述候选子集合Si中提取出权值与序列长度之积最大的序列模式,并去除其余序列;

对于序列库中每个序列重复上述过程,提取出出现频次最高且长度最大的序列,构成优化后的用户操作行为序列库。

具体地,所述的步骤S3包括以下子步骤:

S31.采集网络安全的实时数据,输入风险信息识别模型中,模型对数据进行风险预测得到预测值y1;

S32.将预测值y1进行标准化,得到y2:

S33.根据y2的值判断实时信息是否安全:

(1)如果y2=0,则实时信息安全,进入步骤S4;

(2)如果y2=1,则实时信息不安全,进入步骤S5。

具体地,所述的步骤S4包括以下子步骤:

S41.基于大数据方法提取用户操作行为序列;

提取中间结果(key,Values),所述key值是用户ID,Values值是行为序列和出现频次的组合;根据所述中间结果(key,Values)计算出一个特定用户所有行为序列之间的编辑距离;得到用户ID所对应的长度最长且出现频次最高的操作行为序列;

S42.将提取的所述用户操作行为序列与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果,根据匹配结果判断用户操作行为是否具有威胁:

(1)如果用户操作行为具有威胁,进入步骤S5;

(2)如果用户操作行为不具有威胁,返回步骤S3进行下一条实时信息的采集和判断;

如图2所示,一种基于大数据的网络安全预警系统,包括:

风险信息识别模型构建模块,用于进行网络安全基础数据提取,并对提取的数据进行大数据分析,建立网络风险信息识别模型;

用户操作行为序列库构建模块,用于汇集网络用户的正常操作行为,构建用户操作行为序列库;

实时信息安全判断模块,用于根据风险信息识别模型,对实时信息的安全性进行判断;

用户操作行为判断模块,用于提取实时信息的用户操作行为序列,与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配结果,根据匹配结果判断用户操作行为是否具有威胁;

安全预警模块,用于在实时信息不安全或者用户操作行为具有威胁时,进行网络安全预警。

具体地,所述的风险信息识别模型构建模块包括:

数据提取单元,用于提取网络安全基础数据;

聚类单元,用于对提取的网络安全信息进行聚类和筛选,得到可疑特征数据簇;

判断标记单元,用于将可疑特征数据簇交由人工进行判断,根据判断结果,对可疑特征数据簇中的每一条数据进行标记;

模型建立单元,用于建立风险信息识别模型,并初始化模型参数;

模型训练单元,用于利用标记后的可以特征数据簇对建立的模型进行训练,得到成熟模型。

具体地,所述的用户操作行为序列库构建模块包括:

数据采集单元,用于探测网络用户的正常操作行为;

序列模式提取单元,用于利用串表压缩算法提取所述正常操作行为中的序列模式;

行为列表构建单元,用于建立行为列表,判断提取出的序列模式是否存在于行为列表中,若否,则将所述序列模式记录在所述行为列表中,并将所述序列模式的出现次数设为1;若是,则将所述序列模式的累计出现次数加1;

序列库构建单元,用于建立用户操作行为序列库,判断行为列表中的序列模式累计次数是否大于等于预设阈值,若是,则将所述用户的操作行为作为有效行为加入用户操作行为序列库;

优化单元,用于去除所述用户操作行为序列库中的冗余行为序列,优化所述用户操作行为序列库。

具体地,所述的实时信息安全判断模块包括:

采集单元,用于采集网络实时信息;

输入单元,用于将采集到的实时信息输入风险信息识别模型;

判断单元,用于根据风险信息识别模型输出的结果对实时信息的安全性进行判断。

进一步地,所述的用户操作行为判断模块包括:

行为序列提取单元,用于通过大数据方法提取实时信息对应的用户操作行为序列;

匹配分析单元,用于将提取的所述用户操作行为序列与所述用户操作行为序列库中的行为序列进行匹配分析,输出匹配分析结果;

行为判断单元,用于根据匹配结果判断用户操作行为是否具有威胁。

本发明一方面根据网络安全基础数据进行大数据分析,建立网络风险信息识别模型,另一方面汇集网络用户的正常操作行为,进行大数据分析,构建用户操作行为序列库,通过风险信息识别模型和用户操作行为序列库对实时信息进行综合处理,进而准确实现了基于大数据的网络安全预警。

同时本发明对于高级持续性渗透攻击(简称APT攻击,Advanced Persistent Threat)具有特别显著的安全预警效果:APT攻击具有持续时间长、攻击特征难以提取、单点隐蔽性强以及攻击渠道多样化的特点,防范难度很大。目前针对APT攻击的防范措施大多针对网络层的威胁,而APT攻击范围包括物理层、链路层及应用层等整个信息系统,现有的防范措施只是简单的提升防护壁垒,仅仅提高了攻击者的成本,无法实现对APT攻击的全面感知;而对于APT攻击的威胁,如果仅仅通过建模检测来实现,准确率非常低:在本申请中,通过探测用户的操作行为,构建用户操作行为序列库,去除用户操作行为序列库中的冗余行为序列,对用户操作行为序列库进行优化,然后再基于大数据方法提取用户操作行为序列,将提取的用户操作行为序列与构建的用户操作行为序列库中的行为序列进行匹配分析,当用户操作行为序列与用户操作行为序列库中定义的行为相符合时,则判断该用户行为是正常行为,反之,则判断该用户行为为非正常行为,将作为威胁行为输出。提高检测威胁的准确率,进而构建了安全高效的网络主动防御体系,有效克服APT攻击对网络安全造成的威胁。

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