Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2025-38348— wifi: p54: prevent buffer-overflow in p54_rx_eeprom_readback()

EPSS 0.07% · P22
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2025-38348

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
wifi: p54: prevent buffer-overflow in p54_rx_eeprom_readback()
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: wifi: p54: prevent buffer-overflow in p54_rx_eeprom_readback() Robert Morris reported: |If a malicious USB device pretends to be an Intersil p54 wifi |interface and generates an eeprom_readback message with a large |eeprom->v1.len, p54_rx_eeprom_readback() will copy data from the |message beyond the end of priv->eeprom. | |static void p54_rx_eeprom_readback(struct p54_common *priv, | struct sk_buff *skb) |{ | struct p54_hdr *hdr = (struct p54_hdr *) skb->data; | struct p54_eeprom_lm86 *eeprom = (struct p54_eeprom_lm86 *) hdr->data; | | if (priv->fw_var >= 0x509) { | memcpy(priv->eeprom, eeprom->v2.data, | le16_to_cpu(eeprom->v2.len)); | } else { | memcpy(priv->eeprom, eeprom->v1.data, | le16_to_cpu(eeprom->v1.len)); | } | [...] The eeprom->v{1,2}.len is set by the driver in p54_download_eeprom(). The device is supposed to provide the same length back to the driver. But yes, it's possible (like shown in the report) to alter the value to something that causes a crash/panic due to overrun. This patch addresses the issue by adding the size to the common device context, so p54_rx_eeprom_readback no longer relies on possibly tampered values... That said, it also checks if the "firmware" altered the value and no longer copies them. The one, small saving grace is: Before the driver tries to read the eeprom, it needs to upload >a< firmware. the vendor firmware has a proprietary license and as a reason, it is not present on most distributions by default.
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于p54_rx_eeprom_readback函数存在缓冲区溢出。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 7cb770729ba895f73253dfcd46c3fcba45d896f9 ~ 12134f79e53eb56b0b0b7447fa0c512acf6a8422 -
LinuxLinux 2.6.28 -

II. Public POCs for CVE-2025-38348

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2025-38348

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-07-10 · 84 CVEs total

CVE-2025-38318perf: arm-ni: Fix missing platform_set_drvdata()
CVE-2025-38327fgraph: Do not enable function_graph tracer when setting funcgraph-args
CVE-2025-38314virtio-pci: Fix result size returned for the admin command completion
CVE-2025-38316wifi: mt76: mt7996: avoid NULL pointer dereference in mt7996_set_monitor()
CVE-2025-38312fbdev: core: fbcvt: avoid division by 0 in fb_cvt_hperiod()
CVE-2025-38310seg6: Fix validation of nexthop addresses
CVE-2025-38309drm/xe/vm: move xe_svm_init() earlier
CVE-2025-38308ASoC: Intel: avs: Fix possible null-ptr-deref when initing hw
CVE-2025-38306fs/fhandle.c: fix a race in call of has_locked_children()
CVE-2025-38311iavf: get rid of the crit lock
CVE-2025-38315Bluetooth: btintel: Check dsbr size from EFI variable
CVE-2025-38317wifi: ath12k: Fix buffer overflow in debugfs
CVE-2025-38319drm/amd/pp: Fix potential NULL pointer dereference in atomctrl_initialize_mc_reg_table
CVE-2025-38320arm64/ptrace: Fix stack-out-of-bounds read in regs_get_kernel_stack_nth()
CVE-2025-38321smb: Log an error when close_all_cached_dirs fails
CVE-2025-38322perf/x86/intel: Fix crash in icl_update_topdown_event()
CVE-2025-38323net: atm: add lec_mutex
CVE-2025-38324mpls: Use rcu_dereference_rtnl() in mpls_route_input_rcu().
CVE-2025-38325ksmbd: add free_transport ops in ksmbd connection
CVE-2025-38326aoe: clean device rq_list in aoedev_downdev()

Showing top 20 of 84 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2025-38348

No comments yet


Leave a comment