-

CVE-2026-64571

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

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

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

p54_rx_eeprom_readback() 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
p54_rx_eeprom_readback()") closed the destination overflow by copying a
fixed priv->eeprom_slice_size (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->eeprom_slice_size 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 p54_rx (drivers/net/wireless/intersil/p54/txrx.c:507)
  Read of size 1016 at addr ffff88800f077114 by task swapper/0/0
  Call Trace:
   <IRQ>
   ...
   __asan_memcpy (mm/kasan/shadow.c:105)
   p54_rx (drivers/net/wireless/intersil/p54/txrx.c:507)
   p54u_rx_cb (drivers/net/wireless/intersil/p54/p54usb.c:163)
   __usb_hcd_giveback_urb (drivers/usb/core/hcd.c:1657)
   dummy_timer (drivers/usb/gadget/udc/dummy_hcd.c:2005)
   ...
   </IRQ>

  The buggy address belongs to the object at ffff88800f0770c0
   which belongs to the cache skbuff_small_head 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.
Daten sind bereitgestellt durch das CVE Programm von einer CVE Numbering Authority (CNA) (Unstrukturiert).
HerstellerLinux
Produkt Linux
Default Statusunaffected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < 7a456ffcd20bd92ad0ef46c1aaa0e39e3be1f7e7
Status affected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < 88f7044f92b8326fbfab26d0d8ed297c367ebb76
Status affected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < f21b7e096fe5371bf697cd410537fb434a763f5e
Status affected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < 25c3b85af3fc4f8043159b14e65790fc3bbdaf48
Status affected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < f46f8f9c43fd02f4dd5f716d4bda296a523c04f0
Status affected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < d38f5d868a0a4770e3bcd0925e16c46acdbc9509
Status affected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < 9096e1f7014174067239a63df18ae5f28301990d
Status affected
Version 7cb770729ba895f73253dfcd46c3fcba45d896f9
Version < ebd6d37fa94bee929e0b4c9ca19fdf9b1dcf6cea
Status affected
HerstellerLinux
Produkt Linux
Default Statusaffected
Version 2.6.28
Status affected
Version 0
Version < 2.6.28
Status unaffected
Version <= 5.10.*
Version 5.10.265
Status unaffected
Version <= 5.15.*
Version 5.15.216
Status unaffected
Version <= 6.1.*
Version 6.1.183
Status unaffected
Version <= 6.6.*
Version 6.6.148
Status unaffected
Version <= 6.12.*
Version 6.12.101
Status unaffected
Version <= 6.18.*
Version 6.18.42
Status unaffected
Version <= 7.1.*
Version 7.1.6
Status unaffected
Version <= *
Version 7.2
Status unaffected
VulnDex Vulnerability Enrichment
Diese Information steht angemeldeten Benutzern zur Verfügung. Login Login
Zu dieser CVE wurde keine Warnung gefunden.
EPSS Metriken
Typ Quelle Score Percentile
EPSS FIRST.org 0.16% 0.061
CVSS Metriken
Quelle Base Score Exploit Score Impact Score Vector String
Es wurden noch keine Informationen zu CWE veröffentlicht.
https://git.kernel.org/stable/c/25c3b85af3fc4f8043159b14e65790fc3bbdaf48
https://git.kernel.org/stable/c/f46f8f9c43fd02f4dd5f716d4bda296a523c04f0
https://git.kernel.org/stable/c/d38f5d868a0a4770e3bcd0925e16c46acdbc9509
https://git.kernel.org/stable/c/9096e1f7014174067239a63df18ae5f28301990d
https://git.kernel.org/stable/c/ebd6d37fa94bee929e0b4c9ca19fdf9b1dcf6cea
https://git.kernel.org/stable/c/7a456ffcd20bd92ad0ef46c1aaa0e39e3be1f7e7
https://git.kernel.org/stable/c/88f7044f92b8326fbfab26d0d8ed297c367ebb76
https://git.kernel.org/stable/c/f21b7e096fe5371bf697cd410537fb434a763f5e