# What is CVE-2020-24658?

> CVE-2020-24658 is a high-severity flaw (CVSS 7.8) in Arm Compiler, published on 24 December 2020. It is not on the list of flaws known to be exploited today. The latest forecast puts its chance of use in the next 30 days at 0.3%. If you run an affected version, plan in the vendor’s fix.

Canonical page: https://www.precursorintelligence.com/what-is/cve-2020-24658

## At a glance

- **Verdict:** Plan it in. No sign of exploitation and a low forecast. Patch it in your normal update cycle.
- **Precursor Intelligence risk score:** 46 out of 100 (Medium); action: Plan remediation. Kept up to date as the evidence changes.
- **Severity:** High (CVSS 7.8 out of 10)
- **Known to be exploited:** No, not on the list of flaws known to be exploited today
- **Chance of use in the next 30 days:** 0.3% (latest exploit-likelihood forecast)
- **Published:** 24 December 2020
- **Record last updated:** 21 July 2021
- **Main product:** Arm Compiler
- **Affected products:** 1

## What is CVE-2020-24658? In plain terms

An attacker has to be already on the device with an ordinary user account, and nobody has to click anything. If it works, the attacker can read data, change data and take it offline.

### The official description

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).

### What kind of flaw is it?

- CWE-770: Allocation of Resources Without Limits or Throttling
- CWE-787: Out-of-bounds Write

### How an attack on it works

- Where an attacker can be: Already on the device
- How hard it is to pull off: Easy: no special conditions
- Login needed first: An ordinary user account
- Does someone have to click: No, nobody has to do anything
- What an attacker gets: Can read data, change data and take it offline

Severity vector: `CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H`

## Is CVE-2020-24658 being exploited? Not that we know of

It is not on the list of flaws known to be exploited today. The latest forecast puts the chance of it being used in the next 30 days at 0.3%. That can change at any time, which is why we keep watching.

Exploit likelihood over the last 7 days: 0.3%, 0.3%, 0.3%, 0.3%, 0.3%, 0.3%, 0.3%.

### Timeline

- 24 December 2020: Published
- 21 July 2021: Record last updated

### How Precursor Intelligence ranks it

CVE-2020-24658 scores **46 out of 100 (Medium)**, with the action "Plan remediation".

Every published flaw gets a risk score from 0 to 100, kept up to date as the evidence changes. Four things go into the score, from the one that counts most to the ones that count less:

- Evidence it is being exploited: biggest factor
- How severe it is: strong factor
- How widely exposed it is: smaller factor
- Threat activity around it: smaller factor

85 and above is Critical. Anything confirmed as exploited is always marked for an emergency patch, whatever its score. When this flaw matches software you track, it lands in your list with its score and the reasons behind it.

## Who is affected by CVE-2020-24658?

The published record lists 1 product. Versions are as published: "5.01 to before 5.06" means from 5.01 up to, but not including, 5.06.

- [Arm Compiler](https://www.precursorintelligence.com/product/arm/arm_compiler) by [Arm](https://www.precursorintelligence.com/vendors/arm) (Application): 5.01 to before 5.06, 5.06, 5.06-update1, 5.06-update2, 5.06-update3, 5.06-update4, 5.06-update5, 5.06-update6, 5.06-update7

## How do I fix CVE-2020-24658?

1. **Check whether you run it.** Compare your versions with the affected products above. Not sure what you run? Precursor Intelligence can work it out from your public website, or you can pick it from a list.
2. **Apply the vendor’s fix.** Install the update named in the vendor’s advisory. We’ve put the advisory first in the list.
3. **If you can’t patch today.** Follow any mitigation the vendor publishes, and limit who can reach the affected system from the internet until the update is in.
4. **Keep an eye on it.** Track the product and we tell you as soon as we spot this flaw on the list of exploited flaws, or a jump in its exploit likelihood.

### References

- [developer.arm.com](https://developer.arm.com/support/arm-security-updates/arm-compiler-5-stack-protection) (Vendor advisory)

## Questions

### What is CVE-2020-24658?

CVE-2020-24658 is a high-severity flaw in Arm Compiler, published on 24 December 2020. An attacker has to be already on the device with an ordinary user account, and nobody has to click anything. If it works, the attacker can read data, change data and take it offline.

### How serious is CVE-2020-24658?

It scores 7.8 out of 10 on the CVSS severity scale, which is high. Our risk score for CVE-2020-24658 is 46 out of 100, which is Medium. Its action is "Plan remediation". No sign of exploitation and a low forecast. Patch it in your normal update cycle.

### Is CVE-2020-24658 being exploited?

It is not on the list of flaws known to be exploited today. The latest forecast puts the chance of it being used in the next 30 days at 0.3%. That can change at any time, which is why we keep watching.

### Which versions does CVE-2020-24658 affect?

For Arm Compiler: 5.01 to before 5.06, 5.06, 5.06-update1, 5.06-update2, 5.06-update3, 5.06-update4 and 3 more.

### How do I fix CVE-2020-24658?

Install the update the vendor names in its advisory, linked first under "How do I fix" on this page. If you can't patch today, follow the vendor's mitigation and limit who can reach the affected system from the internet.

## Does CVE-2020-24658 affect you?

Precursor Intelligence keeps checking for you:

- **Tell us what you run.** Pick your software from a list, or let us work it out from your website.
- **We match it to every flaw.** Over 400,000 published flaws, checked against your list.
- **Ranked by real-world risk.** Every flaw gets a 0 to 100 risk score, kept up to date, led by evidence criminals are using it.
- **Told as soon as we know.** An alert by email, in the app or by webhook to your own tools.

Start free (no card, nothing to install): https://www.precursorintelligence.com/register
Book a demo: https://www.precursorintelligence.com/contact

