Xpath注入攻击及其防御技术研究.doc

Xpath注入攻击及其防御技术研究.doc

ID:49200409

大小:114.00 KB

页数:6页

时间:2020-03-01

Xpath注入攻击及其防御技术研究.doc_第1页
Xpath注入攻击及其防御技术研究.doc_第2页
Xpath注入攻击及其防御技术研究.doc_第3页
Xpath注入攻击及其防御技术研究.doc_第4页
Xpath注入攻击及其防御技术研究.doc_第5页
资源描述:

《Xpath注入攻击及其防御技术研究.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Xpath注入攻击及其防御技术研究陆培军(南通大学计算机科学与技术学院,江苏南通226019)摘要XML技术被广泛使用,XML数据的安全性越來越重要。本文简要介绍了XI垃th注入攻击XML数据的原理。在前人提出的防御通用方法的基础上,提出一个XWth注入攻击通用检验模型,模型具有普遍意义。关键词XPath注入攻击;防御技术;模型1Xpath注入攻击概述1.1Xpath定义近年来在现代化电子瀚务,商场现代化系统屮,XML技术被广泛的使用,刃:始出现针对XML数据信息的XPath注入攻击技术。注入攻击是指利用系统没有对其输入进行强制执行•或检査的假设向计算机系统屮引入(或“注入”)代

2、码的技术。注入代码的H的通常是绕过或修改程序的最初H标功能,如果被绕过的功能涉及系统安全,那么结果可能是灾难性的。在XML信息被大最使用,其数据的安全性显得非常重要,但是目前很少有研究人员研究XPath的注入攻击防御技术。XPath注入攻击是指利用XPath解析器的松散输入和容错特性,能够在URL、表单或其它信息上附带恶意的XPath査询代码,以获得权限信息的访问权并更改这些信息。XPath注入攻击是针对Web服务应用新的攻击方法,它允许攻击者■在事先不知道XPath查询相关知识的情况下,通过XPath查询得到…-个XML文档的完整内容。1.2XPath注入攻击特点XPath注入

3、攻击利用两种技术,即XPdth扫描和XPath查询布尔化。通过该攻击,攻击者可以控制用來进行XPdth査询的XML数据库。这种攻击可以有效地对付使用XPdth査询(和XML数据库):來执行身份验证、查找或者其它操作。XPath注入攻击同SQL注入攻击类似,但和SQL注入攻击相比较,XPath在以下方面具有优势。(1)广泛性。XPath注入攻击利用的是Xbth语法,山于Xbth是一种标准语言,因此只要是利用XPath语法的Web应用程序如果未对输入的XPath查询做严格的处理都会存在XPath注入漏洞,所以可能在所有的XPath实现屮都包含有该弱点,这和SQL注入攻击有很大区别。在

4、SQL注入攻击过程屮根据数据库支持的SQL语言不同,注入攻击的实现可能不同。(2)危害性大。XPath语言几乎可以引用XML文档的所有部分,而这样的引用一般没有访问控制限制。但在SQL注入攻击屮,一个“用户”的权限可能被限制到某一特定的表、列或者查询,而XPdth注入攻击可以保证得到完整的XML文档,即完整的数据库。只要Web服务应用具有基本的安全漏洞,即可构造针对XPath应用的自动攻击。2Xpath注入攻击原理XPath注入攻击主要是通过构建特殊的输入,这些输入往往是XPath语法屮的一些组合,这些输入将作为参数传入Web应用程序,通过执行XPath査询而执行入侵者想要的操作

5、,下面以登录验证中的模块为例,说明XPath注入攻击的实现原理。在Web应用程序的登录验证程序屮,一般有用户名(username)和密码(password)两个参数,程序会通过用户所提交输入的用户名和密码-來执行授权操作。若验证数据存放在XML文件中,其原理是通过査找user表中的用户名(username)和密码(password)的结果来进行授权访问,例存在user,xinl文件如下:〈users〉BenElmoreabc

6、>testl23Shl()niyGcintz〈/1astname>xyz123test〈/user〉则在XPath中其典型的查询语句如下://users/userIloginlD/text()=,xyz,andpassword/text()=,123lest/]但是,可以采用如下的方法实施注入攻击,绕过身份验证。如果用户传入一个login和password,例如loginID='xy7/和

7、password=*123test*,则该查询语句将返回true。但如果用户传入类似'or1=1or的值,那么该查询语句也会得到true返冋值,因为XPath査询语句最终会变成如下代码://users/userIloginiD/text()二‘‘or1二1or'‘二'’andpassword./text()=,Jor1二1or八二八]这个字符串会在逻辑上使查询一直返冋true并将一直允许攻击者访问系统。攻击者可以利用XPath在应用程序屮动态地操作XML文档。攻击完成登录可以再通

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。