Javascript字符串截断 with DOM XSS的方法介绍
所属分类:
网络安全 / 安全设置
阅读数:
272
收藏 0赞 0分享
在IE中javascript的字符串可以被NULL字符截断,不过仅仅是getValue的时候截断.
测试代码:
alert('abc\0 def')如果只是这样最多就是spoofing,但配合IE(<=8)的一个解析bug和php的[魔术引号]就是一个DOM XSS了.
IE解析bug:
<a href="<body/onload=alert(1)>click</a>
在前面的我分享过的XSS向量里有提到过,就是当解析器不能匹配到一个标签里属性值的结束界定符的时候会认为这是个无效的标签,将其当成文本.
<a href=" 变成<a href=" <body/onload=alert(1)>被解析成html.PHP的转义问题
在5.3.0之前,php默认开启了magic_quotes_gpc.
它不但会转换" ' 之类的字符,还会将转义%00转换成\0
在javascript的字符串中\0又会被转义回去.
注:即便关闭了魔术引号,开发者一般也会实用addslashes之类的函数,这些函数同样会将%00转换成\0
So
document.write('<img src="<iframe/onload=alert(1)>\0">')
--------------------------------------------------------------------------------
相关评论:
--------------------------------------------------------------------------------
Xhm1n9 | 2012-06-29 01:34
实用的技巧:)
horseluke (微碌) | 2012-06-29 01:53
PHP的输出转义一般用htmlspecialchars的...addslashes只是数据库相关转义,输出转义用addslashes肯定不能通过代码审计的。
但是............有没有人研究过绕过strip_tags?见到有人用这个来做输出转义,觉得不安全,但又说不出所以然,更试不出所以然...
Sogili (-_-)Web疯狂科学家//mmme.me(-_-) | 2012-06-29 01:58
@horseluke 嗯,不过htmlspecialchars不会转换%00,如果真的没处理%00就更好玩了.
horseluke (微碌) | 2012-06-29 02:03
@Sogili 不明白,对XSS不熟悉,求详解...
Sogili (-_-)Web疯狂科学家//mmme.me(-_-) | 2012-06-29 02:09
@horseluke IE可以解析<[0x00]i[0x00]0m[0x00]0g src=xx:x o[0x00]nerror=alert(1)> 可以绕过很多filter,所以不处理[0x00]是很危险的.我了解的只是XSS的方面,我想对服务端安全影响也不小.
_Evil (性趣是最好的老师.) | 2012-06-29 06:44
web科学家这个不错 不过范围小了的 只能ie
gainover (">_< ' / & \ 看啥,没见过跨站字符么) | 2012-06-29 07:53
可以在自己电脑上写个利用场景试一试
BYOD需要更具时效性的网络安全防护策略
随着BYOD逐渐由员工带入企业,给企业的安全风险管理带来了不小的压力,因此企业的IT部门试图将网络和数据安全传递给员工,但是这样做也会带来的安全误导
收藏 0赞 0分享
linux下防止ssh暴力破解的方法
今天在盛大云看到一个不错的防止ssh暴力破解的帖子,转过来和大家分享下,主要是依靠denyhost软件。稳重所讲的是下载安装包安装,实际上可以从直接使用yum或者apt安装,找到相应的源就可以。
收藏 0赞 0分享
快速击破PaaS安全三大挑战的诀窍
很多担心安全的企业使用一个简单的解决方案:在它们进入云端之前加密对象。不幸的是,这种方法对于减缓平台即服务(PaaS)的安全问题并不是最优的方案
收藏 0赞 0分享
网管教你预防黑客DdoS攻击的技巧
DDoS攻击是利用一批受控制的机器向一台机器发起攻击,这样来势迅猛的攻击令人难以防备,因此具有较大的破坏性
收藏 0赞 0分享
查看更多