From mboxrd@z Thu Jan 1 00:00:00 1970 From: AL-KERNEL To: kernel-cve@kernelcve.org Subject: [CVE-2026-64126][MODERATE 7.0] Bluetooth: MGMT: validate Add Extended Advertising Data length [ Upstream Date: Sun, 19 Jul 2026 13:30:04 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-AL-KERNEL-CVE: CVE-2026-64126 X-AL-KERNEL-Priority: MODERATE 7.0 X-AL-KERNEL-Severity: MODERATE 7.0 X-AL-KERNEL-Base-Severity: MODERATE X-AL-KERNEL-KPANIC: NO X-AL-KERNEL-ActionableScore: 5 X-AL-KERNEL-ActionableScore-Lower: 3 X-AL-KERNEL-Commit: 0d5104390b445e7bd664ad583837e4c04d892c9d List-Id: CVE: CVE-2026-64126 Priority: MODERATE 7.0 AL-KERNEL base severity: MODERATE KPANIC flag: NO Patch: Bluetooth: MGMT: validate Add Extended Advertising Data length [ Upstream Commit: 0d5104390b445e7bd664ad583837e4c04d892c9d Upstream patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0d5104390b445e7bd664ad583837e4c04d892c9d Original CVE announcement: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-64126 Analysis date: Sun, 19 Jul 2026 13:30:04 -0400 ActionableScore: 5 ActionableScore lower bound: 3 Actionable bucket: Actionable Moderate at minimum Manual review required: YES Summary: Bluetooth MGMT Add Extended Advertising Data failed to validate that adv_data_len and scan_rsp_len fit within the command payload, allowing a CAP_NET_ADMIN local caller to trigger an OOB read and potentially read back leaked kernel heap bytes via MGMT_OP_GET_ADV_INSTANCE. ====================================================================== ABOUT THIS REPORT ====================================================================== The original Linux kernel CVE announcement for CVE-2026-64126 is available here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-64126 The original announcement does not normally provide a security severity estimate, CVSS assessment, or enough information to determine whether the reported kernel bug represents a practically relevant security issue. This report was generated by AL-KERNEL, an AI-assisted Linux kernel vulnerability analysis system developed by Alexander Larkin. It combines an autonomous classifier with LLM-assisted technical analysis and a separate ActionableScore mechanism. The purpose of this report is to prioritize Linux kernel CVEs before manual review, identify cases that require prompt investigation, and support automatic closure of issues that are unlikely to have meaningful security impact. Published priority for this report: MODERATE 7.0 Manual review required: YES A detailed explanation of the methodology and priority rules is included at the end of this message. ====================================================================== AL-KERNEL CLASSIFICATION RESULT ====================================================================== CVE-2026-64126 MODERATE CHECK WITH IMPACT FROM ORIG NN MODERATE Maybe valid. Check manually. Hints by AL-KERNEL: The best (paranoid) CVSS is 'AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L';CWE-130;CWE-125;*CWE-200;*CWE-20;Other CVSS 'AV:L/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:L';BEST CVSS score: '6.1';DESCR 'Bluetooth MGMT Add Extended Advertising Data accepts a variable length command where cp adv_data_len and cp scan_rsp_len were used before confirming that the stated bytes are present in the command payload. A short local mgmt command can make add_ext_adv_data pass an out of bounds pointer into tlv_data_is_valid and can copy addressable bytes beyond the command buffer into the advertising instance. Those bytes can be read back through MGMT_OP_GET_ADV_INSTANCE, so the concrete impact is local kernel memory disclosure rather than only a crash. For the CVSS the PR:L is used in the paranoid score because delegated CAP_NET_ADMIN or service account access can make reliable triggering possible without full root in some deployments. The interface is local control plane only and is not network reachable. Impact is confidentiality loss with possible low availability impact if invalid reads fault or KASAN style checks are fatal. YES REQUIRES MANUAL CHECK';YES REQUIRES MANUAL CHECK; ,and ActionableScore result is Actionable Moderate at minimum (with actual score 4) YES REMOTE READ KASAN OOB SIMPLEFIX NETWORK DECREASED_TO_MODERATEREG_BASED_ON_ACTIONABLESCORELESSTHAN5 NO NO checked ====================================================================== ACTIONABLESCORE ANALYSIS ====================================================================== ActionableScore=5 ActionableScoreLower=3 ## 1. ActionableScore * Conservative score: 3 * Paranoid score: 5 * Final recommended bucket: **Actionable Moderate at minimum**:: ## 2. Signal breakdown Conservative signals: * Limited read-only OOB / weak corruption class: +0. The primitive is an out-of-bounds read, not an OOB write, UAF, double-free, or controlled overwrite. * Confidentiality impact plausible: +1. The commit explicitly describes bytes beyond the command buffer being copied into the advertising instance and read back via MGMT_OP_GET_ADV_INSTANCE. * Practical disclosure path strongly implied: +1. The OOB read is not only a KASAN finding. The described copy and readback path makes kernel memory disclosure plausible. * Availability impact possible: +1. KASAN reports an 8-byte slab-out-of-bounds read, and invalid reads may crash under debug or faulting conditions, but this is secondary. * Requires CAP_NET_ADMIN in the initial user namespace: -2. The commit explicitly states this requirement for triggering in the normal model. * Bluetooth MGMT local control plane exposure: +1. The subsystem is not remote packet parsing, but it is a real kernel management API on Bluetooth-enabled systems. Conservative total: 3 Paranoid signals: * Confidentiality impact plausible: +1. * Practical disclosure path strongly implied: +1. * Availability impact possible: +1. * Local reduced-privilege capability model concern: +1. Although the commit says CAP_NET_ADMIN in the initial user namespace, delegated service accounts or reduced-capability administrative contexts can make this less than full host-root in practical triage. * Bluetooth MGMT local control plane exposure: +1. * No full CAP penalty in paranoid interpretation: 0. This assumes CAP_NET_ADMIN may be delegated and the bug crosses the expected kernel memory confidentiality boundary. Paranoid total: 5 ## 3. Reachability analysis The bug is triggered through the local Bluetooth MGMT control interface using MGMT_OP_ADD_EXT_ADV_DATA with inconsistent variable-length fields. It is not reachable through remote Bluetooth radio traffic or normal network packets. The commit states that triggering requires CAP_NET_ADMIN in the initial user namespace. In conservative scoring this substantially reduces practical exposure. In paranoid scoring, the issue remains actionable because CAP_NET_ADMIN can exist in service, sandbox, or reduced-root contexts where leaking kernel heap bytes is still a meaningful boundary violation. The path is relevant only on systems with Bluetooth MGMT support and a usable Bluetooth management interface. It is not Internet-reachable and not a common remote networking data path. Call-site confidence: high. The commit describes the vulnerable handler, the missing length check, the OOB read into tlv_data_is_valid, and the readback through MGMT_OP_GET_ADV_INSTANCE. ## 4. Severity interpretation This behaves like an actionable Moderate rather than an ordinary Moderate because the patch context describes a concrete local kernel memory disclosure path, not only a warning or crash. It is not an Important-class memory corruption issue because there is no write primitive, UAF, refcount takeover, object replacement, callback control, or demonstrated LPE path. Theoretical escalation beyond information disclosure is not supported by the patch. Realistic impact is local confidentiality loss, with secondary low availability risk if the invalid read faults or debug checks are fatal. ## 5. One-sentence report phrase Bluetooth MGMT Add Extended Advertising Data failed to validate that adv_data_len and scan_rsp_len fit within the command payload, allowing a CAP_NET_ADMIN local caller to trigger an OOB read and potentially read back leaked kernel heap bytes via MGMT_OP_GET_ADV_INSTANCE. ## 6. Manual review recommendation MANUAL CHECK REQUIRED Manual review is required because the issue includes a concrete OOB read plus a described readback path for leaked kernel memory. It is not remote and not a proven LPE, but it should not be auto-closed as a simple DoS or validation-only bug. ====================================================================== UPSTREAM PATCH SUMMARY ====================================================================== Patch: Bluetooth: MGMT: validate Add Extended Advertising Data length [ Upstream Commit: 0d5104390b445e7bd664ad583837e4c04d892c9d Upstream URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0d5104390b445e7bd664ad583837e4c04d892c9d Changed files: net/bluetooth/mgmt.c Diff excerpt: Not included in this email. See the upstream URL for the full patch. Full patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0d5104390b445e7bd664ad583837e4c04d892c9d ====================================================================== DETAILED REPORT METHODOLOGY ====================================================================== The original Linux kernel CVE announcement for CVE-2026-64126 can be found here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-64126 The original CVE announcement normally does not include a security-level estimate. In particular, it may not contain a CVSS assessment, an impact level, or enough information to determine whether the reported bug is a practically relevant security issue. One purpose of this parallel CVE list is to provide that missing technical and prioritization information. The original goal of the AL-KERNEL project was to prioritize Linux kernel CVE analysis automatically before manual review. The system can also help identify non-security issues that may be suitable for automatic closure. This report was generated by AL-KERNEL, an AI-assisted Linux kernel vulnerability analysis system developed by Alexander Larkin. The first analysis stage combines an autonomous classifier with additional LLM-based analysis. The autonomous classifier runs locally on a CPU and is based on a backpropagation neural network. Together, these mechanisms produce a technical vulnerability description, identify likely weakness types, estimate CVSS severity, and provide input for ActionableScore. Two CVSS estimates are retained because incomplete kernel vulnerability information often permits more than one defensible interpretation: Conservative CVSS vector: AV:L/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:L The Best / paranoid CVSS vector: AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L The Best / paranoid CVSS score: 6.1 The conservative vector represents a lower-impact interpretation. The Best/paranoid vector intentionally represents a plausible upper-bound interpretation and should not automatically be treated as demonstrated real-world impact. CVSS may also need to be adjusted for a particular Linux deployment, because actual reachability, privileges, enabled kernel configuration, hardware, namespaces, exposed device nodes, and other environmental conditions can differ significantly between systems. A separate ActionableScore mechanism evaluates practical remediation urgency. Its analysis may include reachability, attack prerequisites, subsystem exposure, memory-corruption characteristics, denial-of-service reliability, and possible confidentiality, integrity, or privilege-escalation impact. Conservative ActionableScore: 3 Paranoid ActionableScore: 5 The final base severity is taken directly from the second tab-separated field of the AL-KERNEL classification result. ActionableScore does not replace or independently override that final AL-KERNEL decision, and if ActionableScore adjusted impact level of ALKERNEL, then you would see self-readable flags above like INCREASED_TO_HIGH_BASED_ON_ACTIONABLESCOREHIGHEREQTHAN7. For an AL-KERNEL result of MODERATE, this report uses the following additional presentation split: ActionableScore below 5 -> MODERATE REGULAR ActionableScore 5 or more -> MODERATE 7.0 The distinction between MODERATE REGULAR and MODERATE 7.0 makes it possible to identify Moderate issues that should receive manual analysis and fixes before lower-priority MODERATE REGULAR issues. In many cases, MODERATE REGULAR fixes may wait for a later rebase or routine update. There is one override in which MODERATE REGULAR becomes MODERATE 7.0 even when the ActionableScore is below 5. When the AL-KERNEL result contains the KPANIC flag, a MODERATE result is always presented as MODERATE 7.0. The KPANIC flag selected with few regexps without usage of AI at all, so it helps to detect cases when Kernel Crash happens and similar (to filter False-Negative results from the LLM usage). KPANIC indicates that a reliable kernel crash, kernel panic, or similarly serious kernel availability impact was identified by the classification workflow. AL-KERNEL base severity for this report: MODERATE KPANIC detected for this report: NO Published priority for this report (same as in Subject): MODERATE 7.0 These results are intended to support engineering triage. They are machine-generated estimates, and cases marked for manual review should be validated by a human security engineer before final disposition. For more info read docs linked from here: https://kernelcve.org/ (and you can submit you own patch there to generate such a report for non-existant CVE-id yet). Note that in many cases this AI tool selects higher severity, than real is (means you can expect Importants instead of Moderate 7.0 or Moderates 7.0 instead of regular Moderates). If you see such cases, please use reply email interface to add additional manual analyses info to this particular CVE. And please, please, let me know when you see Lows instead of Importants or Important instead of Low (because particular for such cases I need to tune this AI tool to make it better for this one and next similar). My contact email for such notifications is alexanjelausa@gmail.com (and both send reply to CVE record itself too and see "reply" button below for howto reply).