一种攻击的检测方法和攻击检测模型技术

技术编号:27831113 阅读:26 留言:0更新日期:2021-03-30 11:35
本说明书提供一种攻击的检测方法和攻击检测模型,该方法包括:获取URL信息,并对所述URL信息进行解码获取所述URL信息对应的用户原始数据,获取根据数据库分析算法对所述用户原始数据分析后的指纹信息,利用SVM风险评估模型对所述指纹信息进行评估,并根据评估结果判断所述URL信息是否为攻击信息。通过该方法,可以避免正则表达式的方法越来越难满足当前需求的问题。需求的问题。需求的问题。

【技术实现步骤摘要】
一种攻击的检测方法和攻击检测模型


[0001]本公开涉及信息安全领域,尤其涉及一种攻击的检测方法和攻击检测模型。

技术介绍

[0002]SQLi(Sql Injection,SQL注入)是一种注入攻击,可以执行恶意SQL语句。它通过将任意SQL代码插入数据库查询,使攻击者能够完全控制Web应用程序后面的数据库服务器。犯罪分子可能会利用它来未经授权访问用户的敏感数据:客户信息、个人数据、商业机密,知识产权等。SQL注入攻击是最古老,最流行,最危险的Web应用程序漏洞之一。
[0003]传统的检测SQL注入的方法依赖的就是正则表达式的方法,这种方法虽然具有稳定,可维护性高的优点,但是正则表达式的方法误报、漏报率较高,且需要频繁更新规则,同时对于未知威胁难以检测。面对日益复杂的网络安全形式,正则表达式的方法越来越难满足当前需求。

技术实现思路

[0004]本说明书实施例提供了一种攻击的检测方法和攻击检测模型,通过该方法,可以避免正则表达式的方法越来越难满足当前需求的问题。
[0005]本说明书实施例提供了一种攻击的检测方法,该方法包括:
[0006]获取URL信息,并对所述URL信息进行解码获取所述URL信息对应的用户原始数据;
[0007]获取根据数据库分析算法对所述用户原始数据分析后的指纹信息;
[0008]利用SVM风险评估模型对所述指纹信息进行评估,并根据评估结果判断所述URL信息是否为攻击信息。
[0009]通过上述实施例可以看出,通过SVM风险评估模型对用户输入的URL信息进行风险评估,解决了通过正则表达式的方法越来越难满足当前需求的问题。
[0010]在一种实施例中,所述用户原始数据包括:用户输入的原始字符。
[0011]在一种实施例中,所述利用SVM风险评估模型对所述指纹信息进行评估,具体包括:
[0012]将所述指纹信息进行one

hot编码,将编码后的指纹信息通过SVM风险评估模型进行评估。
[0013]在一种实施例中,获取所述SVM风险评估模型的方法包括:
[0014]获取若干攻击样本,对所述若干攻击样本进行训练,并根据训练结果获得SVM风险评估模型。
[0015]在一种实施例中,在所述利用SVM风险评估模型对所述指纹信息进行评估之前,所述方法还包括:
[0016]利用攻击指纹数据库对指纹信息进行攻击判断;
[0017]若判断所述指纹信息不属于攻击指纹则执行利用SVM风险评估模型对所述指纹信息进行评估;
[0018]若判断所述指纹信息属于攻击指纹则确定所述URL信息为攻击信息。
[0019]本说明书实施例还提供了一种攻击检测模型,该模型包括:指纹获取模块、算法检测模块和资源模块;
[0020]利用所述指纹获取模块对获取的URL信息进行解码,获取所述URL信息对应的用户原始数据,并根据数据库分析算法获取所述用户原始数据的指纹信息;
[0021]利用所述算法检测模块中包含的Libinjection指纹数据库和/或SVM风险评估模型对所述指纹信息进行风险评估;
[0022]其中,利用资源模块存储所述Libinjection指纹数据库和SVM风险评估模型。
[0023]在一种实施例中,所述用户原始数据包括:用户输入的原始字符。
[0024]在一种实施例中,所述利用SVM风险评估模型对所述指纹信息进行评估,具体包括:
[0025]将所述指纹信息进行one

hot编码,将编码后的指纹信息通过SVM风险评估模型进行评估。
[0026]在一种实施例中,获取资源模块中的SVM风险评估模型为通过获取若干攻击样本,对所述若干攻击样本进行训练,并将训练结果作为SVM风险评估模型。
[0027]在一种实施例中,在所述利用SVM风险评估模型对所述指纹信息进行评估之前,利用资源模块中的Libinjection指纹数据库对指纹信息进行攻击判断;
[0028]若判断所述指纹信息不属于Libinjection指纹数据库中的指纹,则执行利用SVM风险评估模型对所述指纹信息进行评估;
[0029]若判断所述指纹信息属于Libinjection指纹数据库中的指纹,则确定所述URL信息为攻击信息。
附图说明
[0030]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
[0031]图1为本公开实施例提供的一种攻击的检测方法的流程示意图;
[0032]图2为本公开实施例提供的一种攻击检测模型的架构示意图。
具体实施方式
[0033]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
[0034]在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0035]应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱
离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
[0036]目前在进行SQL注入检测中,主要通过Libinjection算法进行检测,Libinjection在GitHub上作为一个开源的SQL注入和XXS攻击词法解析库目前来说非常流行,不同于传统的正则表达式的方法,其采用的是利用一个完善的特征库来匹配检查SQL注入。相比传统正则匹配识别SQL注入在于速度快以及低误报,低漏报。但是Libinjection的缺点也很明显,内置8000多条攻击指纹是作为数组写死在代码里,后续扩充指纹需要修改源码,另外所谓的语义解析实际上只是换了一种规则匹配方式,并不能真正的检测出未知威胁。
[0037]本说明书提供了一种攻击的检测方法,如图1所示,该方法包括:
[0038]S101获取URL信息,并对所述URL信息进行解码获取所述URL信息对应的用户原始数据;
[0039]S102获取根据数据库分析算法对所述用户原始数据分析后的指纹信息;
[0040]S103利用SVM风险评估模型对所述指纹信息进行评估本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种攻击的检测方法,其特征在于,所述方法包括:获取URL信息,并对所述URL信息进行解码获取所述URL信息对应的用户原始数据;获取根据数据库分析算法对所述用户原始数据分析后的指纹信息;利用SVM风险评估模型对所述指纹信息进行评估,并根据评估结果判断所述URL信息是否为攻击信息。2.根据权利要求1所述的方法,其特征在于,所述用户原始数据包括:用户输入的原始字符。3.根据权利要求1所述的方法,其特征在于,所述利用SVM风险评估模型对所述指纹信息进行评估,具体包括:将所述指纹信息进行one

hot编码,将编码后的指纹信息通过SVM风险评估模型进行评估。4.根据权利要求1所述的方法,其特征在于,获取所述SVM风险评估模型的方法包括:获取若干攻击样本,对所述若干攻击样本进行训练,并根据训练结果获得SVM风险评估模型。5.根据权利要求1所述的方法,其特征在于,在所述利用SVM风险评估模型对所述指纹信息进行评估之前,所述方法还包括:利用攻击指纹数据库对指纹信息进行攻击判断;若判断所述指纹信息不属于攻击指纹则执行利用SVM风险评估模型对所述指纹信息进行评估;若判断所述指纹信息属于攻击指纹则确定所述URL信息为攻击信息。6.一种攻击检测模型,其特征在于,所述模型包括:指纹获取模块、算法检测模块和资源模块;利用所述指纹获取模块对获取的URL信息进...

【专利技术属性】
技术研发人员:王伟
申请(专利权)人:新华三技术有限公司合肥分公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1