wifi: rtl818x: Kill URBs before clearing tx status queue (Linux Linux)

CVE-2025-38604
HIGH 7.8

At a glance

Source
NVD
EPSS
EPSS 0.18 % · percentile 7 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: wifi: rtl818x: Kill URBs before clearing tx status queue In rtl8187_stop() move the call of usb_kill_anchored_urbs() before clearing b_tx_status.queue. This change prevents callbacks from using already freed skb due to anchor was not killed before freeing such skb. BUG: kernel NULL pointer dereference, address: 0000000000000080 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 0 P4D 0 Oops: Oops: 0000 [#1] SMP NOPTI CPU: 7 UID: 0 PID: 0 Comm: swapper/7 Not tainted 6.15.0 #8 PREEMPT(voluntary) Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 0.0.0 02/06/2015 RIP: 0010:ieee80211_tx_status_irqsafe+0x21/0xc0 [mac80211] Call Trace: <IRQ> rtl8187_tx_cb+0x116/0x150 [rtl8187] __usb_hcd_giveback_urb+0x9d/0x120 usb_giveback_urb_bh+0xbb/0x140 process_one_work+0x19b/0x3c0 bh_worker+0x1a7/0x210 tasklet_action+0x10/0x30 handle_softirqs+0xf0/0x340 __irq_exit_rcu+0xcd/0xf0 common_interrupt+0x85/0xa0 </IRQ> Tested on RTL8187BvE device. Found by Linux Verification Center (linuxtesting.org) with SVACE.

Weaknesses (CWE)

  • CWE-476 — NULL Pointer Dereference

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected c1db52b9d27ee6e15a7136e67e4a21dc916cd07f < e64732ebff9e24258e7326f07adbe2f2b990daf8 ; affected c1db52b9d27ee6e15a7136e67e4a21dc916cd07f < 789415771422f4fb9f444044f86ecfaec55df1bd ; affected c1db52b9d27ee6e15a7136e67e4a21dc916cd07f < c73c773b09e313278f9b960303a2809b8440bac6 ; affected c1db52b9d27ee6e15a7136e67e4a21dc916cd07f < 8c767727f331fb9455b0f81daad832b5925688cb ; affected c1db52b9d27ee6e15a7136e67e4a21dc916cd07f < 14ca6952691fa8cc91e7644512e6ff24a595283f ; affected c1db52b9d27ee6e15a7136e67e4a21dc916cd07f < 7858a95566f4ebf59524666683d2dcdba3fca968
Linux · Linuxaffected 2.6.29 ; unaffected 0 < 2.6.29 ; unaffected 5.4.297 ≤ 5.4.* ; unaffected 5.10.241 ≤ 5.10.* ; unaffected 5.15.190 ≤ 5.15.* ; unaffected 6.1.148 ≤ 6.1.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD