Qualcomm bug impacts about 30% of all smartphones

Pierluigi Paganini May 06, 2021

A high severity flaw, tracked as CVE-2020-11292, affects Qualcomm Mobile Station Modem chips used by around 30% of all smartphones worldwide

Researchers from Checkpoint have discovered a buffer overflow vulnerability, tracked as CVE-2020-11292, in the Qualcomm Mobile Station Modem that can be exploited by attackers to trigger memory corruption and execute arbitrary code on the smartphone.

Mobile Station Modem (MSM) is a system on chips (SoC) designed by Qualcomm starting in the early 1990s, over the years, security researchers have often targeted this component to find a new way to remotely attack a mobile device, for example by sending an SMS or crafted radio packet. 

The SoC has been updated across the years to support 2G, 3G, 4G, and 5G cellular communications.

Devices that use Qualcomm MSM chips today include high-end smartphone models sold by Google, Samsung, LG, Xiaomi, and One Plus, just to name a few.

The vulnerability resides in Qualcomm MSM Interface (QMI), a proprietary protocol used to communicate between software components in the modem and other peripheral subsystems.

An attacker could trigger the issue by sending malformed Type-Length-Value (TLV) packets to the MSM component via the QMI interface, he can the packets inside radio communications or multimedia content sent to the device, which is parsed by the vulnerable QMI interface.

“The qmi_voicei_srvcc_call_config_req function begins its execution by parsing the TLV payload. It does not use the QMI framework to convert the payload to a C structure.” reads the post published by CheckPoint.

“If the type of a TLV packet is equal to 1, the value is interpreted as the following:

  • Number of calls (1 byte).
  • Array of call contexts (0x160 bytes per call).

To process this packet, the handler allocates 0x5B90 bytes on the modem heap, extracts the number of calls from the payload into the allocated buffer at offset 0x10, and then loops to fetch all call contexts into the buffer starting at offset 0x12. Due to the lack of checking for the maximum number of calls, it is possible to pass the value 0xFF in the number of calls field and thus overwrite in the modem heap up to 0x12 + 0x160 * 0xFF – 0x5B90 = 0x10322 bytes.”

Qualcomm had addressed the issue in December, but at the time of this writing it is not clear who has applied the patches.

Below the timeline for this vulnerability:

October 8, 2020Bug report and POC sent to Qualcomm.
October 8, 2020Qualcomm acknowledges the report and assigns it QPSIIR-1441 for tracking.
October 15, 2020Qualcomm confirms the issue and names it a High rated vulnerability.
February 24, 2021Check Point requests the CVE-ID for this issue and acknowledges that the disclosure date is April 2021.
February 24, 2021Qualcomm informs Check Point that the CVE-ID will be CVE-2020-11292.
May 6, 2021Public disclosure.

“QMI is present on approximately 30% of all mobile phones in the world but little is known about its role as a possible attack vector.” concludes the report. “We discovered a vulnerability in a modem data service that can be used to control the modem and dynamically patch it from the application processor. An attacker can use such a vulnerability to inject malicious code into the modem from Android. This gives the attacker access to the user’s call history and SMS, as well as the ability to listen to the user’s conversations. A hacker can exploit the vulnerability to unlock the SIM, thereby overcoming the limitations of the service providers imposed on the mobile device.”

Follow me on Twitter: @securityaffairs and Facebook

[adrotate banner=”9″][adrotate banner=”12″]

Pierluigi Paganini

(SecurityAffairs – hacking, Qualcomm)

[adrotate banner=”5″]

[adrotate banner=”13″]



you might also like

leave a comment