CVE-2026-74650
Full vulnerability record from the local CVENow database.
Description
In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix OOB read in WMM_param_handler() WMM_param_handler() copies a fixed-size WMM parameter element out of a received information element without checking that the element is long enough, causing an out-of-bounds read for a short WMM IE. The handler reads sizeof(struct WMM_para_element) (18) bytes at pIE->data + 6, so it requires pIE->length to be at least 24 (WLAN_WMM_LEN), but it never validates the length. Two of its three callers reach it after matching only the WMM OUI: OnAssocRsp() in rtw_mlme_ext.c matches a 6-byte OUI, and join_cmd_hdl() matches a 4-byte OUI, before calling the handler. A vendor-specific IE carrying the WMM OUI but a length between 6 and 23, placed in an association response or in the IE blob handed to join_cmd_hdl(), passes the OUI check and then makes the memcmp() and memcpy() at pIE->data + 6 read past the end of the element. OnAssocRsp() parses a frame received from the AP, so this is reachable from a remote peer. The remaining caller in rtw_wlan_util.c already guards the handler with "pIE->length == WLAN_WMM_LEN". Move the equivalent check into the handler itself so every caller is covered; the sibling IE handlers in the same parsing loop (HT_caps_handler(), HT_info_handler(), ERP_IE_handler()) likewise bound their accesses by pIE->length.
View original CVE JSON
{
"id": "CVE-2026-74650",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2026-08-22T16:16:38.413",
"lastModified": "2026-11-06T17:19:52.373",
"vulnStatus": "Received",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix OOB read in WMM_param_handler()\n\nWMM_param_handler() copies a fixed-size WMM parameter element out of a\nreceived information element without checking that the element is long\nenough, causing an out-of-bounds read for a short WMM IE.\n\nThe handler reads sizeof(struct WMM_para_element) (18) bytes at\npIE->data + 6, so it requires pIE->length to be at least 24\n(WLAN_WMM_LEN), but it never validates the length. Two of its three\ncallers reach it after matching only the WMM OUI: OnAssocRsp() in\nrtw_mlme_ext.c matches a 6-byte OUI, and join_cmd_hdl() matches a\n4-byte OUI, before calling the handler. A vendor-specific IE carrying\nthe WMM OUI but a length between 6 and 23, placed in an association\nresponse or in the IE blob handed to join_cmd_hdl(), passes the OUI\ncheck and then makes the memcmp() and memcpy() at pIE->data + 6 read\npast the end of the element. OnAssocRsp() parses a frame received from\nthe AP, so this is reachable from a remote peer.\n\nThe remaining caller in rtw_wlan_util.c already guards the handler with\n\"pIE->length == WLAN_WMM_LEN\". Move the equivalent check into the\nhandler itself so every caller is covered; the sibling IE handlers in\nthe same parsing loop (HT_caps_handler(), HT_info_handler(),\nERP_IE_handler()) likewise bound their accesses by pIE->length."
},
{
"lang": "es",
"value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nstaging: rtl8723bs: corrección de lectura fuera de límites en WMM_param_handler()\n\nWMM_param_handler() copia un elemento de parámetro WMM de tamaño fijo de un elemento de información recibido sin verificar que el elemento sea lo suficientemente largo, causando una lectura fuera de límites para un IE WMM corto.\n\nEl gestor lee sizeof(struct WMM_para_element) (18) bytes en pIE -> data + 6, por lo que requiere que pIE -> length sea al menos 24 (WLAN_WMM_LEN), pero nunca valida la longitud. Dos de sus tres llamadores lo alcanzan después de coincidir solo con el OUI WMM: OnAssocRsp() en rtw_mlme_ext.c coincide con un OUI de 6 bytes, y join_cmd_hdl() coincide con un OUI de 4 bytes, antes de llamar al gestor. Un IE específico del proveedor que lleva el OUI WMM pero una longitud entre 6 y 23, colocado en una respuesta de asociación o en el blob de IE entregado a join_cmd_hdl(), pasa la verificación del OUI y luego hace que memcmp() y memcpy() en pIE -> data + 6 lean más allá del final del elemento. OnAssocRsp() analiza una trama recibida del AP, por lo que esto es alcanzable desde un par remoto.\n\nEl llamador restante en rtw_wlan_util.c ya protege al gestor con 'pIE -> length == WLAN_WMM_LEN'. Mover la verificación equivalente al propio gestor para que cada llamador esté cubierto; los gestores de IE hermanos en el mismo bucle de análisis (HT_caps_handler(), HT_info_handler(), ERP_IE_handler()) de manera similar limitan sus accesos por pIE -> length."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"drivers/staging/rtl8723bs/core/rtw_wlan_util.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "5df2fd06567df5f178c8faae0bdaefd203618d21",
"versionType": "git",
"status": "affected"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "6cdca4c8b64c15a3ab9ad7a85f482e9519eadf93",
"versionType": "git",
"status": "affected"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "2bee6f7a0f0125238951e31da2e96d06fe359043",
"versionType": "git",
"status": "affected"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "1158b9931207392d6dd136aa0c4be18893b50fa1",
"versionType": "git",
"status": "affected"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "ce2399717de242344880044b91a20a712644fdfb",
"versionType": "git",
"status": "affected"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "e5b7610008f4e6a80c8b071aa77ddbd5e17ea472",
"versionType": "git",
"status": "affected"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "e429c6dfd5d2324cd866daaf4c29d5cfe4dea0e4",
"versionType": "git",
"status": "affected"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "ae21407350151bddfd4fea7aa39bd0643c0ca9d3",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"drivers/staging/rtl8723bs/core/rtw_wlan_util.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "4.12",
"status": "affected"
},
{
"version": "0",
"lessThan": "4.12",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.10.267",
"lessThanOrEqual": "5.10.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.15.216",
"lessThanOrEqual": "5.15.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.1.183",
"lessThanOrEqual": "6.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.6.152",
"lessThanOrEqual": "6.6.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.12.104",
"lessThanOrEqual": "6.12.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.18.45",
"lessThanOrEqual": "6.18.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.1.9",
"lessThanOrEqual": "7.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.2",
"lessThanOrEqual": "*",
"versionType": "original_commit_for_fix",
"status": "unaffected"
}
]
}
]
}
],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-11-06T17:00:21.541441Z",
"id": "CVE-2026-74650",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"references": [
{
"url": "https://git.kernel.org/stable/c/1158b9931207392d6dd136aa0c4be18893b50fa1",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/2bee6f7a0f0125238951e31da2e96d06fe359043",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/5df2fd06567df5f178c8faae0bdaefd203618d21",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/6cdca4c8b64c15a3ab9ad7a85f482e9519eadf93",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ae21407350151bddfd4fea7aa39bd0643c0ca9d3",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ce2399717de242344880044b91a20a712644fdfb",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/e429c6dfd5d2324cd866daaf4c29d5cfe4dea0e4",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/e5b7610008f4e6a80c8b071aa77ddbd5e17ea472",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}