Microsoft has published a fix for CVE-2026-54981, an Important-rated security feature bypass in the Python extension for Visual Studio Code. The affected extension must be updated to fixed build 2026.3.1 or later; Microsoft’s advisory marks customer action as required.

Microsoft Security Response Center describes the issue as Visual Studio Code Python Extension Security Feature Bypass Vulnerability. Its advisory says that inclusion of functionality from an untrusted control sphere in Visual Studio Code - Python extension allows an unauthorized attacker to bypass a security feature locally. The practical delivery route requires user interaction: a victim can be persuaded through social engineering to download and open a specially crafted file from a website.

Abstract illustration of connected devices separated by a protected security boundary.CVE-2026-54981 severity and attack conditions​

CVE-2026-54981 has a CVSS base score of 7.8 and a temporal score of 6.8. Microsoft assigns it the severity Important and publishes the following complete vector:

CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C

The vector puts the attack vector at local, with low attack complexity, no privileges required, and user interaction required. Confidentiality, integrity, and availability impacts are each rated High. In operational terms, this is not an unauthenticated network service flaw that can be directly probed across an enterprise; the attack chain hinges on getting a user to open attacker-crafted content on the targeted machine.

Microsoft’s own advisory explains an important nuance in that chain: the attack is carried out locally by a user authenticated to the targeted system, while the CVSS privileges-required metric remains PR:N. That combination is consistent with malware or malicious-file delivery where the victim’s existing desktop session supplies the local execution context rather than an attacker first needing credentials or elevated permissions.

The listed weakness categories are CWE-693 and CWE-829. CWE-693 covers protection mechanism failure, while CWE-829 concerns inclusion of functionality from an untrusted control sphere. Together, those classifications point administrators toward the extension’s handling of untrusted functionality rather than a flaw in Python code written by the developer.

Microsoft’s fixed build and affected product record​

The affected product is Python extension for Visual Studio Code. Microsoft’s affected-product record maps a blank KB value to fixed build 2026.3.1; this is an extension update rather than a Windows cumulative update with a KB identifier.

Microsoft’s remediation is explicit: “For Python extension for Visual Studio Code, update to fixed build 2026.3.1 or later.”

That distinction matters for endpoint management. Windows patch compliance reports that focus on monthly operating-system KBs will not establish whether CVE-2026-54981 is fixed. Administrators need to inventory the Python extension used by Visual Studio Code and confirm that installed instances have reached build 2026.3.1 or a later build.

For organizations that control extensions through managed Visual Studio Code configurations, the required check is the extension’s installed build—not merely the version of the Visual Studio Code editor or the Python runtime. The advisory identifies the Python extension for Visual Studio Code as the affected product, and it does not identify the Windows operating system itself as the component requiring remediation.

Exposure is file-driven, not remote scanning​

Microsoft states that an attacker could exploit this security feature bypass by convincing a victim to download and open a specially crafted file from a website, leading to a local attack on the victim computer. This places developer workstations, shared engineering desktops, training systems, and any environment where users routinely open externally obtained repositories or project materials in the relevant risk path.

The user-interaction requirement reduces the likelihood of indiscriminate exploitation compared with a remotely reachable vulnerability, but it does not turn the issue into a harmless warning. Developers frequently exchange sample projects, notebooks, archives, templates, and code through source-control hosts, issue trackers, chat platforms, and package documentation. Those ordinary workflows can supply the social-engineering opportunity the advisory describes.

The security impact also should not be narrowed to a developer’s own files. A bypass of a security feature can change the trust boundary that the extension is intended to enforce. With High CVSS impacts for confidentiality, integrity, and availability, the listed scoring reflects a potential for serious consequences after a successful local attack, even though Microsoft’s stated entry point requires a user to open crafted content.

Status fields Microsoft published​

Microsoft’s published status information is as follows:

  • Publicly disclosed: No
  • Exploited: No
  • Exploitation assessment: Exploitation Less Likely
  • Customer action required: Yes

“Exploitation Less Likely” is Microsoft’s assessment, not a guarantee that the flaw cannot be used. It should be read alongside the advisory’s delivery condition: the attacker needs a local path created by social engineering and user interaction. Security teams should prioritize the update according to exposure to untrusted project content and the ability to centrally manage VS Code extensions, rather than waiting for evidence of in-the-wild exploitation.

What administrators should do now​

Update the Python extension for Visual Studio Code to fixed build 2026.3.1 or later, then verify the installed extension version across developer endpoints. Teams that permit user-installed extensions should ensure their software inventory and endpoint-management tooling capture extension builds, because a current VS Code editor alone does not demonstrate remediation for CVE-2026-54981.

Until the update is deployed, organizations should reinforce existing controls around opening externally sourced files and projects in development environments. The immediate measurable completion point is straightforward: the Python extension for Visual Studio Code is on build 2026.3.1 or later, satisfying Microsoft’s stated remediation for CVE-2026-54981.