phpwindv9.0.1存储型XSS及利用技巧

漏洞概要

缺陷编号:WooYun-2015-0127255

漏洞标题:phpwindv9.0.1存储型XSS及利用技巧

相关厂商:phpwind

漏洞作者:我是小号

提交时间:2015-07-23 00:22

公开时间:2015-10-21 10:34

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

危害等级:中

自评Rank:10

漏洞状态:厂商已经确认

Tags标签:

漏洞详情

披露状态:

2015-07-23: 细节已通知厂商并且等待厂商处理中
2015-07-23: 厂商已经确认,细节仅向厂商公开
2015-07-26: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航、无声信息)
2015-09-16: 细节向核心白帽子及相关领域专家公开
2015-09-26: 细节向普通白帽子公开
2015-10-06: 细节向实习白帽子公开
2015-10-21: 细节向公众公开

简要描述:

phpwindv9.0.1存储型XSS及利用技巧(需要一定权限)

详细说明:

漏洞利用需要phpwind版主以及总版主权限,可以在某些情况下被用来获取管理员最高权限。1.版主和总版主操作(置顶、高亮、精华)帖子的时候,可以填入操作填入理由,在操作理由处填入xsscode

反应到Fiddler里面就是

2.被操作帖子所属的用户就会收到通知,展开详情就会触发xss payload

成功收到cookies

至此,一个xss的内容大概讲完了,看官肯定觉得鸡肋点有两处:1.版主权限2.phpwind做了http_only防护,导致无法读取cookies里面的csrf_token字段,导致cookies不完整,不能凭XSS平台收到的cookies登录

漏洞证明:

现在我们需要考虑如何绕过这两点鸡肋点:1.版主权限,可以社工获得。或者是本身已经是版主权限的话就根本不必要执行前面的步骤2.绕过http_only防护,毕竟“XSS已经属于一个远程代码执行了”--呆子不开口,要获取完整的cookies其实只差一步,就是要获取被http_only的csrf_token字段。0x_Jin在http://**.**.**.**/bugs/wooyun-2010-076685里面提到过利用XHR结合XSS嗅探内网的技巧,可以用在这里因为phpwind把http_only字段的内容直接写在了页面源代码内的input值内。所以参考了网上的一些资料,写了一个XSS平台可以用的利用XHR获取页面源代码的脚本,配置一下:

XSS平台就收到整个页面的源代码了

从源代码获取被保护的csrf_token

至此,http_only保护的字段也被获取到了。cookies完整,如果接收的及时的话,就可以凭借cookies去登陆对应账户了,或者进一步利用劫持用户发个帖什么的。

修复方案:

操作理由处htmlencode一下

漏洞回应

厂商回应:

危害等级:中

漏洞Rank:6

确认时间:2015-07-2310:32

厂商回复:

您好,经确认漏洞存在,但是利用条件偏高,漏洞等级定为中危。感谢您对阿里巴巴的支持与关注。

最新状态:

暂无

评价

  1. 2010-01-01 00:00 px1624 白帽子 | Rank:963 漏洞数:126)

    自从阿里巴巴收了phpwind之后,貌似phpwind落寞了

  2. 2010-01-01 00:00 小将 白帽子 | Rank:0 漏洞数:0)

    哈哈

  3. 2010-01-01 00:00 sOnsec 白帽子 | Rank:61 漏洞数:7)

    0 -

  4. 2010-01-01 00:00 杯水 白帽子 | Rank:0 漏洞数:0)

    坐等公开

  5. 2010-01-01 00:00 Rainism 白帽子 | Rank:10 漏洞数:1)

    mark