一种Web异常检测方法和装置与流程

文档序号:12752552阅读:199来源:国知局
一种Web异常检测方法和装置与流程
本发明涉及网络
技术领域
,特别是涉及一种Web异常检测方法和装置。
背景技术
:随着网络技术的不断发展,Web应用安全问题也日益得到重视。互联网的开放性以及丰富的Java脚本和SQL(结构化查询语言,StructuredQueryLanguage)语言,给黑客提供了Web攻击的可乘之机。为了防御Web攻击,需要对输入到网站上的流量进行检测,以检测出对网站攻击的异常流量。目前,可以采用如下两种方法检测Web攻击:渗透测试方法和基于规则的检测方法。其中,渗透测试方法是一种黑盒测试方法,通过模拟正常的安全攻击行为,并对攻击行为的响应结果进行分析,从而确定是否存在安全漏洞,以在发现问题时可以及时进行修补。然而,目前尚且没有成熟的理论模式来优化渗透测试流程,也没有适当的理论方法来指导生成优化的测试用例集合,因此渗透测试通常具有较大的盲目性,导致渗透测试的效率和准确度较低。基于规则的检测方法包括的主要技术有:基于统计方法的入侵检测技术,基于神经网络的入侵检测技术,匹配WAF规则等等。基于规则的检测方法需要为不同的入侵者和不同的系统建立特定的检测规则。然而,对于还未建立检测规则的隐蔽性较高的攻击行为,通常无法进行检测。技术实现要素:鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种Web异常检测方法和装置。依据本发明的一个方面,提供了一种Web异常检测方法,包括:依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值;其中,所述分类检测模型为依据历史URL训练得到;依据所述第一概率值和所述第二概率值,确定所述待检测的URL对应的异常类别。可选地,所述分类检测模型包括至少一个子分类检测模型,且所述子分类检测模型与所述历史URL的异常类别以及所述历史URL的特征关键词集合相对应;其中,所述特征关键词集合中包括从所述历史URL中提取的至少一个特征关键词。可选地,所述依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值的步骤,包括:依据所述子分类检测模型对应的特征关键词集合,提取所述待检测的URL对应的特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计所述特征关键词在所述待检测的URL中出现的频次;将所述特征关键词集合和所述频次输入与所述特征关键词集合相对应的子分类检测模型,得到所述目标URL对应所述子分类检测模型的异常类别的第一概率值,以及所述目标URL对应正常类别的第二概率值。可选地,通过如下步骤建立所述分类检测模型:收集预设时间段内的历史URL,所述历史URL包括:正常URL和异常URL;从所述历史URL中提取特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;获取所述特征关键词分别在所述正常URL和所述异常URL中出现的频次;依据决策树对所述特征关键词和所述频次训练得到分类检测模型;其中,所述分类检测模型中包括与已知异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的异常类别以及特征关键词集合。可选地,所述收集预设时间段内的历史URL的步骤,包括:获取收集的预设时间段内的历史URL对应的关联四元组;其中,所述关联四元组中包括所述历史URL对应的源地址信息、源端口信息、目的地址信息、目的端口信息;依据所述关联四元组将所述历史URL标记为正常URL或者异常URL。可选地,所述依据所述关联四元组将所述历史URL标记为正常URL或者异常URL的步骤,包括:获取所述历史URL对应的关联四元组;在所述历史URL与预置的URL白名单相匹配时,将所述历史URL标记为正常URL;在所述历史URL与预置的URL黑名单相匹配,或者所述关联四元组与预置的四元组黑名单相匹配时,将所述历史URL标记为异常URL。可选地,所述从所述历史URL中提取特征关键词集合的步骤,包括:对标记后的历史URL进行解析转换,得到转换后的字符串;统计所述转换后的字符串中各关键词出现的频次;依据所述各关键词出现的频次,确定所述历史URL对应的特征关键词集合;其中,所述特征关键词集合中包括满足预置频次的关键词。可选地,所述方法还包括:在得到所述待检测的URL对应的异常类别之后,对所述异常类别进行标注;依据标注后的目标URL对所述分类检测模型进行调整。根据本发明的另一方面,提供了一种Web异常检测装置,包括:检测模块,用于依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值;其中,所述分类检测模型为依据历史URL训练得到;确定模块,用于依据所述第一概率值和所述第二概率值,确定所述待检测的URL对应的异常类别。可选地,所述分类检测模型包括至少一个子分类检测模型,且所述子分类检测模型与所述历史URL的异常类别以及所述历史URL的特征关键词集合相对应;其中,所述特征关键词集合中包括从所述历史URL中提取的至少一个特征关键词。可选地,所述检测模块,包括:提取子模块,用于依据所述子分类检测模型对应的特征关键词集合,提取所述待检测的URL对应的特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计子模块,用于统计所述特征关键词在所述待检测的URL中出现的频次;检测子模块,用于将所述特征关键词集合和所述频次输入与所述特征关键词集合相对应的子分类检测模型,得到所述目标URL对应所述子分类检测模型的异常类别的第一概率值,以及所述目标URL对应正常类别的第二概率值。可选地,所述装置还包括:分类检测模型建立模块,用于建立所述分类检测模型;所述分类检测模型建立模块,包括:收集子模块,用于收集预设时间段内的历史URL,所述历史URL包括:正常URL和异常URL;提取子模块,用于从所述历史URL中提取特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计子模块,用于获取所述特征关键词分别在所述正常URL和所述异常URL中出现的频次;训练子模块,用于依据决策树对所述特征关键词和所述频次训练得到分类检测模型;其中,所述分类检测模型中包括与已知异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的异常类别以及特征关键词集合。可选地,所述收集子模块,包括:获取单元,用于获取收集的预设时间段内的历史URL对应的关联四元组;其中,所述关联四元组中包括所述历史URL对应的源地址信息、源端口信息、目的地址信息、目的端口信息;标记单元,用于依据所述关联四元组将所述历史URL标记为正常URL或者异常URL。可选地,所述标记单元,包括:四元组获取子单元,用于获取所述历史URL对应的关联四元组;第一标记子单元,用于在所述历史URL与预置的URL白名单相匹配时,将所述历史URL标记为正常URL;第二标记子单元,用于在所述历史URL与预置的URL黑名单相匹配,或者所述关联四元组与预置的四元组黑名单相匹配时,将所述历史URL标记为异常URL。可选地,所述提取子模块,包括:转换单元,用于对标记后的历史URL进行解析转换,得到转换后的字符串;统计单元,用于统计所述转换后的字符串中各关键词出现的频次;确定单元,用于依据所述各关键词出现的频次,确定所述历史URL对应的特征关键词集合;其中,所述特征关键词集合中包括满足预置频次的关键词。可选地,所述装置还包括:标注模块,用于在得到所述待检测的URL对应的异常类别之后,对所述异常类别进行标注;调整模块,用于依据标注后的目标URL对所述分类检测模型进行调整。根据本发明实施例提供的一种Web异常检测方法和装置,通过预先建立的分类检测模型,确定所述待检测的URL对应的异常类别,由于所述分类检测模型为依据预设时间段内的历史URL训练得到,因此可以保证异常分类检测的准确性。此外,在识别待检测的URL对应的异常类别之后,如果对识别结果不满意,可以对识别的异常类别进行标注,并且将标注后的URL作为训练数据加入到训练集中,随着训练数据量的增加,分类检测模型可以通过自主学习的方式学习到之前没有的分类检测规则,从而可以对分类检测模型不断进行优化和调整,逐步提高检测的准确性,进而可以解决现有技术中基于规则的检测方法无法检测未建立检测规则的攻击行为的问题。附图说明通过阅读下文可选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出可选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本发明一个实施例的一种Web异常检测方法的步骤流程图;图2示出了本发明一个实施例的一种建立所述分类检测模型的步骤流程图;图3示出了根据本发明一个实施例的一种Web异常检测装置的结构框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。方法实施例一参照图1,示出了根据本发明一个实施例的一种Web异常检测方法的步骤流程图,具体可以包括:步骤101、依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值;其中,所述分类检测模型为依据历史URL训练得到;本发明实施例可适用于对web数据流进行异常检测,以确定当前Web数据流中是否存在异常访问数据,进而可以及时发现Web网络中出现的攻击行为,提高识别异常访问数据的准确性和Web网络的安全性。也即,本发明实施例中待检测的URL可以来源于待检测的web数据流,当然,本发明实施例对于待检测的具体URL不加以限制。在本发明实施例中,所述分类检测模型可以包括至少一个子分类检测模型,且所述子分类检测模型与所述历史URL的异常类别以及所述历史URL的特征关键词集合相对应;其中,所述特征关键词集合中包括从所述历史URL中提取的至少一个特征关键词。所述异常类别可以包括SQL(StructuredQueryLanguage,结构化查询语言)注入,XSS(CrossSiteScripting,跨站脚本攻击),LFI(LocalFileInclude,本地文件包含),Command(命令)注入等攻击行为。可以理解,本发明实施例对于异常类别的种类和数量不加以限制。本发明实施例可以收集预设时间段内的历史URL作为训练数据,所述历史URL中可以包括正常URL和异常URL,并且依据决策树对所述训练数据进行训练,以得到N个子分类检测模型,其中每个子分类检测模型对应N种异常类别中的一种,在对待检测的URL进行异常分类检测时,依次将所述待检测的URL输入N个子分类检测模型,所述N个子分类检测模型分别输出所述待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值,进而可以通过比较所述第一概率值和所述第二概率值确定所述待检测的URL对应的异常类别。在本发明的一种可选实施例中,所述依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值的步骤,具体可以包括:步骤S11、依据所述子分类检测模型对应的特征关键词集合,提取所述待检测的URL对应的特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;步骤S12、统计所述特征关键词在所述待检测的URL中出现的频次;步骤S13、将所述特征关键词集合和所述频次输入与所述特征关键词集合相对应的子分类检测模型,得到所述目标URL对应所述子分类检测模型的异常类别的第一概率值,以及所述目标URL对应正常类别的第二概率值。例如,已建立的分类检测模型包括Model1、Model2至ModelN这N个子分类检测模型,这N个子分类检测模型对应的特征关键词集合分别为C1、C2至CN,以及对应的异常类别分别为Attack1、Attack2至AttackN。则依次从待检测的URL中提取对应的特征关键词集合C1、C2至CN,并且统计C1、C2至CN中特征关键词在所述待检测的URL中出现的频次,依次将C1、C2至CN和对应的频次输入与C1、C2至CN相对应的子分类检测模型Model1、Model2至ModelN,分别得到所述待检测的URL对应Attack1、Attack2至AttackN的第一概率值,以及所述目标URL对应正常类别的第二概率值。例如,所述待检测的URL对应Attack1、Attack2至AttackN的第一概率值用集合表示为:集合A={A1,A2,...An},以及所述待检测的URL对应正常类别的概率值用集合表示为:集合B={B1,B2,...Bn}。步骤102、依据所述第一概率值和所述第二概率值确定所述待检测的URL对应的异常类别。在具体应用中,可以采用最大值的方法确定所述待检测的URL对应的异常类别,例如,对于上述集合A和集合B,如果最大的概率值在集合B中,则所述分类检测模型输出的结果为集合B中最大的概率值对应子分类检测模型对应的异常类别;如果最大值在集合A中,则输出的结果为所述待检测的URL为正常URL。在本发明实施例中,为了便于对各种不同格式的历史URL可以进行统一处理,可以在提取特征关键词之前,对历史URL进行解码、泛化、替换、分割等解析转换处理,得到转换后的字符串。其中,泛化是指将所述历史URL中的相似数据进行泛化处理,如ox开头的十六进制数据用同一个表示,字符串长度超过9位统一用S表示,符合时间格式的字符串用DATA表示等等。替换是指用空格替换所述历史URL中的内部换行符,以及将所述历史URL中的特殊符号替换为空格等。分割是指用空格分割所述历史URL中的各个字符串。参照表1,示出了本发明的一种历史URL转换之前的具体示意,以及参照表2,示出了本发明的一种将表1中的历史URL进行解析转换得到转换后的字符串的具体示意。表1表2转换后的字符串异常类别00011.com=DATA')ANDSLEEP(5)AND('eEye''eEyeSQLS=ox123456"/><script>alert(/xss/)</script>XSS在本发明的一种应用示例中,假设当前待检测的URL为:/??00011.com=?20151011')%20AND%20SLEEP(5)%20AND%20('eEye'='eEye。首先,对所述待检测的URL进行解析转换处理,可以得到如下字符串:00011.com=DATA')ANDSLEEP(5)AND('eEye''eEye;假设预先建立的分类检测模型中包括N种异常类别对应的N个子分类检测模型,且这N个子分类检测模型对应有N个特征关键词集合。假设其中一个子分类检测模型为Model1,且Model1对应的特征关键词集合为:{'ANDSLEEPeEye},以及Model1对应的异常类别为Attack1,则先从所述待检测的URL中提取该特征关键词集合{'ANDSLEEPeEye},该特征关键词集合中包括如下特征关键词:'、AND、SLEEP、eEye,统计得到上述四个特征关键词在所述待检测的URL中出现的频次分别为:4、1、1、2。接下来,将特征关键词集合{'ANDSLEEPeEye}和对应的频次{4112}输入Model1,得到所述待检测的URL对应Attack1的第一概率值,以及所述待检测的URL对应正常类别的第二概率值。同样地,对所述待检测的URL依次提取与Model2、Model3至ModelN对应的特征关键词集合,以及调用Model2、Model3至ModelN,对所述待检测的URL进行异常分类检测,总共重复执行N次,最终可以得到所述待检测的URL对应Attack1、Attack2、Attack3至AttackN的概率值对应的集合A={A1,A2,...An},以及所述待检测的URL对应正常类别的概率值对应的集合B={B1,B2,...Bn}。再对两个集合中的概率值进行统一的汇总处理。在汇总过程中,可以采取最大值法,例如,如果上述2N个概率值中的最大值在集合B中,则所述分类检测模型输出的结果为集合B中最大的概率值对应子分类检测模型对应的异常类别;如果最大的概率值在集合A中,则输出的结果为所述待检测的URL为正常URL。可选地,为了避免将可疑的待检测的URL检测为正常URL,本发明实施例可以设置预设阈值,只要集合B中最大的概率值大于该预设阈值,就可以认为该待检测的URL为异常URL。例如,如果最大的概率值在集合A中,且集合B中最大的概率值小于预设阈值(如0.8),则可以输出为正常URL,如果集合B中最大的概率值大于0.8,则输出集合B中最大的概率值对应子分类检测模型对应的异常类别。在本发明的另一种可选实施例中,所述方法还可以包括如下步骤:步骤S21、在得到所述待检测的URL对应的异常类别之后,对所述异常类别进行标注;步骤S22、依据标注后的目标URL对所述分类检测模型进行调整。在本发明实施例中,在通过分类检测模型识别出待检测的URL对应的异常类别之后,如果对识别结果不满意,可以对识别的异常类别进行标注,并且依据标注后的URL对所述分类检测模型进行调整,如将标注后的URL作为训练数据加入到训练集中,以对分类检测模型不断进行优化和调整。综上,本发明实施例依据预先建立的分类检测模型,确定所述待检测的URL对应的异常类别,由于所述分类检测模型为依据预设时间段内的历史URL训练得到,因此可以保证异常分类检测的准确性。此外,在识别待检测的URL对应的异常类别之后,如果对识别结果不满意,可以对识别的异常类别进行标注,并且将标注后的URL作为训练数据加入到训练集中,随着训练数据量的增加,分类检测模型可以通过自主学习的方式学习到之前没有的分类检测规则,从而可以对分类检测模型不断进行优化和调整,逐步提高检测的准确性,进而可以解决现有技术中基于规则的检测方法无法检测未建立检测规则的攻击行为的问题。方法实施例二本实施例在上述方法实施例一的基础上,详细说明建立所述分类检测模型的具体过程。参照图2,示出了本发明一个实施例的一种建立所述分类检测模型的步骤流程图,具体可以包括:步骤201、收集预设时间段内的历史URL,所述历史URL包括:正常URL和异常URL;步骤202、从所述历史URL中提取特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;步骤203、获取所述特征关键词分别在所述正常URL和所述异常URL中出现的频次;步骤204、依据决策树对所述特征关键词和所述频次训练得到分类检测模型;其中,所述分类检测模型中包括与已知异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的异常类别以及特征关键词集合。在本发明实施例中,在训练分类检测模型时,首先可以收集训练数据,所述训练数据具体可以从Web访问日志文件(以下简称为Flow文件)中获取得到,具体地,可以收集预设时间段内(例如最近一个月内)的历史URL,包括正常URL和异常URL,作为训练数据。在本发明的一种可选实施例中,所述收集预设时间段内的历史URL的步骤,具体可以包括:步骤S31、获取收集的预设时间段内的历史URL对应的关联四元组;其中,所述关联四元组中包括所述历史URL对应的源地址信息、源端口信息、目的地址信息、目的端口信息;步骤S32、依据所述关联四元组将所述历史URL标记为正常URL或者异常URL。在具体应用中,历史URL具体可以包括如下关联信息:Time(时间)、SIP(源IP地址)、SPort(源端口号)、DIP(目标IP地址)、DPort(目标端口号)等信息。参照表3,示出了本发明的一种历史URL对应关联信息的具体示意。表3本发明实施例在收集训练数据的过程中,选取历史URL与SIP、SPort、DIP、DPort对应的四元组(以下简称关联四元组),对收集的训练数据进行标记,标记为正常URL或者异常URL。具体地,所述依据所述关联四元组将所述历史URL标记为正常URL或者异常URL的步骤,具体可以包括:步骤S41、获取所述历史URL对应的关联四元组;步骤S42、在所述历史URL与预置的URL白名单相匹配时,将所述历史URL标记为正常URL;子步骤S43、在所述历史URL与预置的URL黑名单相匹配,或者所述关联四元组与预置的四元组黑名单相匹配时,将所述历史URL标记为异常URL。在本发明实施例中,收集的历史URL中的异常URL可以通过Attack文件获取,Attack文件可以是根据WAF(WebApplicationFirewall,网站应用级入侵防御系统)拦截到的异常数据得到的,Attack文件中包括已经标注的攻击数据。本发明实施例可以提取Attack文件中的历史URL以及所述历史URL对应的异常类别,进而可以建立URL黑名单,所述URL黑名单中可以包括异常URL,以及异常URL对应的异常类别;此外,还可以从所述Attack文件中获取关联四元组以及所述关联四元组对应的异常类别标签,进而可以建立四元组黑名单,所述四元组黑名单中可以包括异常四元组,以及异常四元组对应的异常类别。在具体应用中,由于收集到的Attack文件中的URL字符串和收集的Flow文件中的URL字符串格式不同,为了便于统一处理,本发明实施例先将收集的预设时间段内的Flow文件中的历史URL转换为与Attack文件中数据一致的格式,然后再匹配预置的URL黑名单以及预置的四元组黑名单。此外,本发明实施例还可以预先建立URL白名单,所述URL白名单中包括正常URL,在所述历史URL与预置的URL白名单相匹配时,将所述历史URL标记为正常URL,所述URL白名单可以依据经过异常检测确定为正常URL或者已标注为正常的URL所建立。可以理解,本发明实施例对于建立所述URL白名单、URL黑名单以及四元组黑名单的具体方式不加以限制。在具体应用中,由于URL通常包括较长的字符串,如果直接对URL进行匹配或者处理,在数据量较大时,会占用大量的内存空间,因此,为了节省对内存资源的占用,本发明实施例在对历史URL进行标记的过程中,分别获取所述历史URL以及关联四元组对应的md5码,而不直接操作原始的历史URL和关联四元组,从而可以大大节省存储以及处理所述历史URL以及关联四元组所需的内存资源。在本发明实施例中,标记后的历史URL具体可以包括如下类别:异常URL(确认某种攻击类别),异常URL(可疑某种攻击类别),正常URL。参照表4,示出了本发明的一种标记后的历史URL的具体示意。表4其中,Label表示所述历史URL对应的异常类别,其中Label为SQL表示该历史URL可以在URL黑名单中匹配到,Label为MAYBE_SQL表示该历史URL对应的关联四元组可以在四元组黑名单中匹配到,且这两个历史URL均属于发动过SQL攻击行为的攻击者产生的URL。在本发明实施例中,每一个子分类检测模型可以对应一个特征关键词集合,在对历史URL标记完成之后,可以对标记后的历史URL提取特征关键词集合,以训练各特征关键词集合对应的子分类检测模型。具体地,所述从所述历史URL中提取特征关键词集合的步骤,具体可以包括:步骤S51、对标记后的历史URL进行解析转换,得到转换后的字符串;步骤S52、统计所述转换后的字符串中各关键词出现的频次;步骤S53、依据所述各关键词出现的频次,确定所述历史URL对应的特征关键词集合;其中,所述特征关键词集合中包括满足预置频次的关键词。在本发明实施例中,所述特征关键词具体可以包括历史URL中的词和/或词组和/或三元词组,在对所述历史URL进行解析转换之后,分别对正常URL和某一种异常URL中的词和/或词组和/或三元词组进行频次统计,以及获取正常URL中以及异常URL中出现频次最高的前k个(例如取前600个)词和/或词组和/或三元词组进行合并处理,得到关键词集合,该关键词集合中包括正常URL和该类异常URL中出现频次差异较大的关键词,则该关键词集合可用于区别正常URL和该类异常URL,每种异常类别可以选取1个独立的特征关键词集合,假设对N种异常类别进行训练,则可以对应有N个特征关键词集合。在对标记后的历史URL提取特征关键词集合之后,可以依据决策树对所述特征关键词集合中的特征关键词以及所述特征关键词在历史URL中出现的频次训练得到分类检测模型;其中,所述分类检测模型中包括与已知异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的异常类别以及特征关键词集合。在本发明实施例中,依次从训练数据中选取某一异常类别对应的异常URL以及与该异常URL相对应的正常URL,依据该异常URL的特征关键词在历史URL中出现的频次,对正常URL和异常URL进行训练,使用决策树对N种异常类别分别进行建模,最终生成N个子分类检测模型。本发明实施例使用决策树作为分类器,训练出N个决策树分类器(即N个字分类检测模型)并保存到本地,以供对待检测的URL进行异常分类检测时使用。可以理解,上述依据决策树训练分类检测模型仅作为本发明的一种应用示例,在实际应用中,本发明实施例对于所述分类检测模型的训练方式不加以限制。综上,本发明实施例在训练分类检测模型的过程中,首先对收集的历史URL进行标记,然后提取历史URL的特征关键词集合,最后依据决策树建立与异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的特征关键词集合。本发明实施例的分类检测模型依据大量的正样本(正常URL)和负样本(异常URL)训练得到,可以保证分类检测模型的正确性。此外,由于决策树具有速度小、准确率高的优点,本发明实施例依据决策树训练分类检测模型,可以提高训练模型的速度以及提高模型检测的效率。装置实施例参照图3,示出了根据本发明一个实施例的一种Web异常检测装置的结构框图,具体可以包括:检测模块301,用于依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值;其中,所述分类检测模型为依据历史URL训练得到;确定模块302,用于依据所述第一概率值和所述第二概率值确定所述待检测的URL对应的异常类别。在本发明的一种可选实施例中,所述分类检测模型包括至少一个子分类检测模型,且所述子分类检测模型与所述历史URL的异常类别以及所述历史URL的特征关键词集合相对应;其中,所述特征关键词集合中包括从所述历史URL中提取的至少一个特征关键词。在本发明的另一种可选实施例中,所述检测模块301,具体可以包括:提取子模块,用于依据所述子分类检测模型对应的特征关键词集合,提取所述待检测的URL对应的特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计子模块,用于统计所述特征关键词在所述待检测的URL中出现的频次;检测子模块,用于将所述特征关键词集合和所述频次输入与所述特征关键词集合相对应的子分类检测模型,得到所述目标URL对应所述子分类检测模型的异常类别的第一概率值,以及所述目标URL对应正常类别的第二概率值。在本发明的又一种可选实施例中,所述装置还可以包括:分类检测模型建立模块,用于建立所述分类检测模型;所述分类检测模型建立模块,具体可以包括:收集子模块,用于收集预设时间段内的历史URL,所述历史URL包括:正常URL和异常URL;提取子模块,用于从所述历史URL中提取特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计子模块,用于获取所述特征关键词分别在所述正常URL和所述异常URL中出现的频次;训练子模块,用于依据决策树对所述特征关键词和所述频次训练得到分类检测模型;其中,所述分类检测模型中包括与已知异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的异常类别以及特征关键词集合。在本发明的再一种可选实施例中,所述收集子模块,具体可以包括:获取单元,用于获取收集的预设时间段内的历史URL对应的关联四元组;其中,所述关联四元组中包括所述历史URL对应的源地址信息、源端口信息、目的地址信息、目的端口信息;标记单元,用于依据所述关联四元组将所述历史URL标记为正常URL或者异常URL。在本发明的再一种可选实施例中,所述标记单元,包括:四元组获取子单元,用于获取所述历史URL对应的关联四元组;第一标记子单元,用于在所述历史URL与预置的URL白名单相匹配时,将所述历史URL标记为正常URL;第二标记子单元,用于在所述历史URL与预置的URL黑名单相匹配,或者所述关联四元组与预置的四元组黑名单相匹配时,将所述历史URL标记为异常URL。在本发明的再一种可选实施例中,所述提取子模块,包括:转换单元,用于对标记后的历史URL进行解析转换,得到转换后的字符串;统计单元,用于统计所述转换后的字符串中各关键词出现的频次;确定单元,用于依据所述各关键词出现的频次,确定所述历史URL对应的特征关键词集合;其中,所述特征关键词集合中包括满足预置频次的关键词。在本发明的再一种可选实施例中,所述装置还可以包括:标注模块,用于在得到所述待检测的URL对应的异常类别之后,对所述异常类别进行标注;调整模块,用于依据标注后的目标URL对所述分类检测模型进行调整。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的Web异常检测方法和装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网平台上下载得到,或者在载体信号上提供,或者以任何其他形式提供。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包括”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。本发明公开了A1、一种Web异常检测方法,所述方法包括:依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值;其中,所述分类检测模型为依据历史URL训练得到;依据所述第一概率值和所述第二概率值,确定所述待检测的URL对应的异常类别。A2、根据权利要求A1所述的方法,所述分类检测模型包括至少一个子分类检测模型,且所述子分类检测模型与所述历史URL的异常类别以及所述历史URL的特征关键词集合相对应;其中,所述特征关键词集合中包括从所述历史URL中提取的至少一个特征关键词。A3、根据权利要求A2所述的方法,所述依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值的步骤,包括:依据所述子分类检测模型对应的特征关键词集合,提取所述待检测的URL对应的特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计所述特征关键词在所述待检测的URL中出现的频次;将所述特征关键词集合和所述频次输入与所述特征关键词集合相对应的子分类检测模型,得到所述目标URL对应所述子分类检测模型的异常类别的第一概率值,以及所述目标URL对应正常类别的第二概率值。A4、根据权利要求A1所述的方法,通过如下步骤建立所述分类检测模型:收集预设时间段内的历史URL,所述历史URL包括:正常URL和异常URL;从所述历史URL中提取特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;获取所述特征关键词分别在所述正常URL和所述异常URL中出现的频次;依据决策树对所述特征关键词和所述频次训练得到分类检测模型;其中,所述分类检测模型中包括与已知异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的异常类别以及特征关键词集合。A5、根据权利要求A4所述的方法,所述收集预设时间段内的历史URL的步骤,包括:获取收集的预设时间段内的历史URL对应的关联四元组;其中,所述关联四元组中包括所述历史URL对应的源地址信息、源端口信息、目的地址信息、目的端口信息;依据所述关联四元组将所述历史URL标记为正常URL或者异常URL。A6、根据权利要求A5所述的方法,所述依据所述关联四元组将所述历史URL标记为正常URL或者异常URL的步骤,包括:获取所述历史URL对应的关联四元组;在所述历史URL与预置的URL白名单相匹配时,将所述历史URL标记为正常URL;在所述历史URL与预置的URL黑名单相匹配,或者所述关联四元组与预置的四元组黑名单相匹配时,将所述历史URL标记为异常URL。A7、根据权利要求A5所述的方法,所述从所述历史URL中提取特征关键词集合的步骤,包括:对标记后的历史URL进行解析转换,得到转换后的字符串;统计所述转换后的字符串中各关键词出现的频次;依据所述各关键词出现的频次,确定所述历史URL对应的特征关键词集合;其中,所述特征关键词集合中包括满足预置频次的关键词。A8、根据权利要求A1所述的方法,所述方法还包括:在得到所述待检测的URL对应的异常类别之后,对所述异常类别进行标注;依据标注后的目标URL对所述分类检测模型进行调整。本发明公开了B9、一种Web异常检测装置,所述装置包括:检测模块,用于依据预先建立的分类检测模型,确定待检测的URL对应异常类别的第一概率值,以及所述待检测的URL对应正常类别的第二概率值;其中,所述分类检测模型为依据历史URL训练得到;确定模块,用于依据所述第一概率值和所述第二概率值,确定所述待检测的URL对应的异常类别。B10、根据权利要求B9所述的装置,所述分类检测模型包括至少一个子分类检测模型,且所述子分类检测模型与所述历史URL的异常类别以及所述历史URL的特征关键词集合相对应;其中,所述特征关键词集合中包括从所述历史URL中提取的至少一个特征关键词。B11、根据权利要求B10所述的装置,所述检测模块,包括:提取子模块,用于依据所述子分类检测模型对应的特征关键词集合,提取所述待检测的URL对应的特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计子模块,用于统计所述特征关键词在所述待检测的URL中出现的频次;检测子模块,用于将所述特征关键词集合和所述频次输入与所述特征关键词集合相对应的子分类检测模型,得到所述目标URL对应所述子分类检测模型的异常类别的第一概率值,以及所述目标URL对应正常类别的第二概率值。B12、根据权利要求B9所述的装置,所述装置还包括:分类检测模型建立模块,用于建立所述分类检测模型;所述分类检测模型建立模块,包括:收集子模块,用于收集预设时间段内的历史URL,所述历史URL包括:正常URL和异常URL;提取子模块,用于从所述历史URL中提取特征关键词集合;其中,所述特征关键词集合中包括至少一个特征关键词;统计子模块,用于获取所述特征关键词分别在所述正常URL和所述异常URL中出现的频次;训练子模块,用于依据决策树对所述特征关键词和所述频次训练得到分类检测模型;其中,所述分类检测模型中包括与已知异常类别数量相对应的子分类检测模型,且每个子分类检测模型对应不同的异常类别以及特征关键词集合。B13、根据权利要求B12所述的装置,所述收集子模块,包括:获取单元,用于获取收集的预设时间段内的历史URL对应的关联四元组;其中,所述关联四元组中包括所述历史URL对应的源地址信息、源端口信息、目的地址信息、目的端口信息;标记单元,用于依据所述关联四元组将所述历史URL标记为正常URL或者异常URL。B14、根据权利要求B13所述的装置,所述标记单元,包括:四元组获取子单元,用于获取所述历史URL对应的关联四元组;第一标记子单元,用于在所述历史URL与预置的URL白名单相匹配时,将所述历史URL标记为正常URL;第二标记子单元,用于在所述历史URL与预置的URL黑名单相匹配,或者所述关联四元组与预置的四元组黑名单相匹配时,将所述历史URL标记为异常URL。B15、根据权利要求B13所述的装置,所述提取子模块,包括:转换单元,用于对标记后的历史URL进行解析转换,得到转换后的字符串;统计单元,用于统计所述转换后的字符串中各关键词出现的频次;确定单元,用于依据所述各关键词出现的频次,确定所述历史URL对应的特征关键词集合;其中,所述特征关键词集合中包括满足预置频次的关键词。B16、根据权利要求B9所述的装置,所述装置还包括:标注模块,用于在得到所述待检测的URL对应的异常类别之后,对所述异常类别进行标注;调整模块,用于依据标注后的目标URL对所述分类检测模型进行调整。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1