一种XPath注入漏洞检测及防御系统及方法技术方案

技术编号:14708383 阅读:107 留言:0更新日期:2017-02-26 00:35
一种XPath注入漏洞检测及防御系统包括:XPath注入特征库建立模块、XPath语句分析模块、匹配模块及阻断模块,XPath注入特征库建立模块主要是基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段规则库;XPath语句分析模块主要针对XPath注入攻击目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段;匹配模块主要将从所述目标数据中获取的所有XPath语法元素及XPath语法字段与XPath注入特征库建立模块中的规则描述进行匹配,如果匹配成功,则确定存在XPath注入攻击;阻断模块阻断XPath注入攻击请求。本发明专利技术的有益效果在于:本发明专利技术所述方案能有效识别XPath注入攻击并阻断XPath注入攻击,有效保护用户的数据安全。

【技术实现步骤摘要】

本专利技术涉及网络信息安全领域,尤其涉及一种XPath注入漏洞检测及防御系统及方法
技术介绍
XPath使用路径表达式来选取XML文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。路径表达式是从一个XML节点(当前的上下文节点)到另一个节点、或一组节点的书面步骤顺序。现代互联网日新月异的发展中,各类web应用系统都或多或少的应用到XML技术,由此开始出现了针对XML数据信息的XPath注入攻击技术。注入攻击是指利用系统没有对其输入进行强制检查,导致向计算机系统中注入代码的技术。注入代码的目的通常是绕过或修改程序的最初目标功能,如果被绕过的功能涉及系统安全,那么结果可能是灾难性的。在XML信息被大量使用,其数据的安全性显得非常重要,研究XPath的注入攻击防御技术是必要的。XPath注入攻击是指利用XPath解析器的松散输入和容错特性,在程序没有验证用户查询输入的情况下,能够在URL、表单或其它信息上附带恶意的XPath查询代码,以获得权限信息的访问权并更改这些信息。XPath注入攻击是针对Web服务应用的攻击方法,它允许攻击者在事先不知道XPath查询相关知识的情况下,可以导致逻辑错误和认证绕过,获取后端XML文件内容。由于XML没有用户或者权限的概念,因此可以对其数据库、表、行或者列执行细粒度的访问控制,这意味着整个数据库都可以被用户读取,在应用中属于很严重的安全漏洞。
技术实现思路
本专利技术的目的是针对现有技术存在的缺陷,提出一种XPath注入漏洞检测及防御方案,该方案能有效识别XPath注入攻击并阻断XPath注入攻击,有效保护用户的数据安全。本专利技术提出了一种XPath注入漏洞检测及防御方法,具体包括:步骤一:基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段的XPath注入特征库;步骤二:获取XPath注入攻击目标数据,对所述目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段;步骤三:将所述目标数据中包含的所有XPath语法元素及XPath语法字段与所述XPath注入特征库进行匹配,如果匹配成功,则确定存在XPath注入攻击;步骤四:阻断http请求。本专利技术还提供了一种XPath注入漏洞检测及防御系统,具体包括:XPath注入特征库建立模块、XPath语句分析模块、匹配模块及阻断模块,其中,所述XPath注入特征库建立模块主要是基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段规则库;所述XPath语句分析模块主要针对XPath注入攻击目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段;所述匹配模块主要将从所述目标数据中获取的所有XPath语法元素及XPath语法字段与XPath注入特征库建立模块中的规则描述进行匹配,如果匹配成功,则确定存在XPath注入攻击;所述阻断模块主要用于阻断XPath注入攻击请求,当确定存在XPath注入攻击时,该工具将会阻断该http请求,当来之同一ip地址3次类似攻击请求,则将该ip加入黑名单。进一步的,所述的一种XPath注入漏洞检测及防御系统还包括权重设置模块,所述权重设置模块主要为所述XPath注入特征库中XPath语法元素及XPath语法字段规则设置权重;进一步的,所述的一种XPath注入漏洞检测及防御系统还包括提取及判断模块,所述提取及判断模块主要用于提取http请求中的XPath注入攻击目标数据,并将XPath注入攻击目标数据与所述XPath注入特征库中规则进行匹配分析,同时确定XPath注入攻击目标数据的最大权重值,当所述最大权重值大于或等于权重阈值时,这说明该http请求含有XPath注入攻击。进一步的,所述XPath注入攻击目标数据是http请求数据包中post消息或get消息。进一步的,所述XPath注入特征库所包含的规则是由XPath语法元素及XPath语法字段构成的关键字组成。进一步的,所述XPath语法元素包括标识符、函数、运算符、标签、注释及保留关键字。进一步的,所述XPath语法字段包括字段、条件、命令。本专利技术的有益效果在于:①对http请求进行XPath词法语义分析,得到XPath语法元素及XPath语法字段,再将这些XPath语句解析结果与特征库进行模式匹配,由于不是对数据进行字符比对,而是针对特定的XPath语句解析结果进行有针对性的比对,因此提高了识别效率;②对数据所包含的所有XPath语句都进行了分析提取,从而可尽量减少漏报;③针对http的post请求,特别建立了由大数据分析得到的XPath语句构成的特征库,并给每个条post相关的特征赋予权重值,对于post请求,将解析的XPath语句与XPath注入特征库中规则描述符匹配分析,得到一个最大权重值,当其大于或等于权重阈值时,这说明该http请求含有XPath注入攻击,该方法能最大限度的识别XPath注入攻击并阻断XPath注入攻击,有效保护用户的数据安全。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下文对本专利技术技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。一种XPath注入漏洞检测及防御方法,具体包括:步骤一:基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段的XPath注入特征库;步骤二:获取XPath注入攻击目标数据,对所述目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段;步骤三:将所述目标数据中包含的所有XPath语法元素及XPath语法字段与所述XPath注入特征库进行匹配,如果匹配成功,则确定存在XPath注入攻击;步骤四:阻断http请求。一种XPath注入漏洞检测及防御系统,具体包括:XPath注入特征库建立模块、XPath语句分析模块、匹配模块及阻断模块,其中,所述XPath注入特征库建立模块主要是基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段规则库;所述XPath语句分析模块主要针对XPath注入攻击目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段;所述匹配模块主要将从所述目标数据中获取的所有XPath语法元素及XPath语法字段与XPath注入特征库建立模块中的规则描述进行匹配,如果匹配成功,则确定存在XPath注入攻击;所述阻断模块主要用于阻断XPath注入攻击请求,当确定存在XPath注入攻击时,该工具将会阻断该http请求,当来之同一ip地址3次类似攻击请求,则将该ip加入黑名单。所述的一种XPath注入漏洞检测及防御系统还包括权重设置模块,所述权重设置模块主要为所述XPath注入特征库中XPath语法元素及XPath语法字段规则设置权重;所述的一种XPath注入漏洞检测及防御系统还包括提取及判断模块,所述提取及判断模块主要用于提取http请求中的XPath注入攻击目标数据,并将XPath注入攻击目标数据与所述XPath本文档来自技高网...

