
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-45815 is a Reachable Assertion vulnerability in Apache NimBLE, an open-source Bluetooth Low Energy (BLE) stack. A specially crafted ATT Read Multiple Variable Response (BLE_ATT_OP_READ_MULT_VAR_RSP) can trigger an assertion failure in the ATT parser, causing a denial of service. All versions of Apache NimBLE through 1.9.0 are affected; version 1.10.0 resolves the issue. The vulnerability was disclosed on July 24, 2026, and carries a CVSS v3.1 base score of 7.5 (High) (Apache Advisory, Github Advisory).
The root cause is classified as CWE-617 (Reachable Assertion): the ATT parser in ble_gattc.c contained a hard assert() statement (assert(i == proc->read_mult.num_handles)) that could be triggered by a malformed or mismatched ATT Read Multiple Variable Response from a remote peer (GitHub Commit). The fix refactors the response parsing to gracefully handle cases where the number of returned values does not match the request, or where LV (Length-Value) parsing indicates an incorrect format, replacing the assert with proper error reporting to the application. A precondition for exploitation is that the Device Under Test (DUT) must have first sent an ATT Read Multiple Variable Request — meaning the attacker must be able to respond to such a request as a BLE peripheral or MITM, or craft a response in a context where the DUT initiates the exchange (oss-security).
Successful exploitation causes the NimBLE host stack to crash via an assertion failure, resulting in a denial of service with high availability impact. There is no confidentiality or integrity impact, as the vulnerability only affects availability. Embedded and IoT devices running Apache NimBLE (e.g., those built on Apache Mynewt) could be rendered unresponsive, potentially requiring a reboot to recover (Github Advisory, oss-security).
BLE_ATT_OP_READ_MULT_VAR_REQ to the attacker-controlled server.BLE_ATT_OP_READ_MULT_VAR_RSP where the number of attribute values in the response does not match the number requested, or where the LV (Length-Value) encoding is intentionally malformed.assert(i == proc->read_mult.num_handles) statement, and the assertion fails, crashing the NimBLE host stack and causing a denial of service on the target device (GitHub Commit, oss-security).ble_gattc.c and the read_mult procedure.ble_gattc_read_mult_cb_var or similar GATT client functions; error codes related to BLE_HS_EBADDATA or unexpected BLE host resets.BLE_ATT_OP_READ_MULT_VAR_RSP packets with mismatched or malformed LV-encoded attribute data observed in BLE traffic captures.Users should upgrade Apache NimBLE to version 1.10.0, which replaces the reachable assertion with proper error handling and graceful failure reporting (Apache Advisory, GitHub Commit). No configuration-based workaround is documented; the only remediation is upgrading to the patched version. Organizations should prioritize patching devices exposed to untrusted BLE environments or networks.
The vulnerability was reported by researcher Amemoyoi (GitHub: @Amemoyoi) and disclosed by Apache NimBLE maintainer Szymon Janc via the oss-security mailing list on July 24, 2026 (oss-security). No significant broader media coverage or notable community debate has been observed beyond standard vulnerability tracking and aggregation sites.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."