CVE-2026-64571: wifi: p54: validate RX frame length in p54_rx_eeprom_readback()

Published Aug 5, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

wifi: p54: validate RX frame length in p54rxeepromreadback()

p54rxeepromreadback() copies the requested EEPROM slice out of a device-supplied readback frame without checking that the skb actually holds that many bytes. Commit da1b9a55ff11 ("wifi: p54: prevent buffer-overflow in p54rxeepromreadback()") closed the destination overflow by copying a fixed priv->eepromslicesize (and rejecting a mismatched advertised len), but the source side is still unbounded: nothing verifies the frame is long enough to supply that many bytes.

A malicious USB device can send a short frame whose advertised len matches priv->eepromslicesize while the payload is truncated. The equality check passes and memcpy() reads past the end of the skb, leaking adjacent heap:

BUG: KASAN: slab-out-of-bounds in p54rx (drivers/net/wireless/intersil/p54/txrx.c:507) Read of size 1016 at addr ffff88800f077114 by task swapper/0/0 Call Trace: <IRQ> ... asanmemcpy (mm/kasan/shadow.c:105) p54rx (drivers/net/wireless/intersil/p54/txrx.c:507) p54urxcb (drivers/net/wireless/intersil/p54/p54usb.c:163) usbhcdgivebackurb (drivers/usb/core/hcd.c:1657) dummytimer (drivers/usb/gadget/udc/dummyhcd.c:2005) ... </IRQ>

The buggy address belongs to the object at ffff88800f0770c0 which belongs to the cache skbuffsmallhead of size 704 The buggy address is located 84 bytes inside of allocated 704-byte region [ffff88800f0770c0, ffff88800f077380)

Check that the slice fits in the skb before copying.

Affected Software

1 affected component
Linux Linux kernel

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Linux kernel (wifi: p54) to a version that resolves this vulnerability.

    Patch da1b9a55ff11
  2. Configuration

    Ensure p54_rx_eeprom_readback sets/uses priv->eeprom_slice_size only after validating that the advertised RX frame length matches the expected slice size (reject mismatched advertised len) so memcpy() does not read past the skb.

    p54_rx_eeprom_readback (drivers/net/wireless/intersil/p54/txrx.c) priv->eeprom_slice_size = Validate against advertised RX frame length; reject mismatched advertised len
  3. Compensating control

    Mitigate exposure by preventing untrusted USB device connections (e.g., restrict/disable USB gadget/USB mass storage access) until the kernel fix is applied.

Event History

Aug 5, 2026
CVE Published
via MITRE·08:08 AM
Data Sourced
via MITRE·08:08 AM
Description
Data Sourced
via NVD·08:16 AM
Description
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-64571?

The severity of CVE-2026-64571 is rated as risk 34.

2

How do I fix CVE-2026-64571?

To fix CVE-2026-64571, update to the latest version of the Linux kernel that resolves this vulnerability.

3

What type of vulnerability is CVE-2026-64571?

CVE-2026-64571 is a vulnerability related to improper validation of RX frame length in the Linux kernel.

4

Which software is affected by CVE-2026-64571?

CVE-2026-64571 affects the Linux kernel, specifically impacting the p54 wireless driver.

5

When was CVE-2026-64571 published?

CVE-2026-64571 was published on August 5, 2026.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203