腾讯微博私信接口存储型XSS及修复
3378 点击·0 回帖
![]() | ![]() | |
![]() | 1、发送私信,内容为: <img src=# onerror=alert(1)> 2、当然直接访问私信是不存在问题的,不过有两个json接口是和私信相关的 下面这个接口是返回和多少用户有私信往来,同事返回最后一条私信内容,参数包括返回的记录数等: http://api.t.qq.com/inbox/pm_list.php<code> 下面这个接口是返回和指定用户的私信内容,参数包括返回的记录数等: http://api.t.qq.com/inbox/pm_conversation.php?account=xxx</code> 3、由于上面两个接口返回的Content-Type为:text/html; charset=utf-8,同时返回的私信json数据中 oc 也为私信内容,但是没有经过编码处理,直接输出为:<img src=# onerror=alert(1)>。所以造成漏洞的出现。 给某个用户发私信,但是要想办法让他访问接口地址。 图片:20121207103228806.jpg 图片:20121207103228431.jpg
修复方案: 1、指定Content-Type为application/json; charset=utf-8 2、对oc的值进行html编码处理 | |
![]() | ![]() |