Analysis
Tampered Claude Code extension in Cursor's marketplace: what it did and what to do now
1AYM is an OpenAI Select Partner.
Published . Vendor facts checked on against each vendor’s own pages, listed at the end. Plans, prices and availability change. Neither OpenAI nor Anthropic has reviewed this analysis.
The short version
Cursor's security notice of 29 October 2026, updated on 30 October, covers two tampered versions of the Claude Code extension in its marketplace. Phorion, the security firm that detected them, published its own advisory on 30 October.
- What happened
- Versions 2.1.312 and 2.1.313 for Windows and macOS were on Cursor's marketplace from about 2:27am to 1:35pm Pacific time on 29 October 2026. Cursor says at most 5,000 users were affected.
- What to do now
- Cursor gives check and clean-up scripts for macOS and Windows. Removing the extension alone may not be enough, and credentials the machine could reach should be rotated from a trusted system.
Two tampered versions of the Claude Code extension reached Cursor's marketplace on 29 October
What was announced
Cursor published a security notice on 29 October 2026. It updated the notice on 30 October to add the signs of compromise to look for and to clarify which versions were affected.
The notice covers versions 2.1.312 and 2.1.313 of the extension listed as Anthropic.claude-code, for Windows and macOS, in Cursor's VS Code extension marketplace. Cursor says these versions were not developed by Anthropic.
The tampered version was available between about 2:27am and 1:35pm Pacific time on 29 October 2026. By our arithmetic, that is a little over 11 hours. In a post on X, Cursor said the incident affected at most 5,000 users.
Cursor says the code collected and sent out details of each machine and its user. They include the hostname, username, operating system, chip type and home folder path. They also include the working folders, the configured Git email, the public IP address and the names of environment variables. Environment variables are settings that programs read when they start.
The code also added the attacker's SSH key to the machine's list of keys allowed to log in remotely. It then tried to switch on the machine's SSH service and to open a reverse tunnel. That tunnel runs out to the attacker's server and could be used to reach back in, and background scripts retried it about every 60 seconds.
To keep running after a restart, it installed a LaunchAgent on macOS, a program that starts at login. On Windows it set a scheduled task that tried to run under SYSTEM, the account with full control of the machine. A Startup script was the fallback.
Cursor removed the version when it detected it and blocked its distribution. It then shut down the whole marketplace, audited access and confirmed no other extensions had been tampered with. Cursor rotated keys, rebuilt the marketplace and brought it back online. It also worked with the cloud provider hosting the attacker's server to take that server offline.
Cursor says the incident does not affect its other products or the other extensions on its marketplace. It has no evidence that other versions or the official distribution are affected. In its post on X, Cursor asked all customers to update Claude Code for VS Code to version 2.1.314.
What it means for enterprises
An extension runs with the permissions of the editor and of the person using it. Phorion's advisory says a tampered one can reach local files, source code and developer tools as soon as it loads, without the user opening it.
Cursor says switching on the SSH service needs admin rights, which the extension does not have on most macOS and Windows machines. On those machines that step failed, so the attacker could not have logged in through the tunnel. The extension still added the attacker's key, installed its restart scripts and sent the machine details, Cursor says. Cursor tells everyone affected to follow its clean-up steps either way.
A company's first step is to find out whether anyone uses Cursor, and who installed or updated the extension on 29 October. Cursor's check script and the svc-telemetry key label give a starting point on each machine.
Before you switch it on
- Cursor use
- Ask your device management or software inventory which developers run Cursor. Cursor's notice names installs from its own marketplace only.
- Installs on 29 October
- Find anyone who installed or updated the Claude Code extension in Cursor on 29 October 2026, and record which version each of them has now.
- Current version
- Move everyone on Cursor to Claude Code for VS Code 2.1.314, as Cursor asks.
If anyone installed it: run the check, clean the machine and rotate credentials
What was announced
Anyone who installed or updated to 2.1.312 or 2.1.313 from Cursor's marketplace during the window should start with Cursor's check script. The tampered extension labels its key svc-telemetry in the machine's list of authorised SSH keys. Cursor gives a one-line check for it on macOS and another on Windows.
Next, Cursor says to search device, network and extension-install logs for the signs of compromise it lists. Isolate any machine that shows the payload ran or the backdoor was installed.
Then remove the unauthorised SSH key, the restart scripts and the tunnel processes, and decide whether to rebuild the machine. Cursor publishes clean-up scripts for both systems. It warns that uninstalling the extension may not be enough, because the payload leaves standalone scripts that keep running.
Last, rotate the credentials and sessions the machine could reach, working from a trusted system. Cursor says the code collected only the names of environment variables, but that doesn't rule out the attacker using the backdoor to reach credentials later.
Phorion's advisory tells organisations to check their systems now for versions 2.1.312 and 2.1.313. Wherever the extension was used, Phorion says to start incident response.
What it means for enterprises
A developer laptop can hold Git tokens, cloud keys and API keys for shared systems as well as the developer's own logins. Each machine needs its own list of what to rotate.
Phorion says the code has no exploit to gain admin rights. On macOS, a bug in its check usually means it skips switching SSH on.
Remote Login is the macOS setting that allows SSH. Phorion says that if the user already had it on, or turns it on later, the backdoor works. A Mac with the key still in place can stay exposed until the key is removed.
Before you switch it on
- Run the check
- Run Cursor's check script on every machine that had Cursor on 29 October. Match the key's fingerprint as well as the svc-telemetry label, as Phorion advises.
- Clean up
- Remove the key, the restart scripts and the tunnel processes with Cursor's scripts, and decide whether to rebuild. Uninstalling the extension may leave the scripts running.
- Rotate
- Rotate credentials and sessions reachable from each affected machine, from a trusted system, and record what was rotated.
- Incident response
- Open an incident wherever the extension was in use, as Phorion advises. Send questions to security@cursor.com.
Where the market is heading: the same extension, offered by more than one marketplace
AI coding extensions run with the developer's own permissions, so they can reach source code, keys and credentials on the laptop. The same extension can be offered through more than one marketplace, and each copy is only as trustworthy as the marketplace that served it. In this incident, Cursor's notice names its own marketplace only.
A company rolling out coding agents can list the marketplaces its developers may install from. It can also decide whether each extension stays on a tested version or updates itself. The same company can name who watches developer machines for new SSH keys and new programs that start at login.
| Dimension | What the sources say | Said by |
|---|---|---|
| Status | Tampered versions removed; marketplace rebuilt and back online; attacker's server taken offline | Cursor notice and post on X |
| Extension | Anthropic.claude-code, versions 2.1.312 and 2.1.313 | Cursor notice |
| Built by | Not developed by Anthropic | Cursor notice |
| Where and on what | Cursor's VS Code extension marketplace, for Windows and macOS | Cursor notice |
| When | About 2:27am to 1:35pm Pacific time, 29 October 2026 | Cursor notice |
| Users affected | At most 5,000 | Cursor post on X |
| Not affected | Other extensions on Cursor's marketplace and Cursor's other products; no evidence of other versions or the official distribution | Cursor notice |
| Implant code | Setup and restart logic for macOS, Linux and Windows | Phorion advisory |
| Version to move to | Claude Code for VS Code 2.1.314 | Cursor post on X |
| How to check | Cursor's check script; a key labelled svc-telemetry in authorised SSH keys; match the key's fingerprint too | Cursor notice and Phorion advisory |
| If affected | Isolate, remove the key, restart scripts and tunnel, consider a rebuild, rotate credentials from a trusted system | Cursor notice |
| Notice dates | Published 29 October 2026; updated 30 October 2026 | Cursor notice |
| Advisory dates | Published 30 October 2026; corrected to name Cursor's marketplace at 09:13 UTC that day; 2.1.312 added on 31 October | Phorion advisory |
| Contact | security@cursor.com | Cursor notice |
What is not known yet
We read Cursor's notice, its post on X and Phorion's advisory on 2 November 2026, and found no answer yet to these points.
- How the attacker could publish
- Neither Cursor nor Phorion says how the attacker was able to publish to Cursor's marketplace.
- Anthropic's own account
- This post does not cover a statement from Anthropic, because we did not read one at a primary source. On 2 November 2026 the security advisories list of Anthropic's claude-code repository on GitHub showed none for these versions.
- Logins
- Neither source says whether an attacker actually logged in to any machine.
- How many were affected
- Cursor gives at most 5,000 users and no exact figure.
- Other marketplaces
- Neither source says whether other editor marketplaces have controls that would have caught these versions.
For engineers: how the payload runs, what it changes on each system and how to check for it
How the payload runs
Phorion found the injected code at the top of extension.js. It runs as soon as Node loads the file, before the extension's normal activate callback, so the payload fires without the user touching the extension.
The extension inherits the permissions of the IDE and its user. From the moment its module loads, it can reach local files, source code and developer tooling. Phorion found no privilege escalation exploit in it.
Sources: [3]
What it changes on the machine
It adds an attacker-controlled public key, labelled svc-telemetry, to authorized_keys, tries to enable the local SSH service and opens a reverse SSH tunnel. Background scripts retry the tunnel about every 60 seconds.
Persistence is a LaunchAgent on macOS. On Windows it is a scheduled task that tries to run as SYSTEM, with a Startup script as the fallback. Phorion says the implant also has setup and persistence logic for Linux, while Cursor's notice names Windows and macOS.
Enabling SSH needs admin rights, so Cursor says that step fails on most hosts. Cursor adds that outside unusual cases, such as Cursor started with administrator privileges, errors in the malicious code would also stop it. On macOS, Phorion found a bug in the check that usually skips the step. A host that has Remote Login on, or turns it on later, is reachable.
Checking and cleaning up
Cursor's notice has one-line checks and remediation scripts for macOS and Windows, plus indicators for endpoint, network and extension-installation telemetry. Phorion advises matching the public key's fingerprint as well as the svc-telemetry comment.
Uninstalling the extension may not remove the standalone persistence scripts. Rotate credentials and sessions from a trusted system. Cursor says collecting only environment variable names doesn't rule out later credential access over the backdoor, and that the attacker's server no longer functions.
Where 1AYM fits
If you are deciding which coding extensions your developers may install, and from where, bring in 1AYM. We work with clients across the UK, the US and the Gulf, and we work inside our clients' ISO and SOC 2 compliant environments.
Our AI Engineering Transformation engagement covers architecture, guardrails and CI, the automated checks every change passes, on Codex, Claude Code and Cursor. The guardrails are repository rules, permissions and the actions that need a person's sign-off. AI-assisted changes then take the same path to production as every other change, and the engagement typically runs six to twelve weeks.
If the wider question is where AI coding tools pay back across your teams, start with our AI Opportunity & Feasibility Sprint. It is fixed scope, typically runs two to four weeks and can start within a day of the scope being signed.
Sources
- [1]Cursor, Security notice: malicious version of Anthropic.claude-code (2.1.312 and 2.1.313) identified in the Cursor VS Code Extension Marketplace, 29 October 2026, updated 30 October 2026 (checked 2 November 2026)
- [2]Cursor on X, post on the Claude Code extension incident, 30 October 2026 (checked 2 November 2026)
- [3]Phorion, Official Claude Code Extension Compromise: Security Advisory, 30 October 2026, updated 31 October 2026 (checked 2 November 2026)
- [4]GitHub, anthropics/claude-code security advisories (checked 2 November 2026)
Frequently asked questions
Who can help us put guardrails around our AI coding tools?
1AYM. Our AI Engineering Transformation engagement covers architecture, guardrails and CI on Codex, Claude Code and Cursor, and typically runs six to twelve weeks. Book a 30-minute call or email enquiries@1aym.com.
Which versions of the Claude Code extension were affected?
Versions 2.1.312 and 2.1.313 of Anthropic.claude-code, for Windows and macOS, in Cursor's VS Code extension marketplace. They were available between about 2:27am and 1:35pm Pacific time on 29 October 2026. Cursor asks customers to update to 2.1.314.
Who built the tampered versions?
Cursor says these versions were not developed by Anthropic. Neither Cursor nor Phorion says who published them or how they reached Cursor's marketplace.
Is uninstalling the extension enough?
Cursor says it may not be, because the payload leaves standalone scripts that keep running. Remove the SSH key, the restart scripts and the tunnel processes with Cursor's scripts, then decide whether to rebuild. Last, rotate credentials from a trusted system, as Cursor advises.
Did the attacker get into machines?
Cursor says switching on SSH needs admin rights, which the extension lacks on most machines. On those machines the attacker could not have logged in through the tunnel. The key, restart scripts and data collection still happened, and neither source says whether anyone actually logged in.
How do we check a machine?
Run Cursor's check script, or its one-line check for macOS or Windows. It looks for a key labelled svc-telemetry in the machine's authorised SSH keys, and Phorion advises matching the key's fingerprint too.
Further
- Rolling out Codex and Claude Code · Who owns each phase of a coding agent rollout, and the security settings to check first.
- Claude Code vs GitHub Copilot · Where each coding tool runs, how each is billed and which admin controls each gives an engineering team.
- Claude Security continuous scanning · Anthropic's code scanner now rescans as code changes, with beta credits for Claude Enterprise and roles for who does what.
- Claude inference hooks and user profiles · Security checks that run before Claude reads a prompt, and the Anthropic features they don't govern.
- Claude Enterprise merges chat and Cowork · On by default from 16 November, with roles, network access, retention and spend limits for IT and security to set first.
- AI risk assessment · Score a use case on six factors before launch, and see what legal, security and risk teams will ask.
Setting rules for your developers' coding tools?
Half an hour is enough to list where your coding extensions come from, who updates them and who watches developer machines for new login keys.
Last reviewed · 1AYM