PT-2020-14217 · Apple · Horndis
Chennan
+1
·
Published
2020-08-12
·
Updated
2021-11-18
·
CVE-2020-15137
CVSS v3.1
5.9
Medium
| Vector | AV:P/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H |
Name of the Vulnerable Software and Affected Versions
HoRNDIS versions (affected versions not specified)
Description
The issue is caused by an integer overflow in the RNDIS packet parsing routines, allowing a malicious USB device to trigger disclosure of unrelated kernel memory to userspace applications on the host or cause the kernel to crash. Kernel memory disclosure is more likely on 32-bit kernels, while 64-bit kernels are more likely to crash during attempted exploitation. The vulnerability is located in the
HoRNDIS::receivePacket function, where variables msg len, data ofs, and data len can be controlled by an attached USB device. A negative value of data ofs can bypass the check for (data ofs + data len + 8) > msg len, leading to a wild pointer copy in the mbuf copyback call.Recommendations
At the moment, there is no information about a newer version that contains a fix for this vulnerability. As a temporary workaround, consider restricting the use of HoRNDIS to only trusted USB devices, especially in multi-tenant systems.
Integer Overflow
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Horndis