VYPR
Unrated severityNVD Advisory· Published Nov 5, 2019· Updated Aug 5, 2024

CVE-2019-17212

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].

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
  • Arm/Mbed OSllm-fuzzy
    Range: =5.14.0

Patches

0

No patches discovered yet.

Vulnerability mechanics

AI mechanics synthesis has not run for this CVE yet.

References

7

News mentions

0

No linked articles in our index yet.