Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft malicious Go repository
-
DeliveryVictim opens project in Restricted Mode
-
ExploitGo extension auto-activates tooling
-
ExecutionAttacker code executes as developer
-
ImpactDeveloper workstation compromised
Vulnerability Assessment
| Exploitation Conditions | Exploitation requires the victim to open an attacker-supplied, untrusted Go workspace (repository or folder) in VS Code while depending on Restricted Mode / Workspace Trust for protection; prior to the fix, the Go extension activated and ran Go tooling in that untrusted workspace, allowing untrusted code execution. Limiting factors: the developer must actively open the malicious project, the attack is confined to users who rely on Restricted Mode (users who trust all workspaces were already executing extension code by design), and patched extension builds no longer activate the Go extension in Restricted Mode, closing the path. |
| Impact | This is a moderate, developer-workstation risk rather than an internet-facing emergency. The input CVSS (5.4, AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L) appears understated for what the advisory and the 'RCE' tag describe: the issue is a Workspace Trust / Restricted Mode gap in the VS Code Go extension, where the extension could activate and run tooling (and thus attacker-influenced code) in an untrusted workspace. The signals are consistent in pointing to low urgency: EPSS is only 0.45% (37th percentile), there is no CISA KEV listing, and no public exploit is referenced - this is no public exploit identified at time of analysis. However, there is a conflict worth flagging: the NVD vector lists UI:N and only C:L/A:L, yet the vulnerability's mechanism inherently requires a victim to open a malicious Go workspace and realistically yields code execution in the user's context (I:N also seems inconsistent with code execution). CVSS indicates network vector with no user interaction, but the description and advisory imply a user must open untrusted code - verify metrics with the Go security team advisory (GO-2025-4249). Net: treat as a defense-in-depth developer-tooling fix to prioritize for update, not as a mass-exploitation threat. |
| Exploit ScenarioDerived | An attacker publishes a malicious Go repository and lures a developer into cloning and opening it in VS Code, relying on Restricted Mode to stay safe. Before the fix, the Go extension still activated in the untrusted workspace and invoked Go tooling, allowing attacker-controlled code to run with the developer's privileges. No public proof-of-concept is referenced, and exploitation depends on the victim opening the untrusted project. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 01, 2026
Untrusted code execution in the Visual Studio Code Go extension lets a crafted Go workspace run attacker-controlled tooling on a developer's machine whenever the developer relies on Restricted Mode (Workspace Trust) for protection. Prior to the fix tracked as GO-2025-4249, the extension activated and launched Go tooling inside untrusted workspaces, so opening a malicious repository or folder defeated the trust boundary VS Code is designed to enforce. Exploitation requires the developer to actively open the attacker-supplied project and to depend on Restricted Mode; there is no confirmed active exploitation (not listed in CISA KEV) and no public exploit code identified at time of analysis, and EPSS is low at roughly 0.45% (37th percentile), consistent with a moderate developer-workstation risk rather than an internet-facing emergency.
RemediationAI
Primary fix: apply the vendor-released patch for the Visual Studio Code Go extension referenced in the Go advisory GO-2025-4249 (https://pkg.go.dev/vuln/GO-2025-4249) - patched builds no longer activate the Go extension in Restricted Mode, so updating the extension through the VS Code Marketplace (Extensions view → Go → Update, or VS Code's automatic extension updates) is sufficient; the exact fixed version number is described in the advisory and should be verified there before declaring remediation complete (patch available per vendor advisory). Compensating controls, if you cannot update immediately: keep Workspace Trust enabled and never mark unknown repositories as trusted, and explicitly disable the Go extension (Extensions view → Go → Disable) before opening any repository you have not reviewed - the trade-off is loss of IntelliSense, gopls navigation and in-editor build/test features for that session. Additionally, treat go.mod tool/toolchain directives, .vscode/tasks.json, .vscode/launch.json and any repository-provided build scripts as untrusted input and review them before trusting a workspace, since these are the vectors through which Go tooling performs execution; note that sandboxing or running VS Code in a disposable container/VM for untrusted code review reduces exposure without sacrificing the full toolchain, at the cost of a more complex developer workflow. Monitoring guidance: because exploitation is not confirmed in the wild and no public exploit code exists, detection should focus on unexpected Go tooling or language-server child processes spawned immediately after opening a newly cloned Go repository.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in go
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is a trust-boundary failure in a VS Code extension rather than a memory-safety or injection bug: the Visual Studio Code Go extension (CPE cpe:2.3:a:go:go:*:*:*:*:*:visual_studio_code:*:*, maintained under the golang.org/go tooling ecosystem) did not honor VS Code's Workspace Trust / Restricted Mode signal and would activate and run Go tooling - language server and build/toolchain invocations - in a workspace the user had explicitly not trusted. Because Go tooling execution (gopls startup, module and tool-directive resolution, and related build steps) can result in arbitrary code running with the developer's privileges, activating the extension in an untrusted folder effectively converts 'open this project' into 'execute this project's code'. CWE was not assigned in the supplied data, but the class is best characterized as inclusion of functionality from an untrusted control sphere / improper enforcement of an untrusted-workspace restriction. The authoritative independent assessment rates this CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H (local vector, no privileges required, user interaction required, high confidentiality, integrity and availability impact), which differs from the NVD-style AV:N/PR:L/UI:N 5.4 score and more accurately reflects that the attacker must deliver a workspace to the victim and the victim must open it. In patched builds the Go extension simply no longer activates in Restricted Mode, which closes the path entirely rather than filtering individual operations.
Know when Visual Studio Code gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L
Victim must open an untrusted local Go workspace (AV:L, UI:R) with no prior authentication (PR:N); the result is arbitrary code execution in the user's context, so C/I/A:H.
Primary rating from Vendor (golang).
CVSS VectorVendor: golang
DescriptionCVE.org
To prevent unexpected untrusted code execution, the Visual Studio Code Go extension is now disabled in Restricted Mode.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Affected Products (CPE)CVE.org
More in Visual Studio Code
View allVisual Studio Code Remote Code Execution Vulnerability. Rated high severity (CVSS 7.8), this vulnerability is no authent
Visual Studio Code Remote Code Execution Vulnerability. Rated high severity (CVSS 8.8), this vulnerability is remotely e
Security-feature bypass in Microsoft Visual Studio Code before 1.136.2 lets a remote, unauthenticated attacker defeat a
Remote code execution in Visual Studio Code (versions 1.0.0 up to but not including 1.141.1) is achievable through a pat
Privilege escalation in Microsoft Visual Studio Code allows remote unauthenticated attackers to elevate privileges over
Visual Studio Code Remote Code Execution Vulnerability. Rated high severity (CVSS 7.8), this vulnerability is no authent
Security-feature bypass in Microsoft Visual Studio Code lets a remote attacker deliver functionality from an untrusted c
Remote code execution in Visual Studio Code (versions 1.0.0 through 1.132.0) is enabled by a missing authorization check
Command injection in Visual Studio Code 1.0.0 through 1.141.0 allows an unauthenticated remote attacker to execute arbit
Remote code execution in Microsoft Visual Studio Code allows a network-based attacker to inject and execute arbitrary co
Remote code execution in Visual Studio Code versions 1.0.0 through 1.141.1 allows an unauthenticated, network-positioned
Authorization bypass in Visual Studio Code versions 1.0.0 through 1.136.1 allows an unauthenticated network attacker to
NVD
CVE.org
EPSS
VulDB
GitHub PoC
Exploit-DB