CVE-2017-11064 in Androidinfo

Summary

by MITRE

In Android for MSM, Firefox OS for MSM, QRD Android, with all Android releases from CAF using the Linux kernel, a buffer overread is observed during processing of ACA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_PASSPOINT_LIST and QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_LIST cfg80211 vendor commands in __wlan_hdd_cfg80211_set_passpoint_list and hdd_extscan_passpoint_fill_network_list function respectively.

Once again VulDB remains the best source for vulnerability data.

Analysis

by VulDB Data Team • 01/16/2021

This vulnerability exists within the wireless networking subsystem of Android devices running on Qualcomm chipsets, specifically affecting the cfg80211 subsystem that handles wireless configuration commands. The issue manifests as a buffer overread condition when processing specific vendor commands related to passpoint network provisioning and extended scan functionality. The vulnerability is present in Android for MSM, Firefox OS for MSM, and QRD Android implementations that utilize the Linux kernel, indicating a widespread impact across Qualcomm-based mobile platforms. The flaw occurs during the processing of two distinct vendor subcommands: ACA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_PASSPOINT_LIST and QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_LIST, which are part of the wireless extended scan capabilities for passpoint network provisioning.

The technical implementation flaw resides in the __wlan_hdd_cfg80211_set_passpoint_list and hdd_extscan_passpoint_fill_network_list functions where insufficient bounds checking occurs when handling incoming data structures. When these functions process the vendor commands, they fail to properly validate the length of incoming data buffers before reading from them, leading to memory access violations beyond the allocated buffer boundaries. This buffer overread condition can result in arbitrary code execution or system crashes, as the kernel attempts to read memory locations that may contain sensitive data or contain corrupted information. The vulnerability is classified under CWE-125 as an out-of-bounds read, which represents a fundamental memory safety issue that can be exploited to gain unauthorized access to system resources.

The operational impact of this vulnerability is significant as it can be exploited by malicious actors to compromise the security of Qualcomm-based Android devices. An attacker could potentially send specially crafted vendor commands through the wireless interface to trigger the buffer overread condition, leading to privilege escalation or denial of service attacks. The vulnerability affects all Android releases from CAF (Code_Aurora_Forum) that utilize the Linux kernel, representing a substantial attack surface across numerous device models and manufacturers. The nature of the flaw means that exploitation does not require physical access to the device or elevated privileges, as the vulnerability exists within the kernel-level wireless subsystem that processes network configuration commands. This makes it particularly dangerous as it can be exploited through network-based attacks or via compromised applications that can send malicious wireless commands.

Mitigation strategies for this vulnerability should focus on implementing proper bounds checking in the affected kernel functions and applying security patches from device manufacturers. The most effective approach involves updating the kernel code to validate buffer lengths before processing vendor commands, ensuring that all incoming data structures are properly sized and validated. Organizations should also implement network monitoring solutions to detect anomalous wireless configuration commands that may indicate exploitation attempts. Additionally, device manufacturers should conduct thorough code reviews of wireless subsystem implementations to identify similar buffer overread conditions that may exist in other kernel functions. The vulnerability highlights the importance of secure coding practices in kernel-level code and the need for comprehensive testing of wireless subsystems, particularly those handling vendor-specific commands. This issue aligns with ATT&CK technique T1068 which involves exploiting local privileges and can be mitigated through proper input validation and memory safety controls as recommended by the CWE guidelines for preventing out-of-bounds reads.

Reservation

07/07/2017

Disclosure

10/10/2017

Moderation

accepted

CPE

ready

EPSS

0.00111

KEV

no

Activities

very low

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!