blob: 01d9f3310ed2b0681b63e27a171c1ec0d44faf56 [file]
{
"containers": {
"cna": {
"providerMetadata": {
"orgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038"
},
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix OOB reads in rtw_get_sec_ie(), rtw_get_wapi_ie(), and rtw_get_wps_attr()\n\nThree IE/attribute parsing functions have missing bounds checks.\n\nrtw_get_sec_ie() and rtw_get_wapi_ie() iterate over a raw IE buffer\nwithout verifying that the header bytes (tag + length) are within the\nremaining buffer before reading them. Additionally, rtw_get_sec_ie()\ncompares the 4-byte WPA OUI at cnt+2 without checking that at least\n6 bytes remain, and rtw_get_wapi_ie() compares a 4-byte WAPI OUI at\ncnt+6 without checking that at least 10 bytes remain.\n\nrtw_get_wps_attr() reads wps_ie[0] and wps_ie+2 unconditionally at\nentry, before verifying that wps_ielen is large enough to contain\nthe 6-byte WPS IE header (element_id + length + 4-byte OUI). Inside\nthe attribute loop, get_unaligned_be16() is called on attr_ptr and\nattr_ptr+2 without checking that 4 bytes remain in the buffer.\n\nAdd a cnt+2 bounds check before each loop body in rtw_get_sec_ie()\nand rtw_get_wapi_ie(), guard each multi-byte comparison with a minimum\nIE length requirement, add a wps_ielen < 6 early return in\nrtw_get_wps_attr(), and add a 4-byte bounds check in its inner loop."
}
],
"metrics": [
{
"cvssV3_1": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"baseScore": 8.8,
"baseSeverity": "HIGH"
},
"scenarios": [
{
"lang": "en",
"value": "AV:A - Malformed beacon or probe-response information elements reach the vulnerable parsers over the air, so the attacker only needs to be within Wi-Fi radio range.\nAC:L - A crafted truncated WPS Selected Registrar attribute followed by controlled IE data deterministically supplies the out-of-bounds length; no race or uncontrollable condition is required.\nPR:N - Beacon and probe-response management frames are processed before association or authentication, and no capability or credential check gates this path.\nUI:N - The driver processes beacons automatically, and routine system-initiated scans reach the WPS path without human action.\nS:U - Exploitation compromises the kernel of the affected host without crossing a separate virtualization or authorization boundary.\nC:H - The out-of-bounds attribute length reaches a copy into a one-byte stack object, permitting control-flow corruption and potential kernel code execution with access to arbitrary kernel-resident data.\nI:H - The attacker can make adjacent controlled frame bytes overflow the one-byte stack destination, potentially overwriting control data and executing arbitrary kernel code.\nA:H - The bounded OOB reads can fault, while the derived stack overflow can trigger an oops, stack-canary panic, or control-flow failure and can be repeated using injected management frames."
}
]
}
],
"affected": [
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/staging/rtl8723bs/core/rtw_ieee80211.c"
],
"versions": [
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "efa27d487abcdec79669a60a6d94d5d6eceb7c1d",
"status": "affected",
"versionType": "git"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "2ea1ce30ead61589214240e8d33d96310fd613e5",
"status": "affected",
"versionType": "git"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "b27ecba3196f6c14e3809595ebd69c0c2392512a",
"status": "affected",
"versionType": "git"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "6ab1161e539fb7a1c8b35ff5a6ced4702e855b9c",
"status": "affected",
"versionType": "git"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "4b51ee8a40fe47864197d73cc02b191de7a6b072",
"status": "affected",
"versionType": "git"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "729c4e72563bda0f1725db1db9ea08df06f41d9b",
"status": "affected",
"versionType": "git"
},
{
"version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
"lessThan": "1463ca3ec6601cbb097d8d87dbf5dcf1cb86a344",
"status": "affected",
"versionType": "git"
}
]
},
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "affected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/staging/rtl8723bs/core/rtw_ieee80211.c"
],
"versions": [
{
"version": "4.12",
"status": "affected"
},
{
"version": "0",
"lessThan": "4.12",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.15.212",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.1.178",
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.6.145",
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.12.97",
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.18.40",
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "7.1.4",
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "7.2-rc3",
"lessThanOrEqual": "*",
"status": "unaffected",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "4.12",
"versionEndExcluding": "5.15.212"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "4.12",
"versionEndExcluding": "6.1.178"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "4.12",
"versionEndExcluding": "6.6.145"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "4.12",
"versionEndExcluding": "6.12.97"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "4.12",
"versionEndExcluding": "6.18.40"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "4.12",
"versionEndExcluding": "7.1.4"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "4.12",
"versionEndExcluding": "7.2-rc3"
}
]
}
]
}
],
"references": [
{
"url": "https://git.kernel.org/stable/c/efa27d487abcdec79669a60a6d94d5d6eceb7c1d"
},
{
"url": "https://git.kernel.org/stable/c/2ea1ce30ead61589214240e8d33d96310fd613e5"
},
{
"url": "https://git.kernel.org/stable/c/b27ecba3196f6c14e3809595ebd69c0c2392512a"
},
{
"url": "https://git.kernel.org/stable/c/6ab1161e539fb7a1c8b35ff5a6ced4702e855b9c"
},
{
"url": "https://git.kernel.org/stable/c/4b51ee8a40fe47864197d73cc02b191de7a6b072"
},
{
"url": "https://git.kernel.org/stable/c/729c4e72563bda0f1725db1db9ea08df06f41d9b"
},
{
"url": "https://git.kernel.org/stable/c/1463ca3ec6601cbb097d8d87dbf5dcf1cb86a344"
}
],
"title": "staging: rtl8723bs: fix OOB reads in rtw_get_sec_ie(), rtw_get_wapi_ie(), and rtw_get_wps_attr()",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038",
"cveId": "CVE-2026-64441",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.1.1"
}