CVE-2020-16977
CVE-2020-16977 is a high-severity vulnerability in Microsoft Visual Studio Code with a CVSS 3.x base score of 7.0. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low.
Key facts
- Severity: High (CVSS 3.x base score 7.0)
- CVSS v2: 9.3
- EPSS exploit prediction: 3% (86th percentile)
- Actively exploited: Not listed in CISA KEV
- Affected product: Microsoft Visual Studio Code
- Published:
- Last modified:
Description
<p>A remote code execution vulnerability exists in Visual Studio Code when the Python extension loads a Jupyter notebook file. 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.</p> <p>To exploit this vulnerability, an attacker would need to convince a target to open a specially crafted file in Visual Studio Code with the Python extension installed.</p> <p>The update addresses the vulnerability by modifying the way Visual Studio Code Python extension renders notebook content.</p>
Frequently asked questions
- What is CVE-2020-16977?
- <p>A remote code execution vulnerability exists in Visual Studio Code when the Python extension loads a Jupyter notebook file. 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.</p> <p>To exploit this vulnerability, an attacker would need to convince a target to open a specially crafted file in Visual Studio Code with the Python extension installed.</p> <p>The update addresses the vulnerability by modifying the way Visual Studio Code Python extension renders notebook content.</p>
- How severe is CVE-2020-16977?
- CVE-2020-16977 has a CVSS 3.x base score of 7.0, rated high severity. It is exploitable over local access with high attack complexity, requires no privileges and user interaction. Impact on confidentiality is high, integrity high, and availability high.
- Is CVE-2020-16977 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 3% (86th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2020-16977?
- CVE-2020-16977 affects Microsoft Visual Studio Code. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2020-16977?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its high severity, prioritise patching exposed systems.
- When was CVE-2020-16977 published?
- CVE-2020-16977 was published on 2020-10-16 and last updated on 2026-06-17.
References
Affected products (1)
- cpe:2.3:a:microsoft:visual_studio_code:-:*:*:*:*:*:*:*
More vulnerabilities in Microsoft Visual Studio Code
- CVE-2026-47281 — Critical (CVSS 9.6): Improper input validation in Visual Studio Code allows an unauthorized attacker to elevate privileges over a network.
- CVE-2026-41613 — High (CVSS 8.8): Session fixation in Visual Studio Code allows an unauthorized attacker to elevate privileges over a network.
- CVE-2026-41109 — High (CVSS 8.8): Improper neutralization of special elements in output used by a downstream component ('injection') in GitHub Copilot…
- CVE-2026-21518 — High (CVSS 8.8): Improper neutralization of special elements used in a command ('command injection') in GitHub Copilot and Visual Studio…
- CVE-2025-55319 — High (CVSS 8.8): Ai command injection in Agentic AI and Visual Studio Code allows an unauthorized attacker to execute code over a…
- CVE-2024-43488 — High (CVSS 8.8): Missing authentication for critical function in Visual Studio Code extension for Arduino allows an unauthenticated…