For the English version of this alert, click here.
Allele Security Alert
ASA-2018-00018
Identificador(es)
ASA-2018-00018, CVE-2018-16839
Título
Integer overflow conduz a buffer overflow durante autenticação SASL
Fabricante(s)
the Curl project
Produto(s)
curl
Versão(ões) afetada(s)
O problema está presente somente em sistemas 32 bits. Também é necessário que o campo nome de usuário use mais que 2GB de memória, o que deveria ser raro.
Versões afetadas: libcurl 7.33.0 até e incluindo 7.61.1
Versão(ões) corrigida(s)
libcurl >= 7.62.0
Prova de conceito
Desconhecido
Descrição
libcurl contém um buffer overflow no código de autenticação SASL.
A função interna Curl_auth_create_plain_message() falha para verificar corretamente que o comprimento do usuário e senha não são muito longos então calcula o tamanho do buffer a ser alocado.
Em sistemas com o tipo size_t com 32 bits, o cálculo do tamanho do buffer conduz a integer overflow quando o nome do usuário excede 2GB (2^31 bytes). Este integer overflow normalmente causa um buffer muito pequeno ser atualmente alocado ao invés do muito grande pretendido, fazendo com que o uso do buffer resulte em um buffer overflow na heap.
A função afetada pode somente ser alcançada quando usando POP3(S), IMAP(S) ou SMTP(S).
Detalhes técnicos
Desconhecido
Créditos
Harry Sintonen
Referência(s)
CURL 7.62.0 MOAR STUFF
https://daniel.haxx.se/blog/2018/10/31/curl-7-62-0-moar-stuff/
SASL password overflow via integer overflow
https://curl.haxx.se/docs/CVE-2018-16839.html
sasl: allow arbitrarily long username and password
https://github.com/curl/curl/commit/c56f9797e7feb7c2dc
Curl_auth_create_plain_message: fix too-large-input-check
https://github.com/curl/curl/commit/f3a24d7916b9173c69a3e0ee790102993833d6c5
CVE-2018-16839
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16839
CVE-2018-16839
https://nvd.nist.gov/vuln/detail/CVE-2018-16839
Se encontrou algum erro neste alerta ou deseja uma análise compreensiva, entre em contato.
Última modificação: 23 setembro 2019