For the English version of this alert, click here.
Allele Security Alert
ASA-2019-00486
Identificador(es)
ASA-2019-00486, CVE-2019-14199
Título
memcpy sem definição de limite ao analisar um pacote UDP devido a um integer underflow
Fabricante(s)
DENX Software Engineering
Produto(s)
Das U-Boot
Versão(ões) afetada(s)
Desconhecido
Versão(ões) corrigida(s)
Desconhecido
Prova de conceito
Desconhecido
Descrição
Há uma chamada memcpy sem definição de limite ao analisar um pacote UDP devido a um integer underflow na função net_process_received_packet() durante uma chamada *udp_packet_handler().
Detalhes técnicos
A função net_process_received_packet() está sujeita a um integer underflow ao utilizar ip->udp_len sem validação. Posteriormente este campo é usado em um memcpy() em nc_input_packet() e qualquer manipulador de pacotes udp que são definidos via net_set_udp_handler(DNS, dhcp,…).
#if defined(CONFIG_NETCONSOLE) && !defined(CONFIG_SPL_BUILD) nc_input_packet((uchar *)ip + IP_UDP_HDR_SIZE, src_ip, ntohs(ip->udp_dst), ntohs(ip->udp_src), ntohs(ip->udp_len) - UDP_HDR_SIZE); <-- integer underflow #endif /* * IP header OK. Pass the packet to the current handler. */ (*udp_packet_handler)((uchar *)ip + IP_UDP_HDR_SIZE, ntohs(ip->udp_dst), src_ip, ntohs(ip->udp_src), ntohs(ip->udp_len) - UDP_HDR_SIZE); // <- integer underflow
Créditos
Fermín Serna, Pavel Avgustinov e Kevin Backhouse
Referência(s)
U-Boot RCE Vulnerabilities Affecting IoT Devices
https://blog.semmle.com/uboot-remote-code-execution-vulnerability/
U-Boot NFS RCE Vulnerabilities (CVE-2019-14192)
https://blog.semmle.com/uboot-rce-nfs-vulnerability/
[U-Boot] Remote code execution vulnerabilities in U-Boot’s NFS and other IP parsing code
https://lists.denx.de/pipermail/u-boot/2019-July/378001.html
CVE-2019-14199
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-14199
CVE-2019-14199
https://nvd.nist.gov/vuln/detail/CVE-2019-14199
Se encontrou algum erro neste alerta ou deseja uma análise compreensiva, entre em contato.
Última modificação: 11 agosto 2019