CVE-2024-46760

Source
https://cve.org/CVERecord?id=CVE-2024-46760
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-46760.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-46760
Downstream
Related
Published
2024-09-18T07:12:19Z
Modified
2026-08-12T03:51:19Z
Summary
wifi: rtw88: usb: schedule rx work after everything is set up
Details

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

wifi: rtw88: usb: schedule rx work after everything is set up

Right now it's possible to hit NULL pointer dereference in rtw_rx_fill_rx_status on hw object and/or its fields because initialization routine can start getting USB replies before rtw_dev is fully setup.

The stack trace looks like this:

rtw_rx_fill_rx_status rtw8821c_query_rx_desc rtw_usb_rx_handler ... queue_work rtw_usb_read_port_complete ... usb_submit_urb rtw_usb_rx_resubmit rtw_usb_init_rx rtw_usb_probe

So while we do the async stuff rtw_usb_probe continues and calls rtw_register_hw, which does all kinds of initialization (e.g. via ieee80211_register_hw) that rtw_rx_fill_rx_status relies on.

Fix this by moving the first usb_submit_urb after everything is set up.

For me, this bug manifested as: [ 8.893177] rtw_8821cu 1-1:1.2: band wrong, packet dropped [ 8.910904] rtw_8821cu 1-1:1.2: hw->conf.chandef.chan NULL in rtw_rx_fill_rx_status because I'm using Larry's backport of rtw88 driver with the NULL checks in rtw_rx_fill_rx_status.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/46xxx/CVE-2024-46760.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
e3037485c68ec1a299ff41160d8fedbd4abc29b9
Fixed
c83d464b82a8ad62ec9077637f75d73fe955635a
Fixed
25eaef533bf3ccc6fee5067aac16f41f280e343e
Fixed
adc539784c98a7cc602cbf557debfc2e7b9be8b3

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-46760.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.2.0
Fixed
6.6.51
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.10.10

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-46760.json"