ID

VAR-201705-3427


CVE

CVE-2017-0633


TITLE

Broadcom of Wi-Fi Vulnerability in information disclosure in drivers

Trust: 0.8

sources: JVNDB: JVNDB-2017-003723

DESCRIPTION

An information disclosure vulnerability in the Broadcom Wi-Fi driver could enable a local malicious component to access data outside of its permission levels. This issue is rated as Moderate because it first requires compromising a privileged process. Product: Android. Versions: Kernel-3.10, Kernel-3.18. Android ID: A-36000515. References: B-RB#117131. An attacker can exploit this issue to obtain potentially sensitive information. Information obtained may aid in further attacks. This issue is tracked by Android Bug ID-A-36000515. Broadcom: Information Leak from Host to Dongle via "wldev_ioctl" CVE-2017-0633 Broadcom produces Wi-Fi HardMAC SoCs which are used to handle the PHY and MAC layer processing. These chips are present in both mobile devices and Wi-Fi routers, and are capable of handling many Wi-Fi related events without delegating to the host OS. On Android devices, the "bcmdhd" driver is used in order to communicate with the Wi-Fi SoC (also referred to as "dongle"). Along with the regular flow of frames transferred between the host and the dongle, the two communicate with one another via a set of "ioctls" which can be issued to read or write dongle configuration from the host. This information is exchanged using the SDIO "control" channel (SDPCM_CONTROL_CHANNEL) rather than the regular "data" and "glom" channels (which are used to transfer frames). When the "bcmdhd" driver wishes to send a ioctl to the dongle, it does so by calling "wldev_ioctl". This function has the following signature: s32 wldev_ioctl(struct net_device *dev, u32 cmd, void *arg, u32 len, u32 set) Where "arg" is a pointer to the argument supplied to the ioctl call, and "len" indicates the length of this argument. This function transfers the supplied buffer over SDIO to the dongle, where it is handled by the dongle's ioctl handler function. The "bcmdhd" driver issues many such ioctls, either when accessing iovars, or when reading and writing configuration used by the dongle. However, in all of these cases, "bcmdhd" neglects to clear the unused memory in the supplied argument buffer before calling "wldev_ioctl". As a result, the buffers transferred via the ioctl calls contain uninitialised memory, including pointers and other information processed by the driver. To demonstrate this issue, I've located the needed symbols on the Nexus 6P (NUF26K, BCM4358 version 7.112.201.1). The dongle's ioctl handler is at located at ROM address 0x19734, and the pointer to the registered ioctl handler is located in RAM address 0x214BF0. By patching the RAM address to point to a newly allocated code stub, we are able to intercept the ioctl handler on the dongle. I've written a small code stub which instruments the ioctl handler in order to dump the contents of the buffers passed in by the host. Here's a small sample of these log dumps: (1237) ioctl - code: 262, length: 512 (1238) 0 : 6f737361 (1239) 4 : 65725f63 (1240) 8 : 65695f71 ... (1404) 148 : ffffffc0 (1405) 152 : 00cdd204 (1406) 156 : ffffffc0 (1407) 160 : 5bd4b6f0 (1408) 164 : ffffffc0 (1409) 168 : 003ee868 (1410) 172 : ffffffc0 (1411) 176 : 5bd4b7e0 (1412) 180 : ffffffc0 (1413) 184 : 5bd4b810 (1414) 188 : ffffffc0 (1415) 192 : 5bd4b790 (1416) 196 : ffffffc0 As can be seen in the log above, the buffer contains multiple pointers from the host's kernel. This issue can be addressed by clearing the unused memory in the passed in argument buffers prior to calling "wldev_ioctl". This bug is subject to a 90 day disclosure deadline. After 90 days elapse or a patch has been made broadly available, the bug report will become visible to the public. Found by: laginimaineb

Trust: 2.07

sources: NVD: CVE-2017-0633 // JVNDB: JVNDB-2017-003723 // BID: 98223 // VULMON: CVE-2017-0633 // PACKETSTORM: 142626

IOT TAXONOMY

category:['other device']sub_category:general

Trust: 0.1

sources: OTHER: None

AFFECTED PRODUCTS

vendor:linuxmodel:kernelscope:eqversion:3.10

Trust: 2.4

vendor:linuxmodel:kernelscope:eqversion:3.18

Trust: 2.4

vendor:googlemodel:pixel cscope:eqversion:0

Trust: 0.3

vendor:googlemodel:nexus playerscope:eqversion:0

Trust: 0.3

vendor:googlemodel:nexusscope:eqversion:9

Trust: 0.3

vendor:googlemodel:nexus 6pscope: - version: -

Trust: 0.3

vendor:googlemodel:nexusscope:eqversion:6

Trust: 0.3

sources: BID: 98223 // JVNDB: JVNDB-2017-003723 // CNNVD: CNNVD-201705-224 // NVD: CVE-2017-0633

CVSS

SEVERITY

CVSSV2

CVSSV3

nvd@nist.gov: CVE-2017-0633
value: MEDIUM

Trust: 1.0

NVD: CVE-2017-0633
value: MEDIUM

Trust: 0.8

CNNVD: CNNVD-201705-224
value: LOW

Trust: 0.6

VULMON: CVE-2017-0633
value: LOW

Trust: 0.1

