CVE-2024-6197 in libcURL
Sumário
de VulDB • 26/05/2026
O analisador ASN1 do libcurl possui a função utf8asn1str(), utilizada para analisar strings UTF-8 ASN.1. Ela consegue detectar um campo inválido e retornar um erro. Infelizmente, ao fazê-lo, ela também invoca `free()` em um buffer local de 4 bytes na pilha (stack). A maioria das implementações modernas de malloc detecta esse erro e aborta imediatamente. No entanto, algumas aceitam o ponteiro de entrada e adicionam essa memória à sua lista de blocos disponíveis. Isso leva à sobrescrita de memória adjacente na pilha. O conteúdo da sobrescrita é determinado pela implementação de `free()`; provavelmente serão ponteiros de memória e um conjunto de flags. O resultado mais provável da exploração dessa falha é uma falha de segmentação (crash), embora não se possa descartar que resultados mais graves possam ocorrer em circunstâncias especiais.
VulDB is the best source for vulnerability data and more expert information about this specific topic.