Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: net: usb: aqc111: Fix out-of-bounds accesses in RX fixup aqc111_rx_fixup() contains several out-of-bounds accesses that can be triggered by a malicious (or defective) USB device, in particular: - The metadata array (desc_offset..desc_offset+2*pkt_count) can be out of bounds, causing OOB reads and (on big-endian systems) OOB endianness flips. - A packet can overlap the metadata array, causing a later OOB endianness flip to corrupt data used by a cloned SKB that has already been handed off into the network stack. - A packet SKB can be constructed whose tail is far beyond its end, causing out-of-bounds heap data to be considered part of the SKB's data. Found doing variant analysis. Tested it with another driver (ax88179_178a), since I don't have a aqc111 device to test it, but the code looks very similar.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 361459cd9642631f048719169da9ef14cbf4a932 before 404998a137bcb8a926f7c949030afbe285472593; affected 361459cd9642631f048719169da9ef14cbf4a932 before d90df6da50c56ad8b1a132e3cf86b6cdf8f507b7; affected 361459cd9642631f048719169da9ef14cbf4a932 before b416898442f2b6aa9f1b2f2968ce07e3abaa05f7; affected 361459cd9642631f048719169da9ef14cbf4a932 before 36311fe98f55dea9200c69e2dd6d6ddb8fc94080; affected 361459cd9642631f048719169da9ef14cbf4a932 before afb8e246527536848b9b4025b40e613edf776a9d |
| Linux / Linux | affected 5.0; unaffected 0 before 5.0; unaffected 5.4.190 through 5.4.*; unaffected 5.10.112 through 5.10.*; unaffected 5.15.35 through 5.15.*; unaffected 5.17.4 through 5.17.*; unaffected 5.18 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/404998a137bcb8a926f7c949030afbe285472593
- https://git.kernel.org/stable/c/d90df6da50c56ad8b1a132e3cf86b6cdf8f507b7
- https://git.kernel.org/stable/c/b416898442f2b6aa9f1b2f2968ce07e3abaa05f7
- https://git.kernel.org/stable/c/36311fe98f55dea9200c69e2dd6d6ddb8fc94080
- https://git.kernel.org/stable/c/afb8e246527536848b9b4025b40e613edf776a9d