高通芯片漏洞(CVE-2020-11292)影响 30%的 Android 手机
来自Checkpoint的研究人员已经在高通移动站调制解调器中发现了一个缓冲区溢出漏洞,漏洞为CVE-2020-11292,攻击者可以利用该漏洞触发内存损坏并在智能手机上执行任意代码。
移动站调制解调器(MSM)是高通公司于1990年代初开始设计的片上系统(SoC),多年来,安全研究人员经常将这一组件作为目标,以寻找一种远程攻击移动设备的新方法,例如,通过发送SMS或精心制作的无线电数据包。
多年来,SoC已进行了更新,以支持2G,3G,4G和5G蜂窝通信。
今天使用高通MSM芯片的设备包括Google,三星,LG,小米和One Plus出售的高端智能手机型号,仅举几例。
该漏洞位于高通MSM接口(QMI)中,该协议是一种专有协议,用于在调制解调器中的软件组件与其他外围子系统之间进行通信。
攻击者可以通过QMI接口向MSM组件发送格式错误的Type-Length-Value(TLV)数据包来触发问题,他可以将无线通信或多媒体内容中的数据包发送到设备,由易受攻击的QMI接口解析。
“qmi_voicei_srvcc_call_config_req函数通过解析TLV有效负载开始执行。它不使用QMI框架将有效负载转换为C结构。” 阅读CheckPoint发表的帖子。
“如果TLV数据包的类型等于1,则该值解释如下:
- 通话次数(1个字节)。
- 调用上下文数组(每个调用0x160字节)。
为了处理此数据包,处理程序在调制解调器堆上分配0x5B90字节,从有效负载中提取调用数到偏移量0x10处分配的缓冲区中,然后循环以从偏移量0x12开始将所有调用上下文提取到缓冲区中。由于没有检查最大呼叫数,因此可以在呼叫数字段中传递值0xFF,从而在调制解调器堆中覆盖最多0x12 + 0x160 * 0xFF – 0x5B90 = 0x10322字节。”
高通公司已在12月解决了该问题,但在撰写本文时,尚不清楚谁应用了补丁。
在此漏洞的时间表下方:
2020年10月8日 | 错误报告和POC已发送给Qualcomm。 |
---|---|
2020年10月8日 | 高通确认该报告,并将其分配给QPSIIR-1441进行跟踪。 |
2020年10月15日 | 高通公司确认了该问题,并将其命名为“高评级”漏洞。 |
2021年2月24日 | Check Point要求提供此问题的CVE-ID,并确认披露日期为2021年4月。 |
2021年2月24日 | 高通公司通知Check Point CVE-ID为CVE-2020-11292。 |
2021年5月6日 | 公开披露。 |
“全球约有30%的移动电话上存在QMI, 但对其可能的攻击媒介的作用知之甚少。” 总结报告。“我们在调制解调器数据服务中发现了一个漏洞,该漏洞可用于控制调制解调器并从应用处理器动态修补它。攻击者可以利用此漏洞将恶意代码从Android注入调制解调器。这使攻击者可以访问用户的呼叫历史记录和SMS,还可以收听用户的对话。黑客可以利用此漏洞来解锁SIM,从而克服服务提供商对移动设备施加的限制。”
