CVE-2026-34608 nanomq: Heap-Buffer-Overflow in webhook_inproc.c via cJSON_Parse OOB Read
An out-of-bounds read in NanoMQ's webhook processing allows attackers to cause crashes or potentially execute code via crafted JSON payloads.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2026-34608?
CVE-2026-34608 is a medium-severity memory corruption vulnerability in nanomq, published on 2 Apr 2026. An attacker needs administrator access to exploit it, with no action from the victim.
Official description
NanoMQ MQTT Broker (NanoMQ) is an all-around Edge Messaging Platform. Prior to version 0.24.10, in NanoMQ's webhook_inproc.c, the hook_work_cb() function processes nng messages by parsing the message body with cJSON_Parse(body). The body is obtained from nng_msg_body(msg), which is a binary buffer without a guaranteed null terminator. This leads to an out-of-bounds read (OOB read) as cJSON_Parse reads until it finds a \0, potentially accessing memory beyond the allocated buffer (e.g., nng_msg metadata or adjacent heap/stack). The issue is often masked by nng's allocation padding (extra 32 bytes of zeros for non-power-of-two sizes <1024 or non-aligned). The overflow is reliably triggered when the JSON payload length is a power-of-two >=1024 (no padding added). This issue has been patched in version 0.24.10.
Which versions are affected by CVE-2026-34608?
It affects 1 product.
Products include Emqx Nanomq.
How do I fix CVE-2026-34608?
No fix has been published for CVE-2026-34608 yet. Limit exposure of the affected software until one is available.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2026-34608 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-34608 exists.
Other vulnerabilities in nanomq
Sources
Also known as GHSA-8p57-jxj9-3qq3.