RSS订阅
RSS订阅TT安全

SQL注入的应对策略能够应对XPath注入吗?

2008-5-4  选择字号:  | |
打印本文章

导读:虽然XPath与SQL在许多方面有些相似,但XPath注入比SQL注入更加危险。当Web应用程序在没有验证用户提供数据的情况下构建XPath查询时,XPath注入可以利用这些应用程序。

关键词:XPath SQL XPath查询 数据 XML路径语言 数据库

正在加载数据... 【TechTarget中国原创】问:XPath注入攻击与SQL注入攻击有什么不同?SQL注入攻击能够缓解防御XPath注入攻击的技术吗? 答:虽然XPath语言表达的句法与SQL查询在许多方面都有些相似,但是,XPath注入比SQL注入更加危险。

【TechTarget中国原创】问:XPath注入攻击与SQL注入攻击有什么不同?SQL注入攻击能够缓解防御XPath注入攻击的技术吗?

  答:XPath (XML路径语言) 1.0是一种表达语言。许多应用程序根据XML文件的内容使用这种语言进行操作。 一个XML文件可以当作一个数据库,XPath查询用来访问这个文件中的数据。使用XML数据库而不使用传统的数据库的好处包括可移植性、兼容性、重复使用性和结构化表现等。

  虽然XPath语言表达的句法与SQL查询在许多方面都有些相似,但是,XPath注入比SQL注入更加危险。当Web应用程序在没有验证用户提供的数据的情况下构建一个XPath查询的时候,XPath注入就可以利用这些应用程序。一个攻击者能够向一个查询注入数据,从而改变其语义。通过嵌入一系列布尔查询(能够产生一个“真”或者“假”值的精心制作的表达方式),攻击者能够重复查看这个文件的全部节点。使用这个技术,甚至一个事先不知道XPath查询的攻击者也能够提取一个完整的XML数据库文件。

  大多数数据库都提供了某种形式的访问和权限控制,限制用户访问某些表格、字段或者查询。这种限制一般是限制攻击者访问应用程序的数据库账户。XPath没有为数据库文件提供访问限制,因此,攻击者能够查询这个数据库中的全部XML对象。此外,由于XPath是一种标准的语言,攻击者能够创建一种适用于任何基于XPath的应用程序的自动攻击工具。由于SAL的许多变量,SAL注入攻击必须针对正在被攻击的目标的特定版本的SQL进行客户化。

  用来防御SAL注入攻击的措施实际上有助于防御XPath注入攻击。要进行评估,下面是一些可以采取的防御步骤。首先,你的应用程序必须验证和清洁用户输入的全部内容。第二,在你的脚本、数据访问常规性工作和XPath查询使用这个数据之前,你要假设全部数据都来自不可信赖的来源。值得指出的是仅在服务器端进行验证而不在客户端进行验证是没有用的,因为客户端验证很容易被绕过去。遗憾的是没有一个原始的相应的XPath来设置查询的参数。因此,XPath查询不得不使用字符串构造技术。这就使验证用户提供的全部输入内容更为重要。测试你的应用程序是否容易受到XPath注入攻击是容易的。仅仅在发给你的服务器的数据中增加一个引号,看看是否会出现错误。如果出现了错误,那就表明可能出现了XPath注入攻击。XPath 2.0技术规范目前正在万维网联盟(W3C)批准程序的最后阶段。这个技术规范提供了一套极大地扩展了的功能和能力,但是遗憾的是没有增加安全功能。


SQL注入攻击
 防止SQL注入
 微软工具应对SQL注入攻击
 新一轮SQl注入攻击敲响警钟
 新SQL注入蠕虫出现
 为什么侧面SQL注入和NULL指示器攻击那么重要
 SQL注入的应对策略能够应对XPath注入吗?
 新SQL注入技术威胁Oracle数据库
 实施自动的SQL注入攻击测试
 自动式SQL注入攻击的新型防御

还没有登录? 阅读全文请先登录或注册
用户名:(请填写您的E-mail做为登录账号)
  • 获取最新的IT业界资讯、市场动态、行业趋势等独家原创内容。
  • 分享国内外技术专业人士提供的技巧经验。
  • 利用专注IT的技术资源中心,不断更新专业知识。
  • 享受白皮书、Webcast等系列特色增值服务。
  • 免费参加TT中国举办的各种会员活动。
  • 更多的精彩服务,在不断开发中……
用户名:(请填写您的E-mail)
密 码:
 永久登录
请输入您的登录email:
黑客利用微软SQL Server各种漏洞发动网络攻击,其中又以SQL Injection最为常见。为了遏止相关网络攻击再恶化,美国网络犯罪申诉中心提出十二点网络攻击预防措施……
微软周一发布了公告,警告说有些可以公开获取的代码可以被用于攻击SQL Server中没有打补丁的漏洞。这个问题可以引起错误参数检查,对攻击者开放漏洞……
任何服务器,安全与性能是两个永恒的主题。企业的信息化安全人主要任务就是如何在保障服务器性能的前提下提高服务器的安全性。服务器的访问权限控制策略无疑是重要……
管理好密码文件,对于控制授权用户从远端或本机登录Oracle数据库系统,执行数据库管理工作,具有重要的意义……
周三,IBM发布了更新,修补DB2 数据库管理系统(DBMS)中的至少10个漏洞。IBM的修复解决DB29.1、9.5和DB2 Universal Database8.1和8.2版本。DBMS受到SQL注入攻击漏洞影响……

当身份窃取猖獗的时候,有力地用户认证、客户认证和合作伙伴认证是至关重要的措施。有了用户名和密码就足够了吗?双因素认证是有效的方法吗?还是无力应对新出现的威胁呢?本专题将提供全面的信息,帮助理解目前的认证方式和面临的挑战,并且介绍如何采用安全的认证系统。

本专题将介绍一款免费的、开源的、可移动的适用于笔记本电脑的加密软件TrueCrypt。TrueCrypt适用于个人或者小型企业和团队,可以在任何系统上运行而不需要安装。TrueCrypt可以采用多种加密算法,有效地保护机密数据。
本专题可以帮助理解在无线网络中,无线入侵检测/防御系统(WIDS/WIPS)的价值,及时您所在的公司不支持无线局域网。此外,本专题还将介绍如何为公司环境选择合适的WIDS,以及如何防御无线拒绝服务攻击。
最新更新
专家答疑
技巧
Michael Cobb
渗透测试的目标不仅是要评估电脑系统或者网络的安全性,还要决定成功攻击的可行性和商业影响。那么如果选择合适的渗透测试人员呢?
Mike Chapple
渗透测试可以提供安全防御的有价值的信息,但是成本很高。为了渗透测试的可信性,通常必须要有独立的外部公司进行。如果使用内部人员和测试示范漏洞……
Ed Skoudis
问:社会工程应该是渗透测试的一部分吗?这样做是道德的吗?   答:这个问题的答案还在争论之中。