A buffer over-read was discovered in the CoAP library in Arm Mbed OS 5.15.3. The CoAP parser is responsible for parsing received CoAP packets. The function sn_coap_parser_options_parse_multiple_options() parses CoAP options that may occur multiple consecutive times in a single packet. While processing the options, packet_data_pptr is accessed after being incremented by option_len without a prior out-of-bounds memory check. The temp_parsed_uri_query_ptr is validated for a correct range, but the range valid for temp_parsed_uri_query_ptr is derived from the amount of allocated heap memory, not the actual input size. Therefore the check of temp_parsed_uri_query_ptr may be insufficient for safe access to the area pointed to by packet_data_pptr. As a result, access to a memory area outside of the intended boundary of the packet buffer is made.
References
Link | Resource |
---|---|
https://github.com/ARMmbed/mbed-os/issues/12928 | Third Party Advisory |
https://github.com/ARMmbed/mbed-coap/pull/116 | Third Party Advisory |
Configurations
Information
Published : 2020-06-18 12:15
Updated : 2020-06-25 07:41
NVD link : CVE-2020-12884
Mitre link : CVE-2020-12884
JSON object : View
CWE
CWE-125
Out-of-bounds Read
Products Affected
arm
- mbed_os