【技术保护点】
一种XPath注入漏洞检测及防御方法,其特征在于:所述XPath注入漏洞检测及防御方法包括:步骤一:基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段的XPath注入特征库 ;步骤二:获取XPath注入攻击目标数据,对所述目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段 ;步骤三:将所述目标数据中包含的所有XPath语法元素及XPath语法字段与所述XPath注入特征库进行匹配,如果匹配成功,则确定存在XPath注入攻击;步骤四:阻断http请求一种XPath注入漏洞检测及防御系统,其特征在于:所述XPath注入漏洞检测及防御系统包括:XPath注入特征库建立模块、XPath语句分析模块、匹配模块及阻断模块,其中,所述XPath注入特征库建立模块主要是基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段规则库;所述XPath语句分析模块主要针对XPath注入攻击目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段 ;所述匹配模块主要将从所述目标数据中获取的所有XPath语法元素及XPath语法字段与XPath注入特征库建立模块中的规则描述进行匹配,如果匹配成功,则确定存在XPath注入攻击;所述阻断模块主要用于阻断XPath注入攻击请求,当确定存在XPath注入攻击时,该工具将会阻断该http请求,当来之同一ip地址3次类似攻击请求,则将该ip加入黑名单。...

【技术特征摘要】
1.一种XPath注入漏洞检测及防御方法,其特征在于:所述XPath注入漏洞检测及防御方法包括:步骤一:基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段的XPath注入特征库;步骤二:获取XPath注入攻击目标数据,对所述目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段;步骤三:将所述目标数据中包含的所有XPath语法元素及XPath语法字段与所述XPath注入特征库进行匹配,如果匹配成功,则确定存在XPath注入攻击;步骤四:阻断http请求一种XPath注入漏洞检测及防御系统,其特征在于:所述XPath注入漏洞检测及防御系统包括:XPath注入特征库建立模块、XPath语句分析模块、匹配模块及阻断模块,其中,所述XPath注入特征库建立模块主要是基于XPath词法语法分析,建立基于XPath语法元素及XPath语法字段规则库;所述XPath语句分析模块主要针对XPath注入攻击目标数据进行XPath词法语法分析,获取所述目标数据中包含的所有XPath语法元素及XPath语法字段;所述匹配模块主要将从所述目标数据中获取的所有XPath语法元素及XPath语法字段与XPath注入特征库建立模块中的规则描述进行匹配,如果匹配成功,则确定存在XPath注入攻击;所述阻断模块主要用于阻断XPath注入攻击请求,当确定存在XPath注入攻击时,该工具将会阻断该http请求,当来之同一ip地址3次类似...

【专利技术属性】
技术研发人员:王彦杰肖树根
申请(专利权)人:中科信息安全共性技术国家工程研究中心有限公司
类型:发明
国别省市:北京;11

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

1