Uninitialized Channel Map Array Can Leak Data to User Space in qdsp6v2 Driver (CVE-2016-5347)

Release Date:

April 17, 2017

Affected Projects:

Android for MSMFirefox OS for MSMQRD Android

Advisory ID:

QCIR-2017-00022-1

CVE ID(s):

CVE-2016-5347

Summary:

The following security vulnerabilities have been identified: CVE-2016-5347 The function msm_qti_pp_get_channel_map_mixer() introduces channel_map[PCM_FORMAT_MAX_NUM_CHANNEL] that is not initialized. In adm_get_multi_ch_map() is a memcpy() call that copies data to channel_map. However, this is only done if set_channel_map is true that is mostly not the case and hence, adm_get_multi_ch_map() will just return 0 without copying anything to channel_map. Afterwards, the uninitialized channel_map is copied to user space. This can leak kernel stack data to user space.

Access Vector: Local
Security Risk: Medium
Access Vector: Local

Affected Versions:

All Android releases from CAF using the Linux kernel.

Patch:

We advise customers to apply the following patches:

Individual Patches

CVE-2016-5347:

Acknowledgement:

Qualcomm Innovation Center, Inc. (QuIC) thanks Seven Shen (Trend Micro Mobile Threat Research Team) for bringing this issue to QuIC's attention.

Revisions:

Initial revision

Contact:

security-advisory@quicinc.com