CVE-2022-49326

rtl818x: Prevent using not initialized queues

Medium · published February 26, 2025

CVSS v3.1
5.5
EPSS
0%
Percentile
21.1
In the wild
Unconfirmed
What it is

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

rtl818x: Prevent using not initialized queues

Using not existing queues can panic the kernel with rtl8180/rtl8185 cards.

Ignore the skb priority for those cards, they only have one tx queue. Pierre

Asselin ([email protected]) reported the kernel crash in the Gentoo forum:

https://forums.gentoo.org/viewtopic-t-1147832-postdays-0-postorder-asc-start-25.html

He also confirmed that this patch fixes the issue. In summary this happened:

After updating wpa_supplicant from 2.9 to 2.10 the kernel crashed with a

"divide error: 0000" when connecting to an AP. Control port tx now tries to

use IEEE80211_AC_VO for the priority, which wpa_supplicants starts to use in

2.10.

Since only the rtl8187se part of the driver supports QoS, the priority

of the skb is set to IEEE80211_AC_BE (2) by mac80211 for rtl8180/rtl8185

cards.

rtl8180 is then unconditionally reading out the priority and finally crashes on

drivers/net/wireless/realtek/rtl818x/rtl8180/dev.c line 544 without this

patch:

idx = (ring->idx + skb_queue_len(&ring->queue)) % ring->entries

"ring->entries" is zero for rtl8180/rtl8185 cards, tx_ring[2] never got

initialized.

The record
Technical detail
CVSS v3.1
5.5 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00296 · 21.1th percentile
Published
2025-02-26T02:10Z
EPSS history
Timeline
  • 26 FEB 02:10Z
    rtl818x: Prevent using not initialized queues
    cvelistv5