{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-64126","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-07-19T07:54:57.036Z","datePublished":"2026-07-19T15:40:23.276Z","dateUpdated":"2026-08-05T12:39:32.975Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T12:39:32.975Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: MGMT: validate Add Extended Advertising Data length\n\nMGMT_OP_ADD_EXT_ADV_DATA is registered as a variable-length command,\nwith MGMT_ADD_EXT_ADV_DATA_SIZE as the fixed header size.  The handler\nthen uses cp->adv_data_len and cp->scan_rsp_len to validate and copy\ncp->data, but it never checks that those bytes are part of the mgmt\ncommand payload.\n\nA short command can therefore make add_ext_adv_data() pass an\nout-of-bounds pointer into tlv_data_is_valid().  If the bytes beyond\nthe command buffer are addressable, they can also be copied into the\nadvertising instance as scan response data, where the caller can read\nthem back via MGMT_OP_GET_ADV_INSTANCE.  The trigger requires\nCAP_NET_ADMIN in the initial user namespace; KASAN reports an 8-byte\nslab-out-of-bounds read.\n\nReject commands whose length does not match the fixed header plus both\nadvertising data lengths before parsing cp->data."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L","baseScore":7.3,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The bug is reached only through a local Bluetooth MGMT socket (AF_BLUETOOTH, HCI_CHANNEL_CONTROL) via sendmsg(), not from remote Bluetooth air traffic or network protocols.\nAC:L - An attacker fully controls the malformed MGMT command and length fields and can retry reliably; no race or victim-dependent timing is required to trigger the out-of-bounds read and copy.\nPR:L - Exploitation requires CAP_NET_ADMIN to obtain an HCI_SOCK_TRUSTED MGMT socket, which is reachable by an unprivileged user via user namespaces (e.g. unshare with CAP_NET_ADMIN) on the CONTROL-channel bind path.\nUI:N - No victim interaction is required; the attacker triggers the flaw directly by sending a crafted MGMT_OP_ADD_EXT_ADV_DATA command.\nS:U - Impact is confined to kernel memory disclosure and modification of Bluetooth advertising state within the same kernel security boundary, with no VM escape or cross-authority boundary crossing.\nC:H - A short command causes slab out-of-bounds reads (KASAN-reported) via tlv_data_is_valid(), and addressable bytes beyond the command buffer can be copied into scan response data and potentially exfiltrated over BLE advertising.\nI:H - The out-of-bounds pointer is used in memcpy() into kernel advertising structures, constituting kernel memory corruption with attacker-influenced content that can alter system-controlled Bluetooth data.\nA:L - While the primary impact is information disclosure, out-of-bounds kernel memory access can cause oopses or instability on some layouts; when uncertain, availability impact is rated above none."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/bluetooth/mgmt.c"],"versions":[{"version":"12410572833a283ce92fcf9679ca8a2f372097ee","lessThan":"0d5104390b445e7bd664ad583837e4c04d892c9d","status":"affected","versionType":"git"},{"version":"12410572833a283ce92fcf9679ca8a2f372097ee","lessThan":"14b01b9cba04e6ce82825f68fc4c4322fa4ffa43","status":"affected","versionType":"git"},{"version":"12410572833a283ce92fcf9679ca8a2f372097ee","lessThan":"a143ce77a5292f2c9285137433d879ce71d190a7","status":"affected","versionType":"git"},{"version":"12410572833a283ce92fcf9679ca8a2f372097ee","lessThan":"a6c75a3fad226ccbd8ef9110dee87c92c299f2ab","status":"affected","versionType":"git"},{"version":"12410572833a283ce92fcf9679ca8a2f372097ee","lessThan":"f1febe93ef075314615f970a87681d9ab86691d1","status":"affected","versionType":"git"},{"version":"12410572833a283ce92fcf9679ca8a2f372097ee","lessThan":"0bc1a5a69f541859293d79db72bd7854ac48df51","status":"affected","versionType":"git"},{"version":"12410572833a283ce92fcf9679ca8a2f372097ee","lessThan":"d3f7d17960ed50df3a6709c5158caff989c8c905","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/bluetooth/mgmt.c"],"versions":[{"version":"5.11","status":"affected"},{"version":"0","lessThan":"5.11","status":"unaffected","versionType":"semver"},{"version":"5.15.210","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.175","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.142","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.92","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.34","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.0.11","lessThanOrEqual":"7.0.*","status":"unaffected","versionType":"semver"},{"version":"7.1","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":"5.11","versionEndExcluding":"5.15.210"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11","versionEndExcluding":"6.1.175"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11","versionEndExcluding":"6.6.142"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11","versionEndExcluding":"6.12.92"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11","versionEndExcluding":"6.18.34"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11","versionEndExcluding":"7.0.11"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11","versionEndExcluding":"7.1"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/0d5104390b445e7bd664ad583837e4c04d892c9d"},{"url":"https://git.kernel.org/stable/c/14b01b9cba04e6ce82825f68fc4c4322fa4ffa43"},{"url":"https://git.kernel.org/stable/c/a143ce77a5292f2c9285137433d879ce71d190a7"},{"url":"https://git.kernel.org/stable/c/a6c75a3fad226ccbd8ef9110dee87c92c299f2ab"},{"url":"https://git.kernel.org/stable/c/f1febe93ef075314615f970a87681d9ab86691d1"},{"url":"https://git.kernel.org/stable/c/0bc1a5a69f541859293d79db72bd7854ac48df51"},{"url":"https://git.kernel.org/stable/c/d3f7d17960ed50df3a6709c5158caff989c8c905"}],"title":"Bluetooth: MGMT: validate Add Extended Advertising Data length","x_generator":{"engine":"bippy-1.2.0"}}}}