公开/公告号CN113094703A
专利类型发明专利
公开/公告日2021-07-09
原文格式PDF
申请/专利权人 北京六方云信息技术有限公司;北京六方云科技有限公司;
申请/专利号CN202110267964.2
申请日2021-03-11
分类号G06F21/55(20130101);G06F16/906(20190101);G06F16/951(20190101);G06F16/9535(20190101);G06F16/955(20190101);G06F40/126(20200101);G06F40/284(20200101);
代理机构11283 北京润平知识产权代理有限公司;
代理人肖冰滨;王晓晓
地址 100085 北京市海淀区上地信息路12号1幢2层C202室
入库时间 2023-06-19 11:45:49
技术领域
本发明涉及网络信息安全领域,具体地涉及一种针对web入侵检测的输出内容过滤方法以及一种针对web入侵检测的输出内容过滤系统。
背景技术
通常正常流量是大量重复性存在的,因此,在web入侵检测中,无论是用户访问非法网站,还是检测出现误报,都将导致大量相似的警告,而入侵行为则相对稀少。因此,通过url的聚类分析,可以识别大量相似行为,剩下的小部分的异常行为,再进行web入侵检测过滤。将相似数据过滤,留下不同且更可能是入侵行为的url,提高用户的使用体验。
url相似度计算不同于字符串相似度,路径相同的两个url,可能具体的参数有很大的区别,又或者是不同的站点但是里面的结构是相同的,都需要判定为相似。并且流量是大量重复性存在的,需要计算大量数据。因此,如何选取url的特征,计算url的相似程度,并根据相似程度快速有效的进行过滤,是非常必要的。
申请号为201611182696.X的发明专利公开了《一种基于相似度比较的URL去重方法和系统》专利中,将URL目录深度特征、URL一级目录特征、URL尾页特征等特征存储到布隆过滤器,通过查询布隆过滤器中对应类型的特征的bit位信息,若二者均为1,则认为二者为相似特征。但是只有目录深度、一级目录、尾页特征不够准确,很多url这几个特征可能相同但未必是相似的url,因此过滤效果不佳。
目前对于url相似度的计算方法中,存在以下几个缺点:
1、通常为两个url的比较,将特征值简单的设为0和1,当url数量较大时,比较更容易出现误差;
2、计算相似度大多采用编辑距离进行计算,复杂度比较高,当计算量较大时,效率较低,耗费大量时间和空间。
发明内容
本发明实施方式的目的是提供一种针对web入侵检测的输出内容过滤方法及系统,本方法使用训练好的TF-IDF模型计算待告警数据的TF-IDF特征矩阵来与历史数据的TF-IDT特征矩阵比较相似度,相似度越大说明待告警数据与历史数据越相似,是入侵行为的概率越小,需要被过滤,可以快速进行过滤,不影响整体程序的进程。
为了实现上述目的,本发明第一方面提供一种针对web入侵检测的输出内容过滤方法,所述方法包括:
对待告警数据进行分词,得到待告警数据对应的数据词条;
使用训练好的TF-IDF模型提取所述数据词条的TF-IDF特征矩阵;
计算所述数据词条的TF-IDF特征矩阵与训练集的TF-IDF特征矩阵的相似度;
若相似度大于或等于相似度阈值,则降低告警分数,否则保持告警分数不变;
所述告警分数表示所述待告警数据的告警等级。
进一步地,所述训练好的TF-IDF模型的训练步骤包括:
计算第一训练集中的URL数据间的相似度,得到不同类URL的对应的相似度矩阵;
逐一对各个所述相似度矩阵进行聚类,得到各个所述相似度矩阵对应的公共URL;
将各个所述相似度矩阵对应的公共URL合并为第二训练集;
使用第二训练集训练基础TF-IDF模型,得到训练好的TF-IDF模型;
所述训练集的TF-IDF特征矩阵通过以下方式得到:
使用训练好的TF-IDF模型从所述第二训练集中提取得到训练集的TF-IDF特征矩阵。TF-IDF特征矩阵表征了关键词在文档或者语料中的重要程度,将各种类型的URL提取出的公共URL用于训练TF-IDF模型,并提取TF-IDF特征矩阵,提取出的特征矩阵表征了不同类的重复流量的特性,待告警数据的TF-IDF特征矩阵也表征了待告警数据的特性。通过分类、聚类等步骤对URL进行多轮特征选择,得到的公共URL更具又代表性,更加准确。
进一步地,所述第一训练集包括设定数量的相似告警数据。
可选的,所述计算第一训练集中的URL数据间的相似度,得到不同类URL的对应的相似度矩阵,包括:
对第一训练集中的各URL数据进行分词,得到各URL数据对应的URL数据词条;
将各URL数据的URL数据词条个数和首字母对应的ASCII码值保存为特征;
将各URL数据的每个URL数据词条对应的ASCII码值相加,得到各URL数据对应的一维向量;
通过所述特征建立字典,将特征相同的URL数据划分为一类;
根据各URL数据对应的一维向量计算各类URL数据的相似度;
将同一类URL数据的相似度组成该类URL数据对应的相似度矩阵。通过分词个数,首个字符和ascii码值可以快速找到可能相似的数据,再将过滤后的数据进行进一步计算,这样避免数据过大导致的分词较多,造成后续计算得到的TF-IDF特征矩阵过大,计算困难的问题,也可以在初期就过滤掉一些没有很多相似url的数据,提高整体的效率。
可选的,所述逐一对各个所述相似度矩阵进行聚类,得到各个所述相似度矩阵对应的公共URL,包括:
逐一将各个相似度矩阵依据预设的密度值进行密度聚类;
记录同一相似度矩阵中密度大于密度阈值的所有URL数据的索引;
根据索引确定相似度矩阵对应URL簇的相同词条;
将所述相同词条合并为相似度矩阵对应的公共URL。根据同一个相似度矩阵内的数据在空间分布上的稠密程度划分为相似簇,再提取出该簇的公共URL,提取出的公共URL表征了该类URL的特征。
可选的,所述相似度包括余弦相似度、皮尔森相关系数、欧几里得距离。
本发明第二方面提供一种针对web入侵检测的输出内容过滤系统,所述系统包括:
分词单元,用于对待告警数据进行分词,得到待告警数据对应的数据词条;
TF-IDF特征矩阵提取单元,用于使用训练好的TF-IDF模型提取所述数据词条的TF-IDF特征矩阵;
过滤计算单元,用于计算所述数据词条的TF-IDF特征矩阵与训练集的TF-IDF特征矩阵的相似度,并降低相似度大于相似度阈值的待告警数据的告警分数,否则保持告警分数不变;所述告警分数表示所述待告警数据的告警等级。本系统能够快速进行过滤,不影响整体程序的进程。
可选的,所述系统还包括训练数据处理单元,用于对第一训练集中的URL数据进行处理得到第二训练集。训练数据处理单元用于处理训练数据,对于不同的用户,可以通过更新训练数据,重新训练得到更符合需求的TF-IDF模型和TF-IDF特征矩阵,系统适用性更强。
进一步地,所述训练数据处理单元包括:
分词模块,用于对第一训练集中的各URL数据进行分词,得到各URL数据对应的URL数据词条;
分类模块,用于将各URL数据的URL数据词条个数和首字母对应的ASCII码值相同的URL数据划分为同一类;
相似度矩阵计算模块,用于根据各URL数据的每个URL数据词条对应的ASCII码值相加得到的各URL数据对应的一维向量计算各类URL数据的相似度,将同一类URL数据的相似度组成该类URL数据对应的相似度矩阵;
聚类模块,用于逐一将各个相似度矩阵依据预设的密度值进行密度聚类,确定相似度矩阵对应URL簇的相同词条,以及将所述相同词条合并为相似度矩阵对应的公共URL;
第二训练集生成模块,用于将各个所述相似度矩阵对应的公共URL合并为第二训练集。
另一方面,本发明提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行本申请所述的针对web入侵检测的输出内容过滤方法。
通过上述技术方案,本方法通过对历史数据的聚类提取出大量相似URL的公共URL用于训练TF-IDF模型,提取TF-IDF特征矩阵,使用训练好的TF-IDF模型计算待告警数据的TF-IDF特征矩阵来与历史数据的TF-IDT特征矩阵比较相似度,相似度越大说明待告警数据与历史数据越相似,是入侵行为的概率越小,需要被过滤,可以快速进行过滤,不影响整体程序的进程。
本发明实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施方式,但并不构成对本发明实施方式的限制。在附图中:
图1是本发明一种实施方式提供的针对web入侵检测的输出内容过滤方法流程图;
图2是本发明一种实施方式提供的TF-IDF模型训练流程图;
图3是本发明一种实施方式提供的针对web入侵检测的输出内容过滤系统框图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
图1是本发明一种实施方式提供的针对web入侵检测的输出内容过滤方法流程图。如图1所示,所述方法包括:
对待告警数据进行分词,得到待告警数据对应的数据词条;
使用训练好的TF-IDF模型提取所述数据词条的TF-IDF特征矩阵;
计算所述数据词条的TF-IDF特征矩阵与训练集的TF-IDF特征矩阵的相似度;
若相似度大于或等于相似度阈值,则降低告警分数,否则保持告警分数不变;
所述告警分数表示所述待告警数据的告警等级。通过对历史数据的聚类,提取大量相似的URL特征,训练模型,提取用于参考的TF-IDF特征矩阵,实现在web入侵检测时,过滤掉大量相似的告警,提高入侵检测效率。
需要说明的是,告警分数表示了待告警数据的告警等级,当检测到相似度大于等于相似度阈值时,说明当前告警为重复告警,因此可以相对的减低告警分数,减少告警。
如图2所示,所述训练好的TF-IDF模型的训练步骤包括:
计算第一训练集中的URL数据间的相似度,得到不同类URL的对应的相似度矩阵,所述第一训练集包括设定数量的相似告警数据;
逐一对各个所述相似度矩阵进行聚类,得到各个所述相似度矩阵对应的公共URL;
将各个所述相似度矩阵对应的公共URL合并为第二训练集;
使用第二训练集训练基础TF-IDF模型,得到训练好的TF-IDF模型;
所述训练集的TF-IDF特征矩阵通过以下方式得到:
使用训练好的TF-IDF模型从所述第二训练集中提取得到训练集的TF-IDF特征矩阵。TF-IDF特征矩阵表征了关键词在文档或者语料中的重要程度,将各种类型的URL提取出的公共URL用于训练TF-IDF模型,并提取TF-IDF特征矩阵,提取出的特征矩阵表征了不同类的重复流量的特性,待告警数据的TF-IDF特征矩阵也表征了待告警数据的特性。通过分类、聚类等步骤对URL进行多轮特征选择,得到的公共URL更具又代表性,更加准确。
可选的,所述计算第一训练集中的URL数据间的相似度,得到不同类URL的对应的相似度矩阵,包括:
对第一训练集中的各URL数据进行分词,得到各URL数据对应的URL数据词条;
将各URL数据的URL数据词条个数和首字母对应的ASCII码值保存为特征;
将各URL数据的每个URL数据词条对应的ASCII码值相加,得到各URL数据对应的一维向量;
通过所述特征建立字典,将特征相同的URL数据划分为一类;
根据各URL数据对应的一维向量计算各类URL数据的相似度;
将同一类URL数据的相似度组成该类URL数据对应的相似度矩阵。通过分词个数,首个字符和ascii码值可以快速找到可能相似的数据,再将过滤后的数据进行进一步计算,这样避免数据过大导致的分词较多,造成后续计算得到的TF-IDF特征矩阵过大,计算困难的问题,也可以在初期就过滤掉一些没有很多相似url的数据,提高整体的效率。
在本发明的一个实施例中,通过特殊字符对URL数据进行分词。特殊字符如”/”,”.”,””,”:”,”?”等,例如:/ni123/fsdfs/123.jpg?name:1,分词结果为“ni123”“fsdfs”“123”“jpg”“name”“1”。
可选的,所述逐一对各个所述相似度矩阵进行聚类,得到各个所述相似度矩阵对应的公共URL,包括:
逐一将各个相似度矩阵依据预设的密度值进行密度聚类,预设的密度值根据需要的过滤效果来设定;
记录同一相似度矩阵中密度大于密度阈值的所有URL数据的索引;
根据索引确定相似度矩阵对应URL簇的相同词条;
将所述相同词条合并为相似度矩阵对应的公共URL。根据同一个相似度矩阵内的数据在空间分布上的稠密程度划分为相似簇,再提取出该簇的公共URL,提取出的公共URL表征了该类URL的特征,通过分类、聚类等步骤对URL进行多轮特征选择,得到的公共URL更具又代表性,更加准确。
在一些实施例中采用DBSCAN聚类算法进行密度聚类,在其他一些实施例中,采用MDCA聚类算法进行聚类。
TF-IDF是一种针对关键词的统计分析方法,用于评估一个词对一个文件集或者一个语料库的重要程度。一个词的重要程度跟它在文章中出现的次数成正比,跟它在语料库出现的次数成反比。这种计算方式能有效避免常用词对关键词的影响,提高了关键词与文章之间的相关性。本发明利用TF-IDF模型计算得到的特征矩阵中的词频特征,TF-IDF特征矩阵记录了训练集中的大量重复正样本都有哪些词,依据TF-IDF特征矩阵对待告警数据进行去重过滤,提升去重准确性,降低重复数据量。
可选的,所述相似度包括余弦相似度、皮尔森相关系数、欧几里得距离。
在本发明的一个最优方案中,采用余弦相似度来表征第一训练集中的URL数据间的相似度。
余弦相似度,是通过计算两个向量的夹角余弦值来评估他们的相似度。与欧几里德距离类似,基于余弦相似度的计算方法也是把特征作为n-维坐标系中的一个点,通过连接这个点与坐标系的原点构成一条直线(向量),两个url之间的相似度值就是两条直线(向量)间夹角的余弦值。因为连接代表url的点与原点的直线都会相交于原点,夹角越小代表两个url越相似,夹角越大代表两个url的相似度越小。
相比于莱文斯坦距离,余弦相似度计算速度快,复杂度低,不会被词的顺序影响。更适用于url可能存在的路径相同的两个url,具体的参数有很大的区别或者参数顺序不用,不同的站点但是里面的结构是相同的等情况。并且训练好模型后可以快速在输出时进行过滤,不影响整体程序的进程。
本发明第二方面提供一种针对web入侵检测的输出内容过滤系统,如图3所示,所述系统包括:
分词单元,用于对待告警数据进行分词,得到待告警数据对应的数据词条;
TF-IDF特征矩阵提取单元,用于使用训练好的TF-IDF模型提取所述数据词条的TF-IDF特征矩阵;
过滤计算单元,用于计算所述数据词条的TF-IDF特征矩阵与训练集的TF-IDF特征矩阵的相似度,并降低相似度大于相似度阈值的待告警数据的告警分数,否则保持告警分数不变;所述告警分数表示所述待告警数据的告警等级。本系统能够快速进行过滤,不影响整体程序的进程。
在一些实施例中,所述系统还包括训练数据处理单元,用于对第一训练集中的URL数据进行处理得到第二训练集。训练数据处理单元用于处理训练数据,对于不同的用户,可以通过更新训练数据,重新训练得到更符合需求的TF-IDF模型和TF-IDF特征矩阵,系统适用性更强。
可选的,所述训练数据处理单元包括:
分词模块,用于对第一训练集中的各URL数据进行分词,得到各URL数据对应的URL数据词条;
分类模块,用于将各URL数据的URL数据词条个数和首字母对应的ASCII码值相同的URL数据划分为同一类;
相似度矩阵计算模块,用于根据各URL数据的每个URL数据词条对应的ASCII码值相加得到的各URL数据对应的一维向量计算各类URL数据的相似度,将同一类URL数据的相似度组成该类URL数据对应的相似度矩阵;
聚类模块,用于逐一将各个相似度矩阵依据预设的密度值进行密度聚类,确定相似度矩阵对应URL簇的相同词条,以及将所述相同词条合并为相似度矩阵对应的公共URL;
第二训练集生成模块,用于将各个所述相似度矩阵对应的公共URL合并为第二训练集。
另一方面,本发明提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行本申请所述的针对web入侵检测的输出内容过滤方法。
本领域技术人员可以理解实现上述实施方式的方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本发明各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上结合附图详细描述了本发明的可选实施方式,但是,本发明实施方式并不限于上述实施方式中的具体细节,在本发明实施方式的技术构思范围内,可以对本发明实施方式的技术方案进行多种简单变型,这些简单变型均属于本发明实施方式的保护范围。另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施方式对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施方式的思想,其同样应当视为本发明实施方式所公开的内容。
机译: 移动终端和提供与该广播内容有关的Web信息的方法,能够根据已确定的分类规则输出与广播内容有关的Web信息
机译: 计划表,在Web服务器上的主页图片中生成,针对自动邮件传输进行了编程,从而预先通知了简单的邮件,包括预先安排的时间,会议地点,消息,以及如需提前处理的永久信息,请注意以下事项:已将条目和内容输入到Internet Web服务器上的主页图片中生成的时间表中
机译: 数字内容编辑设备,数字内容回放设备,数字内容解密设备,Web内容回放设备,Web内容解密设备,数字内容加密/解密系统和数字内容