CVE-2022-48805·Kernel vulnerability
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.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.16.10
- Published
- 2024-07-16
Affected versions
From: 5.16
Until: 5.16.10
Fixed in: 5.16.10
How to fix this CVE
Update your Linux kernel to version 5.16.10 or later to fix critical out-of-bounds memory access vulnerabilities in the AX88179/AX88178A USB Ethernet driver. These memory safety issues in the RX packet processing routine could allow a malicious USB device to leak kernel heap data or cause memory corruption. Systems using affected AX88xxx USB network adapters should prioritize this update.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Check your current kernel version by running: uname -r
- Verify if the system has AX88179 or AX88178A USB Ethernet adapters connected: lsusb | grep -i 'asix\|ax88'
- Confirm if the kernel version is between 5.16.0 and 5.16.9: grep -oP 'release = \K[0-9.]+' /proc/version || uname -r
- After patching, reboot and confirm the new kernel version loads: uname -r (should be 5.16.10 or higher)
FAQ
What is CVE-2022-48805?
CVE-2022-48805 is a high-severity memory safety flaw in the Linux kernel's AX88179/AX88178A USB Ethernet driver where the RX packet processing function fails to validate buffer boundaries, allowing out-of-bounds reads and potential heap data disclosure or corruption.
Is CVE-2022-48805 being actively exploited?
No, CVE-2022-48805 is not listed on the CISA Known Exploited Vulnerabilities (KEV) catalog and no public exploits are available, though the vulnerability requires physical access to a malicious USB device to trigger.
What versions of Kernel are affected by CVE-2022-48805?
Linux kernel versions 5.16.0 through 5.16.9 are affected. Version 5.16.10 and later contain the fix.
How do I check if my server is vulnerable to CVE-2022-48805?
Run 'uname -r' to check your kernel version. If the output shows 5.16.0 through 5.16.9, your system is vulnerable. Also confirm you have an AX88179 or AX88178A USB adapter with 'lsusb | grep -i asix'.
Does Defensia detect CVE-2022-48805?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2022-48805 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/1668781ed24da43498799aa4f65714a7de201930
- https://git.kernel.org/stable/c/57bc3d3ae8c14df3ceb4e17d26ddf9eeab304581
- https://git.kernel.org/stable/c/63f0cfb36c1f1964a59ce544156677601e2d8740
- https://git.kernel.org/stable/c/711b6bf3fb052f0a6b5b3205d50e30c0c2980382
- https://git.kernel.org/stable/c/758290defe93a865a2880d10c5d5abd288b64b5d
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2022-48805. Free for 1 server.
Get started free