// For flags

CVE-2020-24658

 

Severity Score

7.8
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

-
*SSVC
Descriptions

Arm Compiler 5 through 5.06u6 has an error in a stack protection feature designed to help spot stack-based buffer overflows in local arrays. When this feature is enabled, a protected function writes a guard value to the stack prior to (above) any vulnerable arrays in the stack. The guard value is checked for corruption on function return; corruption leads to an error-handler call. In certain circumstances, the reference value that is compared against the guard value is itself also written to the stack (after any vulnerable arrays). The reference value is written to the stack when the function runs out of registers to use for other temporary data. If both the reference value and the guard value are written to the stack, then the stack protection will fail to spot corruption when both values are overwritten with the same value. For both the reference value and the guard value to be corrupted, there would need to be both a buffer overflow and a buffer underflow in the vulnerable arrays (or some other vulnerability that causes two separated stack entries to be corrupted).

Arm Compiler versiones 5 hasta 5.06u6, presenta un error en una funcionalidad de protección de pila diseñada para ayudar a detectar desbordamientos de búfer en la región stack de la memoria ??en matrices locales. Cuando esta funcionalidad está habilitada, una función protegida escribe un valor de protección en la pila antes (arriba) de cualquier matriz vulnerable en la pila. El valor de protección es comprobado en busca de daños al devolver la función; la corrupción conlleva a una llamada al controlador de errores. En determinadas circunstancias, el valor de referencia que se compara con el valor de protección también se escribe en la pila (después de las matrices vulnerables). El valor de referencia se escribe en la pila cuando la función se queda sin registros para usar con otros datos temporales. Si tanto el valor de referencia como el valor de protección se escriben en la pila, la protección de la pila no detectará daños cuando ambos valores se sobrescriban con el mismo valor. Para que tanto el valor de referencia como el valor de protección se corrompan, es necesario que haya un desbordamiento del búfer y un subdesbordamiento del búfer en las matrices vulnerables (o alguna otra vulnerabilidad que cause la corrupción de dos entradas de pila separadas)

*Credits: N/A
CVSS Scores
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Attack Vector
Local
Attack Complexity
Medium
Authentication
None
Confidentiality
Partial
Integrity
Partial
Availability
Partial
* Common Vulnerability Scoring System
SSVC
  • Decision:-
Exploitation
-
Automatable
-
Tech. Impact
-
* Organization's Worst-case Scenario
Timeline
  • 2020-08-26 CVE Reserved
  • 2020-12-24 CVE Published
  • 2023-03-08 EPSS Updated
  • 2024-08-04 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-770: Allocation of Resources Without Limits or Throttling
  • CWE-787: Out-of-bounds Write
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
>= 5.01 < 5.06
Search vendor "Arm" for product "Arm Compiler" and version " >= 5.01 < 5.06"
-
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
-
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
update1
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
update2
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
update3
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
update4
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
update5
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
update6
Affected
Arm
Search vendor "Arm"
Arm Compiler
Search vendor "Arm" for product "Arm Compiler"
5.06
Search vendor "Arm" for product "Arm Compiler" and version "5.06"
update7
Affected