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.