• 如果你喜欢Time_泽~少的博客,请按ctrl+D收藏吧!
  • 网络安全/信息技术博客

XML注入攻击

XML注入攻击

Xml注入是通过改写xml的数据内容来实现。XML通常用于存储数据,如果用户提供的数据是以XML的方式进行存储,那么对攻击者来说,注入额外的、攻击者可能不能正常控制的XML是有可能的。

攻击原理:

考虑下述XML,在这个XML中,攻击者仅仅能够控制Attacker Text文本:
<?xml version=”1.0″ encoding=”UTF-8″?> <USER role=”guest”>Attacker Text</USER>
如果用你的输入来替换Attacker Text,以User1</USER><USER role=“admin”>User2 作为输入的话,将会产生如下的XML
<?xml version=”1.0″ encoding=”UTF-8″?> <USER role=”guest”>User1</USER> <USER role=”admin”>User2</USER>
如果应用程序读取这个文件,并且决定给每个用户分配何种访问权限的时候,User2将获得管理员权限!
在一位同事的ppt上看到xml的常见攻击方式如下:
1)广泛用于web服务的攻击。如上面所举例子,通过精心构造输入内容来进行攻击。 2)使用特别长的标签 像<AAAAAAA/> 1024个 3)使用特别多的属性 像<AA a=‘a’b=‘b’„>
4)递归负载攻击。注入深层次的循环嵌套的xml数据,造成服务器上XML分析器崩溃,造成Dos
5)外部实体攻击。利用<!Entityname SYSTEM “URI”>
由于xml文件本身标签所占用的地方通常会比内容多,所以在数据比较多,属性比较多时,xml会非常的庞大,从而给xml文件的传输和解析带来困难。所以我理解2-4都是通过加大xml解析器的负担来达到攻击的目的。

防范:

1)对用户输入进行检查
2)对XML操作,必须对格式字符进行转义处理

原创文章,转载请注明: 转载自Time_泽~少的博客

本文链接地址: XML注入攻击

XML注入攻击



Time_泽~少的博客, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明XML注入攻击
喜欢 (3)or分享 (0)
Time_泽 ~少
关于作者:
计算机专业/网络安全技术,社会工程学。
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址可不填