ThinkSAAS通用按钮储存型XSS

2015-05-14T00:00:00
ID SSV:94312
Type seebug
Reporter Root
Modified 2015-05-14T00:00:00

Description

简要描述:

至少有4处以上

详细说明:

[WooYun: ThinkSAAS存储型跨站(2处)](http://www.wooyun.org/bugs/wooyun-2014-084965)

这个位置现在已经修复过,直接输入javascript被过滤而引发上次问题没过滤的&被转译成&所以上次的payload已经不适用了 发现这个点是基于黑名单的过滤,黑名单的过滤肯定会有考虑不到的地方 这次将payload转换为data:text/html;base64, PGltZyBzcmM9eCBvbmVycm9yPWFsZXJ0KDEpPg== 这样的话一样可以触发xss

漏洞证明:

这个问题通用地存在所有有插入超链接这个按钮的位置

http://127.0.0.1/reshow/thinksaas/index.php?app=group&ac=create

创建小组的位置

http://127.0.0.1/reshow/thinksaas/index.php?app=group&ac=add&id=3

小组中发布帖子的位置

http://127.0.0.1/reshow/thinksaas/index.php?app=article&ac=add

写文章的位置

http://127.0.0.1/reshow/thinksaas/index.php?app=attach&ac=create

创建资料库的位置 这些都是普通用户可以添加记录的位置,就给出一个的图吧 其他都是一样的

<img src="https://images.seebug.org/upload/201505/081108157ada6798754e58be25ae5580efe0cdb2.png" alt="1.png" width="600" onerror="javascript:errimg(this);">

这里还是同上一次需要抓包将请求a标签的href属性中的http://去掉,发完之后看看效果

<img src="https://images.seebug.org/upload/201505/081109168b102419dc7d03a89cf4dc5a6d5339ad.png" alt="2.png" width="600" onerror="javascript:errimg(this);">

已经将payload插入进来了,点击触发

<img src="https://images.seebug.org/upload/201505/08111127c6de98993380ecc9b4a167f4746ccdca.png" alt="3.png" width="600" onerror="javascript:errimg(this);">

Chrome下测试成功,FF不弹窗但是成功添加了img标签