CVE-2026-11809: UpdateHub probe: uninitialized-heap out-of-bounds read of network-supplied metadata

Published Aug 10, 2026
·
Updated

The UpdateHub OTA client in subsys/mgmt/updatehub/updatehub.c contains an out-of-bounds / uninitialized-memory read in zimplupdatehubprobe(). The probe response from the UpdateHub server is copied into a heap buffer (metadata) that is correctly NUL-terminated, but a second buffer (metadatacopy) is allocated with kmalloc (unzeroed) and filled with memcpy(metadatacopy, metadata, strlen(metadata)), which omits the terminating NUL. Everything after the copied content remains uninitialized heap.

When the first jsonobjparse() over the array descriptor fails, the code falls back to jsonobjparse(metadatacopy, strlen(metadatacopy), ...). The strlen() call scans past the copied bytes through uninitialized heap and, if no zero byte is found before the end of the allocation, reads beyond the buffer; the resulting over-long length is then parsed as JSON. The probe payload is fully controlled by the (malicious, compromised, or — without the optional CONFIGUPDATEHUBDTLS — on-path) UpdateHub server, which can craft a large payload that fails the first parse to drive this path.

The consequence is a read of uninitialized heap, with a worst case of an out-of-bounds read past the metadatacopy allocation that can fault and crash the update thread/device, producing a network-triggerable denial of service. The over-read data is consumed only internally to evaluate the update and is not returned to the attacker, so there is no direct information disclosure and no out-of-bounds write.

The fix zeroes metadatacopy with memset before the copy, guaranteeing NUL termination and bounding strlen() within the allocation.

Affected Software

1 affected component
UpdateHub OTA client

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    In z_impl_updatehub_probe(), after allocating metadata_copy with k_malloc(unzeroed) and before memcpy(metadata_copy, metadata, ...), zero metadata_copy with memset so that it is NUL-terminated. This bounds strlen(metadata_copy) within the allocation and prevents out-of-bounds reads when falling back to json_obj_parse(metadata_copy, strlen(metadata_copy), ...).

    UpdateHub OTA client (subsys/mgmt/updatehub/updatehub.c, z_impl_updatehub_probe) Ensure metadata_copy is zeroed before use = memset(metadata_copy, 0, <metadata_copy allocation size>)

Event History

Aug 10, 2026
CVE Published
via MITRE·08:36 PM
Data Sourced
via MITRE·08:36 PM
DescriptionSeverityWeakness
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-11809?

The severity of CVE-2026-11809 is classified as low with a score of 3.7.

2

What type of vulnerability is CVE-2026-11809?

CVE-2026-11809 is an uninitialized-heap out-of-bounds read vulnerability.

3

How can CVE-2026-11809 affect systems using the UpdateHub OTA client?

CVE-2026-11809 can lead to potential information disclosure due to a read of uninitialized memory in the UpdateHub OTA client.

4

How do I fix CVE-2026-11809?

To fix CVE-2026-11809, update to the latest version of the UpdateHub OTA client where the vulnerability has been addressed.

5

When was CVE-2026-11809 published?

CVE-2026-11809 was published on August 10, 2026.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203