# CVE-2020-0901: Microsoft Excel Remote Code Execution Vulnerability

> Attackers can execute arbitrary code by tricking users into opening a malicious Excel file, potentially gaining full system control.

- **Severity:** Critical 9.8 (`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** No
- **Published:** 21 May 2020
- **Updated:** 19 Aug 2026
- **Also known as:** GHSA-7pg2-vffv-rxw4

## What is CVE-2020-0901?

CVE-2020-0901 is a critical memory corruption vulnerability in Microsoft 365 Apps, published on 21 May 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

A remote code execution vulnerability exists in Microsoft Excel software when the software fails to properly handle objects in memory. An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user. If the current user is logged on with administrative user rights, an attacker could take control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.
Exploitation of the vulnerability requires that a user open a specially crafted file with an affected version of Microsoft Excel. In an email attack scenario, an attacker could exploit the vulnerability by sending the specially crafted file to the user and convincing the user to open the file. In a web-based attack scenario, an attacker could host a website (or leverage a compromised website that accepts or hosts user-provided content) containing a specially crafted file designed to exploit the vulnerability. An attacker would have no way to force users to visit the website. Instead, an attacker would have to convince users to click a link, typically by way of an enticement in an email or instant message, and then convince them to open the specially crafted file.
The security update addresses the vulnerability by correcting how Microsoft Excel handles objects in memory.

## Which versions are affected by CVE-2020-0901?

It affects 2 products.


Products: Microsoft 365 Apps, Microsoft Office.

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

No fix has been published for CVE-2020-0901 yet. Limit exposure of the affected software until one is available.

## Is CVE-2020-0901 being exploited?

There is no known exploitation of CVE-2020-0901 in the wild and no public exploit code.

## Other vulnerabilities in Microsoft 365 Apps

- [CVE-2024-21413](https://insights.sbomify.com/CVE-2024-21413/): Microsoft Outlook Improper Input Validation (critical 9.8, exploited in the wild)
- [CVE-2023-23397](https://insights.sbomify.com/CVE-2023-23397/): Microsoft Office Outlook Privilege Escalation (critical 9.8, exploited in the wild)
- [CVE-2024-38189](https://insights.sbomify.com/CVE-2024-38189/): Microsoft Project Remote Code Execution Vulnerability (high 8.8, exploited in the wild)
- [CVE-2023-35311](https://insights.sbomify.com/CVE-2023-35311/): Microsoft Outlook Security Feature Bypass (high 8.8, exploited in the wild)
- [CVE-2026-21514](https://insights.sbomify.com/CVE-2026-21514/): Microsoft Office Word Reliance on Untrusted Inputs in a Security Decision (high 7.8, exploited in the wild)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2020-0901 and fix it if it is affected.

What it is: CVE-2020-0901 is a critical memory corruption vulnerability in Microsoft 365 Apps, published on 21 May 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2020-0901 in the wild and no public exploit code.

Affected product: Microsoft 365 Apps. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2020-0901/ (Markdown: https://insights.sbomify.com/CVE-2020-0901/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2020-0901
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2020-0901
- OSV: https://osv.dev/vulnerability/CVE-2020-0901

---
From sbomify Insights: https://insights.sbomify.com/CVE-2020-0901/
Summaries are generated and may contain mistakes; the official description above is the record.
