CVE-2026-90018 in Linuxinfo

Zusammenfassung

von VulDB • 16.09.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

staging: rtl8723bs: Behebung eines OOB-Lesezugriffs / Stack-Überlaufs in rtw_get_wps_attr()

rtw_get_wps_attr() durchläuft WPS-Attribute innerhalb einer WPS IE (Information Element), die aus einem drahtlosen Management-Frame stammt. Für jedes potenzielle Attribut wird lediglich geprüft, ob der feste 4-Byte-Attributkopf (2-Byte-ID + 2-Byte-Länge) innerhalb der IE passt:

if (attr_ptr + 4 > wps_ie + wps_ielen) break; u16 attr_id = get_unaligned_be16(attr_ptr); u16 attr_data_len = get_unaligned_be16(attr_ptr + 2); u16 attr_len = attr_data_len + 4;

attr_data_len (und damit auch attr_len) wird direkt von der Leitung gelesen und vor seiner Verwendung als Größe für:

memcpy(buf_attr, attr_ptr, attr_len);

nicht gegen die verbleibenden Bytes in der IE überprüft. Da attr_len vollständig vom Angreifer kontrolliert werden kann (0 bis 65535+4), handelt es sich hierbei sowohl um einen OOB-Lesezugriff auf wps_ie als auch – was schwerwiegender ist – um einen Stack-Buffer-Overflow an mehreren Aufrufstellen, bei denen buf_attr eine einzelne Byte-große Stapelvariable ist. Dies betrifft beispielsweise die Aufrufer von rtw_get_wps_attr_content(), die WPS_ATTR_SELECTED_REGISTRAR an den Stapel „u8 sr“/„u8 selected_registrar“ übergeben (drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c, drivers/staging/rtl8723bs/core/rtw_mlme_ext.c). Ein speziell angefertigter WPS IE in einem Beacon oder Probe Response, der während des Scannens verarbeitet wird, kann daher den Stack des Parsing-Threads zerstören.

rtw_get_wps_attr_content() selbst verfügt über keine unabhängige Längenprüfung und vertraut einfach dem attr_len, das es von rtw_get_wps_attr() zurückgegeben bekommt; die Behebung dieser Grenze behebt somit auch diesen Aufrufer.

Die oben genannte Kopfzeilen-Prüfung „attr_ptr + 4 > wps_ie + wps_ielen“ wurde durch den Commit 1463ca3ec6601 („staging: rtl8723bs: Behebung von OOB-Lesezugriffen in rtw_get_sec_ie(), rtw_get_wapi_ie() und rtw_get_wps_attr()“) hinzugefügt, der zwar den festen Kopf begrenzte, die Prüfung jedoch nicht auf die darauffolgenden Attribute mit variabler Länge ausdehnte. Fügen Sie diese fehlende Überprüfung hinzu, bevor attr_len als memcpy()-Länge verwendet oder als Übereinstimmung akzeptiert wird.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Zuständig

Linux

Reservieren

11.09.2026

Veröffentlichung

17.09.2026

Moderieren

akzeptiert

Eintrag

VDB-405857

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Do you need the next level of professionalism?

Upgrade your account now!