CVE-2026-64446

staging: rtl8723bs: fix heap buffer overflow in rtw_cfg80211_set_wpa_ie()

HIGH
7.8
CVSS Score
Published: July 25, 2026 at 08:51 AM UTC
Updated: September 3, 2026 at 03:54 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.8
Exploit prediction
EPSS 0.1%

Description

In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix heap buffer overflow in rtw_cfg80211_set_wpa_ie() supplicant_ie is a 256-byte array in struct security_priv. The WPA and WPA2 IE copy paths use: memcpy(padapter->securitypriv.supplicant_ie, &pwpa[0], wpa_ielen + 2); where wpa_ielen is the raw IE length field (u8, 0-255). When a local user supplies a connect request via nl80211 with a crafted WPA IE of length 255, wpa_ielen + 2 equals 257, overflowing the 256-byte buffer by one byte into the adjacent last_mic_err_time field. rtw_parse_wpa_ie() does not prevent this: its length consistency check compares *(wpa_ie+1) against (u8)(wpa_ie_len-2), which is (u8)(255) == 255 when wpa_ie_len = 257, so the check passes silently. Add explicit bounds checks for both the WPA and WPA2 paths before the memcpy, rejecting any IE whose total size (wpa_ielen + 2) exceeds the supplicant_ie buffer.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

4.12 ≤ v < 5.10.2614.12 ≤ v < 5.15.2124.12 ≤ v < 6.1.1784.12 ≤ v < 6.12.964.12 ≤ v < 6.18.394.12 ≤ v < 6.6.1454.12 ≤ v < 7.1.44.12 ≤ v < 7.25.11 ≤ v < 5.15.2125.16 ≤ v < 6.1.1786.13 ≤ v < 6.18.396.19 ≤ v < 7.1.46.2 ≤ v < 6.6.1456.7 ≤ v < 6.12.96554c0a3abf216c991c5ebddcdb2c08689ecd290b7.2 rc17.2 rc2
Vendor states this is fixed in 138cd190efd56ab36c9fdd8fef8749d06937f24b (fixed)
Vendor states this is fixed in 2131621986c62c86109ce4d84cf73a73757eb8a6 (fixed)
Vendor states this is fixed in 46f66c16a95191d9aca07a72ae6b1252a244e26c (fixed)
Vendor states this is fixed in 5a752a616e756844388a1a45404db9fc29fec655 (fixed)
Vendor states this is fixed in 5d7812360abf3143afcbf5efe4ef242448fa1f28 (fixed)
Vendor states this is fixed in 6f20d7b0ee47c470734a69379b0fc6647c519603 (fixed)
Vendor states this is fixed in a94a643a80a84ceb8139061c3d6bf988d75e45a5 (fixed)
Vendor states this is fixed in b9c4bf133c3c47e23baf4f5403b98a953bf58606 (fixed)
Vendor states this is fixed in 4.12 (unaffected)
Vendor states this is fixed in 5.10.261 (unaffected)
Vendor states this is fixed in 5.15.212 (unaffected)
Vendor states this is fixed in 6.1.178 (unaffected)
Vendor states this is fixed in 6.12.96 (unaffected)
Vendor states this is fixed in 6.18.39 (unaffected)
Vendor states this is fixed in 6.6.145 (unaffected)
Vendor states this is fixed in 7.1.4 (unaffected)
Vendor states this is fixed in 7.2 (unaffected)

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-787

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card