ASA-2019-00633 – Arm Mbed OS CoAP: Acesso de memória fora de alcance na parte de análise da biblioteca


For the English version of this alert, click here.

Allele Security Alert

ASA-2019-00633

Identificador(es)

ASA-2019-00633, CVE-2019-17212

Título

Acesso de memória fora de alcance na parte de análise da biblioteca

Fabricante(s)

Arm Holdings

Produto(s)

Arm Mbed OS CoAP

Versão(ões) afetada(s)

Arm Mbed OS versão 5.13.2

Versão(ões) corrigida(s)

Desconhecido

Prova de Conceito

Desconhecido

Descrição

Buffer overflows foram descobertos na biblioteca CoAP no Arm Mbed OS.

Detalhes técnicos

O analisador CoAP é responsável por analisar os pacotes CoAP recebidos. A função sn_coap_parser_options_parse() analisa a entrada CoAP linearmente usando um loop while. Depois que uma opção é analisada em um loop, o ponto atual (*packet_data_pptr) é incrementado correspondentemente. O ponteiro é restrito pelo tamanho do buffer recebido, bem como pelo byte do delimitador 0xFF. Dentro de cada loop while, a verificação do valor de *packet_data_pptr não é rigorosamente aplicada. Mais especificamente, dentro de um loop, *packet_data_pptr pode ser incrementado e, em seguida, desreferenciado sem verificação. Além disso, existem muitas outras funções no formato sn_coap_parser_****() que não verificam se o ponteiro está dentro dos limites do buffer alocado. Tudo isso leva a stack-based ou heap-based buffer overflows  dependendo de como o buffer de pacote CoAP é alocado.

Créditos

TheSilentDawn

Referência(s)

memory acess out of range in MbedOS CoAP library parser part
https://github.com/ARMmbed/mbed-os/issues/11803

mbed-coap
https://github.com/ARMmbed/mbed-os/tree/master/features/frameworks/mbed-coap

CVE-2019-17212
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17212

CVE-2019-17212
https://nvd.nist.gov/vuln/detail/CVE-2019-17212

Se encontrou algum erro neste alerta ou deseja uma análise compreensiva, entre em contato.

Última modificação: 10 dezembro 2019

Não somos responsáveis por qualquer perda de dados, corrupção de dispositivos ou qualquer outro tipo de problema devido ao uso de qualquer informação mencionada em nossos alertas de segurança.