CVE-2020-12887 in Mbed OS
요약
\~에 의해 VulDB • 2026. 07. 03.
Arm Mbed OS 5.15.3에서 Arm mbed-coap 라이브러리 5.1.5를 사용할 때 CoAP 라이브러리에 메모리 누수가 발견되었습니다. CoAP 파서는 수신된 CoAP 패킷을 구문 분석하는 역할을 합니다. `sn_coap_parser_options_parse()` 함수는 입력 패킷에 존재하는 모든 옵션의 CoAP 옵션 번호 필드를 구문 분석합니다. 각 옵션 번호는 이전 옵션 번호와 현재 옵션의 델타(delta) 합으로 계산됩니다. 이 델타 및 이전 옵션 번호는 부호 없는 16비트 정수로 표현됩니다. 오버플로우 감지 기능이 부족하여, 옵션 번호가 래핑(wrap around)되어 단일 패킷 내에서 동일한 옵션 번호가 다시 처리되도록 조종된 패킷을 생성할 수 있습니다. 특정 옵션은 메모리 할당 함수를 호출하여 메모리를 할당합니다. `COAP_OPTION_URI_QUERY`, `COAP_OPTION_URI_PATH`, `COAP_OPTION_LOCATION_QUERY` 및 `COAP_OPTION_ETAG`의 경우, 이미 메모리가 할당되었는지 여부를 확인하지 않으며, 이는 옵션 번호 정수 오버플로우와 결합되어 할당된 메모리를 단일 포인터에 여러 번 할당할 수 있습니다. 이로 인해 버퍼 고아화(buffer orphaning)를 통한 메모리 누수가 발생하는 것이 입증되었습니다. 결과적으로 해당 메모리는 해제되지 않습니다.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.