net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: partial
Summary
In the Linux kernel, the following vulnerability has been resolved: net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup ax88179_rx_fixup() contains several out-of-bounds accesses that can be triggered by a malicious (or defective) USB device, in particular: • The metadata array (hdr_off..hdr_off+2*pkt_cnt) 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. I have tested that this can be used by a malicious USB device to send a bogus ICMPv6 Echo Request and receive an ICMPv6 Echo Reply in response that contains random kernel heap data. It's probably also possible to get OOB writes from this on a little-endian system somehow - maybe by triggering skb_cow() via IP options processing -, but I haven't tested that.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
Version range not reported
- Linux Linux
3.9
References 8
git.kernel.org
- stable/c/711b6bf3fb052f0a6b5b3205d50e30c0c2980382
- stable/c/63f0cfb36c1f1964a59ce544156677601e2d8740
- stable/c/1668781ed24da43498799aa4f65714a7de201930
- stable/c/a0fd5492ee769029a636f1fb521716b022b1423d
- stable/c/758290defe93a865a2880d10c5d5abd288b64b5d
- stable/c/ffd0393adcdcefab7e131488e10dcfde5e02d6eb
- stable/c/9681823f96a811268265f35307072ad80713c274
- stable/c/57bc3d3ae8c14df3ceb4e17d26ddf9eeab304581