CVE-2019-17212
Description
Buffer overflows were discovered in the CoAP library in Arm Mbed OS 5.14.0. The CoAP parser is responsible for parsing received CoAP packets. The function sn_coap_parser_options_parse() parses CoAP input linearly using a while loop. Once an option is parsed in a loop, the current point (*packet_data_pptr) is increased correspondingly. The pointer is restricted by the size of the received buffer, as well as by the 0xFF delimiter byte. Inside each while loop, the check of the value of *packet_data_pptr is not strictly enforced. More specifically, inside a loop, *packet_data_pptr could be increased and then dereferenced without checking. Moreover, there are many other functions in the format of sn_coap_parser_****() that do not check whether the pointer is within the bounds of the allocated buffer. All of these lead to heap-based or stack-based buffer overflows, depending on how the CoAP packet buffer is allocated.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
A buffer overflow vulnerability in Arm Mbed OS 5.14.0's CoAP parser allows remote attackers to trigger heap/stack corruption via crafted packets.
Vulnerability
A buffer overflow vulnerability exists in the CoAP library of Arm Mbed OS version 5.14.0 [1]. The core issue lies in the function sn_coap_parser_options_parse(), which parses received CoAP packets in a while loop. Within the loop, the pointer *packet_data_pptr is incremented and dereferenced without proper bounds checking against the allocated buffer size. Additionally, several other sn_coap_parser_*() functions lack sufficient boundary validation, leading to heap-based or stack-based buffer overflows depending on how the CoAP packet buffer is allocated [1][2][3][4].
Exploitation
An attacker must be able to send a crafted CoAP packet to a device running the vulnerable library [1]. The malformed packet can contain option length values (e.g., option_len == 13) and other option fields that force the parser's pointer to advance beyond the allocated buffer. No authentication is required, as the vulnerability is triggered during parsing of incoming data [1]. The exact sequence involves crafting a CoAP packet that causes repeated pointer increments and dereferences without exceeding the 0xFF delimiter check, eventually writing or reading beyond the buffer boundaries [1][2][4].
Impact
Successful exploitation results in memory corruption (heap or stack buffer overflow) [1]. The attacker may achieve arbitrary code execution, information disclosure, or denial of service, depending on how the overflow is leveraged. The vulnerability affects all devices using the impacted CoAP library with default buffer allocation [1].
Mitigation
As of the available references, no patched version has been confirmed. The issue was reported in the Mbed OS GitHub repository [1]. Users should monitor the repository for future fixes and consider applying input validation or limiting CoAP packet sizes as a temporary workaround. No known CISA KEV entry exists for this CVE [1].
- memory acess out of range in MbedOS CoAP library parser part
- mbed-os/features/frameworks/mbed-coap/source/sn_coap_parser.c at d91ed5fa42ea0f32e4422a3c562e7b045a17da40 · ARMmbed/mbed-os
- mbed-os/features/frameworks/mbed-coap/source/sn_coap_parser.c at d91ed5fa42ea0f32e4422a3c562e7b045a17da40 · ARMmbed/mbed-os
- mbed-os/features/frameworks/mbed-coap/source/sn_coap_parser.c at d91ed5fa42ea0f32e4422a3c562e7b045a17da40 · ARMmbed/mbed-os
AI Insight generated on May 26, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
2- Arm/Mbed OSdescription
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
7- github.com/ARMmbed/mbed-os/blob/d91ed5fa42ea0f32e4422a3c562e7b045a17da40/features/frameworks/mbed-coap/source/sn_coap_parser.cmitrex_refsource_MISC
- github.com/ARMmbed/mbed-os/blob/d91ed5fa42ea0f32e4422a3c562e7b045a17da40/features/frameworks/mbed-coap/source/sn_coap_parser.cmitrex_refsource_MISC
- github.com/ARMmbed/mbed-os/blob/d91ed5fa42ea0f32e4422a3c562e7b045a17da40/features/frameworks/mbed-coap/source/sn_coap_parser.cmitrex_refsource_MISC
- github.com/ARMmbed/mbed-os/blob/d91ed5fa42ea0f32e4422a3c562e7b045a17da40/features/frameworks/mbed-coap/source/sn_coap_parser.cmitrex_refsource_MISC
- github.com/ARMmbed/mbed-os/blob/d91ed5fa42ea0f32e4422a3c562e7b045a17da40/features/frameworks/mbed-coap/source/sn_coap_parser.cmitrex_refsource_MISC
- github.com/ARMmbed/mbed-os/blob/d91ed5fa42ea0f32e4422a3c562e7b045a17da40/features/frameworks/mbed-coap/source/sn_coap_parser.cmitrex_refsource_MISC
- github.com/ARMmbed/mbed-os/issues/11803mitrex_refsource_MISC
News mentions
0No linked articles in our index yet.