当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2014-049051

漏洞标题:360webscan 0.1.1.9 XSS防御绕过

相关厂商:奇虎360

漏洞作者: mramydnei

提交时间:2014-01-16 13:49

修复时间:2014-03-02 13:50

公开时间:2014-03-02 13:50

漏洞类型:xss跨站脚本攻击

危害等级:中

自评Rank:10

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-01-16: 细节已通知厂商并且等待厂商处理中
2014-01-16: 厂商已经确认,细节仅向厂商公开
2014-01-26: 细节向核心白帽子及相关领域专家公开
2014-02-05: 细节向普通白帽子公开
2014-02-15: 细节向实习白帽子公开
2014-03-02: 细节向公众公开

简要描述:

防御正则存在严重缺陷

详细说明:

先来一段你们防御XSS+SQLi的正则:

$getfilter = "<[^>]*?=[^>]*?&#[^>]*?>|\\b(alert\\(|confirm\\(|expression\\(|prompt\\()|<[^>]*?\\b(onerror|onmousemove|onload|onclick|onmouseover)\\b[^>]*?>|^\\+\\/v(8|9)|\\b(and|or)\\b\\s*?([\\(\\)'\"\\d]+?=[\\(\\)'\"\\d]+?|[\\(\\)'\"a-zA-Z]+?=[\\(\\)'\"a-zA-Z]+?|>|<|\s+?[\\w]+?\\s+?\\bin\\b\\s*?\(|\\blike\\b\\s+?[\"'])|\\/\\*.+?\\*\\/|<\\s*script\\b|\\bEXEC\\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\\s+(TABLE|DATABASE)";


存在的问题大致可以分为两类:
第一,onerror,onmousemove,onload.onclick,onmouseover作为属性出现在没有闭合的标签内时,不会被拦截。但是这种没有闭合的标签都会被后面的标签所闭合,导致可以植入恶意代码。比如说:

<img src=x onerror=print()%20


第二,过滤关键字alert(),confirm(),prompt()和expression()从某种意义上说是可以拦截一部分扫描工具的检测,但是没有实际意义。举个简单的bypass例子:

<img src=x onerror=window[/aler/.source%2b/t/.source](1)%20


这种关键字完全是可以拆分的,即使实在GPC开启的情况下也没有办法拦截,因为单双引号都有完美的替代品就是//.souce

漏洞证明:

2014-01-16 12:33:15的屏幕截图.png

修复方案:

我不懂正则,但是你们可以根据绕过方案做针对性修改

版权声明:转载请注明来源 mramydnei@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:1

确认时间:2014-01-16 18:07

厂商回复:

感谢关注和反馈,该问题在新版中进行修复。考虑到性能和简单性,这个脚本只提供了基础的功能防护,目标是为了进行最基础的SQL注入和XSS防护。完整功能请使用360网站卫士:wangzhan.360.cn

最新状态:

暂无