nvd@nist.gov: CVE-2017-0633
severity: LOW
baseScore: 2.6
vectorString: AV:N/AC:H/AU:N/C:P/I:N/A:N
accessVector: NETWORK
accessComplexity: HIGH
authentication: NONE
confidentialityImpact: PARTIAL
integrityImpact: NONE
availabilityImpact: NONE
exploitabilityScore: 4.9
impactScore: 2.9
acInsufInfo: NONE
obtainAllPrivilege: NONE
obtainUserPrivilege: NONE
obtainOtherPrivilege: NONE
userInteractionRequired: NONE
version: 2.0

Trust: 1.9

nvd@nist.gov: CVE-2017-0633
baseSeverity: MEDIUM
baseScore: 4.7
vectorString: CVSS:3.0/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N
attackVector: LOCAL
attackComplexity: HIGH
privilegesRequired: NONE
userInteraction: REQUIRED
scope: UNCHANGED
confidentialityImpact: HIGH
integrityImpact: NONE
availabilityImpact: NONE
exploitabilityScore: 1.0
impactScore: 3.6
version: 3.0

Trust: 1.8

sources: VULMON: CVE-2017-0633 // JVNDB: JVNDB-2017-003723 // CNNVD: CNNVD-201705-224 // NVD: CVE-2017-0633

PROBLEMTYPE DATA

problemtype:CWE-200

Trust: 1.8

sources: JVNDB: JVNDB-2017-003723 // NVD: CVE-2017-0633

THREAT TYPE

remote

Trust: 0.6

sources: CNNVD: CNNVD-201705-224

TYPE

information disclosure

Trust: 0.6

sources: CNNVD: CNNVD-201705-224

CONFIGURATIONS

sources: JVNDB: JVNDB-2017-003723

PATCH

title:Android のセキュリティに関する公開情報 - 2017 年 5 月 url:https://source.android.com/security/bulletin/2017-05-01

Trust: 0.8

title:Linux Kernel Archivesurl:http://www.kernel.org

Trust: 0.8

title:Android Broadcom Wi-Fi Fixes for driver information disclosure vulnerabilitiesurl:http://www.cnnvd.org.cn/web/xxk/bdxqById.tag?id=69852

Trust: 0.6

title:Android Security Bulletins: Android Security Bulletin—May 2017url:https://vulmon.com/vendoradvisory?qidtp=android_security_bulletins&qid=473019536b98d5c3b462c97d8bdb8384

Trust: 0.1

title:CVE-Studyurl:https://github.com/thdusdl1219/CVE-Study

Trust: 0.1

sources: VULMON: CVE-2017-0633 // JVNDB: JVNDB-2017-003723 // CNNVD: CNNVD-201705-224

EXTERNAL IDS

db:NVDid:CVE-2017-0633

Trust: 3.0

db:BIDid:98223

Trust: 2.0

db:JVNDBid:JVNDB-2017-003723

Trust: 0.8

db:CNNVDid:CNNVD-201705-224

Trust: 0.6

db:OTHERid:NONE

Trust: 0.1

db:VULMONid:CVE-2017-0633

Trust: 0.1

db:PACKETSTORMid:142626

Trust: 0.1

sources: OTHER: None // VULMON: CVE-2017-0633 // BID: 98223 // JVNDB: JVNDB-2017-003723 // PACKETSTORM: 142626 // CNNVD: CNNVD-201705-224 // NVD: CVE-2017-0633

REFERENCES

url:https://source.android.com/security/bulletin/2017-05-01

Trust: 2.0

url:http://www.securityfocus.com/bid/98223

Trust: 1.8

url:https://nvd.nist.gov/vuln/detail/cve-2017-0633

Trust: 0.9

url:http://cve.mitre.org/cgi-bin/cvename.cgi?name=cve-2017-0633

Trust: 0.8

url:http://www.android.com/

Trust: 0.3

url:https://ieeexplore.ieee.org/abstract/document/10769424

Trust: 0.1

url:https://cwe.mitre.org/data/definitions/200.html

Trust: 0.1

url:https://nvd.nist.gov

Trust: 0.1

url:https://source.android.com/security/bulletin/2017-05-01.html

Trust: 0.1

sources: OTHER: None // VULMON: CVE-2017-0633 // BID: 98223 // JVNDB: JVNDB-2017-003723 // PACKETSTORM: 142626 // CNNVD: CNNVD-201705-224 // NVD: CVE-2017-0633

CREDITS

The vendor reported this issue.

Trust: 0.3

sources: BID: 98223

SOURCES

db:OTHERid: -
db:VULMONid:CVE-2017-0633
db:BIDid:98223
db:JVNDBid:JVNDB-2017-003723
db:PACKETSTORMid:142626
db:CNNVDid:CNNVD-201705-224
db:NVDid:CVE-2017-0633

LAST UPDATE DATE

2025-04-20T22:09:12.015000+00:00


SOURCES UPDATE DATE

db:VULMONid:CVE-2017-0633date:2017-05-19T00:00:00
db:BIDid:98223date:2017-05-18T16:17:00
db:JVNDBid:JVNDB-2017-003723date:2017-06-05T00:00:00
db:CNNVDid:CNNVD-201705-224date:2017-05-04T00:00:00
db:NVDid:CVE-2017-0633date:2025-04-20T01:37:25.860

SOURCES RELEASE DATE

db:VULMONid:CVE-2017-0633date:2017-05-12T00:00:00
db:BIDid:98223date:2017-05-01T00:00:00
db:JVNDBid:JVNDB-2017-003723date:2017-06-05T00:00:00
db:PACKETSTORMid:142626date:2017-05-23T00:03:32
db:CNNVDid:CNNVD-201705-224date:2017-05-04T00:00:00
db:NVDid:CVE-2017-0633date:2017-05-12T15:29:02.797