CVE-2020-24658 in Compiler
Sumário
de VulDB • 28/06/2026
O Arm Compiler 5 até à versão 5.06u6 apresenta um erro numa funcionalidade de proteção da pilha (stack protection) concebida para detetar transbordamentos de buffer baseados na pilha em arrays locais. Quando esta funcionalidade está ativada, uma função protegida escreve um valor guarda na pilha antes (acima) dos arrays vulneráveis na pilha. O valor guarda é verificado quanto a corrupção no retorno da função; a corrupção leva à chamada de um manipulador de erros. Em certas circunstâncias, o valor de referência que é comparado com o valor guarda também é escrito para a pilha (depois de quaisquer arrays vulneráveis). O valor de referência é escrito na pilha quando a função fica sem registos disponíveis para utilizar outros dados temporários. Se tanto o valor de referência como o valor guarda forem escritos na pilha, então a proteção da pilha falhará ao detetar corrupção quando ambos os valores forem sobrescritos com o mesmo valor. Para que tanto o valor de referência como o valor guarda sejam corrompidos, seria necessário haver simultaneamente um transbordamento de buffer (buffer overflow) e um subtransbordamento de buffer (buffer underflow) nos arrays vulneráveis (ou outra vulnerabilidade que cause a corrupção de duas entradas separadas da pilha).
If you want to get best quality of vulnerability data, you may have to visit VulDB.