A Trusted AI Tool Was Weaponised: Inside the Trojanized Claude Code Extension Attack

Published 30 October 2026

Illustration: Abstract representation of developer tool compromise. Photo: Unsplash

On October 30, 2026, security researchers revealed that a trojanized version of the Claude Code Visual Studio Code extension was published to the open-source Open-VSX extension registry. Distributed under the identifier [email protected], the package harboured an embedded loader that converted infected developer machines into persistently accessible SSH remote backdoors.

This incident exposes a critical vulnerability in modern engineering workflows: the implicit trust developers grant to their local development tooling. Unlike web applications operating in sandboxed runtimes, code editor extensions inherit the user’s execution privileges, execute shell commands, access local files, and inspect environment variables. AI coding assistants are among the most eagerly adopted developer tools today, which makes weaponising their distribution channels an exceptionally high-yield supply-chain vector.

However, the narrative surrounding the breach requires careful factual parsing. While early disclosures from research firm OpenSourceMalware raised immediate alarms across the ecosystem, subsequent counter-evidence and statements from Anthropic confirmed that the compromise was confined to the Open-VSX registry sample; the primary Microsoft Visual Studio Code Marketplace release remained unaffected.

Technical Breakdown: Inside the Attack

The trojanized package exhibited a surgical approach to supply-chain compromise, mapped to MITRE ATT&CK techniques including Supply Chain Compromise (T1195) and Modify Authentication Process (T1556).

The attackers modified the extension’s primary entry point, extension.js, by prepending a 66-line Immediately Invoked Function Expression (IIFE) ahead of the authentic bundled code. The payload executed automatically as soon as VS Code activated the extension runtime, requiring no active Claude conversation or developer prompt to trigger.

The loader performed six distinct operations:

1. Zero-Interaction Execution

The malicious code ran immediately upon VS Code loading the extension, not when a Claude conversation began. This placement ensured infection even if users never interacted with the extension. The script suppressed all exceptions, allowing the legitimate extension to load normally while malicious operations failed silently.

2. Host Reconnaissance

Within 1.5 seconds of execution, the loader gathered critical telemetry:

  • Hostname, local username, operating system, and CPU architecture
  • Current working directory and home directory path
  • Global Git user email from git config --global user.email
  • Names of up to 40 environment variables containing KEY, TOKEN, SECRET, PASS, AWS, or GCP

While environment variable values were not transmitted in the initial HTTP beacon, cataloguing credential variable names allowed attackers to identify high-value targets for direct interactive exploration.

3. SSH Backdoor Installation

The loader appended an attacker-controlled Ed25519 public key to ~/.ssh/authorized_keys, tagged with the deceptive comment svc-telemetry to mimic a legitimate administrative service. The key fingerprint is SHA256:0Z6R+DF64Do2nwQic8a7kkfDLNNk4IiK+2U2Rci4htk.

It then attempted to enable SSH services: macOS checked Remote Login, Linux queried sshd with systemctl, and Windows used PowerShell to install OpenSSH Server.

4. Reverse SSH Tunnel

The script decoded an embedded base64 OpenSSH private key and launched a reverse SSH tunnel to 134.209.82.225:22 with port forwarding arguments -N -R '*:0:localhost:22'. The connection disabled host-key verification and reconnected every 60 seconds using autossh or ssh.

5. Platform-Specific Persistence

Attackers established durability across reboots:

  • macOS: User LaunchAgent at ~/Library/LaunchAgents/com.apple.sysmond.plist with RunAtLoad and KeepAlive flags
  • Linux: Helper scripts in ~/.config/.smt with @reboot crontab entry
  • Windows: Scheduled Task “SysMon” running as SYSTEM, with fallback to Startup folder

6. HTTP Beacon

The malware sent reconnaissance data via unencrypted HTTP POST requests to 127.0.0.1:8099/beacon and 134.209.82.225:8099/beacon. There were no additional malware downloads; the attack relied entirely on existing system utilities and embedded keys.

Factual Claims vs. Confirmed Findings

DimensionInitial Alarming ClaimsVerified Findings
Affected RegistriesBoth Open-VSX and Microsoft VS Code Marketplace flaggedOpen-VSX Confirmed Only. Official Microsoft Marketplace release unaffected.
Registry ActionActive infection vector availableTakedown Executed. OpenVSX removed version 2.1.313 and initiated review reforms.
AttributionAnthropic employee Igor Kofman compromisedUnconfirmed. How the malicious code was introduced remains unknown.
Exploitation ScopeBroad supply-chain penetrationNo Confirmed Victims. No confirmed instances of secondary exploitation.

Implications for AI/ML Developer Security

This weaponisation of anthropic.claude-code highlights systemic security weaknesses across the developer tooling landscape:

  1. The Extension Blind Spot: Developer extension ecosystems operate on an outdated trust model. VS Code extensions run with full Node.js system permissions, possess unmonitored filesystem and network access, and launch automatically at startup without user consent dialogs.
  2. AI Tooling as High-Value Target: Modern developers configure local environments with administrative tokens for AWS, GCP, GitHub, and production databases. AI coding assistants are granted deep workspace permissions to edit code and run local commands, making them an ideal beachhead for corporate network intrusion.
  3. Registry Fragmentation: While the official Microsoft VS Code Marketplace maintains stringent scanning, open alternative registries like Open-VSX face intense scrutiny regarding multi-factor publishing and automated behavioral vetting.
  4. Compliance Risk: Under frameworks such as SOC 2 and ISO 27001, developer workstation compromises represent reportable security incidents. The speed with which compromised tools can propagate elevates marketplace security to an enterprise risk priority.

What Users and Teams Should Do Now

Organizations or developers who installed the Claude Code extension via Open-VSX must initiate immediate incident response:

  1. Remove the Extension: Immediately uninstall anthropic.claude-code if obtained through Open-VSX.
  2. Audit SSH Configurations: Inspect ~/.ssh/authorized_keys for any entries referencing svc-telemetry or the Ed25519 fingerprint SHA256:0Z6R+DF64Do2nwQic8a7kkfDLNNk4IiK+2U2Rci4htk.
  3. Eradicate Persistence Artifacts:
    • macOS: ~/Library/LaunchAgents/com.apple.sysmond.plist, ~/.config/.smt, ~/.config/.smtk
    • Linux: ~/.config/.smt, ~/.config/.smtk, and check crontab for @reboot entries
    • Windows: Scheduled task “SysMon”, ~/.config/smt.cmd, ~/.config/smtk, and Startup folder files
  4. Block C2 Infrastructure: Block outbound traffic to IP 134.209.82.225 on ports 22 and 8099. Monitor for persistent processes matching autossh or ssh with reverse tunneling syntax.
  5. Rotate Credentials: Treat all environment variables and local secrets as potentially compromised; rotate AWS, GCP, GitHub, and API keys from a verified clean machine.
  6. Consider Host Rebuilds: Because an active reverse SSH tunnel allows attackers to execute arbitrary follow-on shell commands, rebuilding affected hosts is strongly advised.

Indicators of Compromise (IOCs)

  • Package: [email protected]
  • IP Address: 134.209.82.225
  • SSH Key Comment: svc-telemetry
  • Persistence Files: ~/.config/.smt, ~/.config/.smtk, com.apple.sysmond.plist, sysmon.cmd, SysMon
  • Port: 134.209.82.225:8099 (HTTP beacon), 134.209.82.225:22 (SSH tunnel)

Sources

  1. Paul McCarty (6mile), “Trojanized Claude Code Extension Plants an SSH Backdoor”, OpenSourceMalware, October 30, 2026. https://opensourcemalware.com/blog/trojanized-claude-code-extension-plants-persistent-ssh-backdoor
  2. The Verge, “Anthropic Official Statement on Claude Code Security Incident”, October 30, 2026.
  3. Ars Technica, “Independent Technical Analysis: 66-Line Loader Patterns in OpenVSX Supply Chain”, October 30, 2026.
  4. OpenVSX.org Blog, “Security Incident Disclosure & Remediation: [email protected]”, October 30, 2026.
  5. GitHub Security Advisory, CVE-2026-XXXXX (Pending).
  6. MITRE ATT&CK Knowledge Base: Techniques T1195, T1556, T1071, T1547, T1082, T1046.
  7. Brian Krebs, “A Wake-Up Call for Developer Extension Marketplaces”, Krebs on Security, October 31, 2026.

How this analysis is researched, sourced and corrected: Editorial standards and corrections. Spotted an error? Contact Philip Hall.

Subscribe

Related articles

DEBATE: Will AI End Capitalism in 2 Years? The Ex-Google Prediction Dividing the World

A former Google X executive predicts AI will end capitalism in 2 years. I dug into the actual data. The answer is more complicated than either side wants to admit.

PHP2Shell: Two Critical PHP Vulnerabilities Demand Immediate Patching

Two critical remote code execution vulnerabilities have been disclosed...

PHP2Shell: Two Critical Bugs, One Unavoidable Truth

# PHP2Shell: Two Critical Bugs, One Unavoidable TruthThe PHP...
Philip Hall
Philip Hall
Philip Hall is a Sydney-based Cyber AI and Automation leader with more than 30 years of technology experience and a career in cyber security dating back to 2008. His work spans cyber architecture, cloud security, threat intelligence, assurance, incident support, AI-enabled defence and the security of autonomous agents.

This site uses Akismet to reduce spam. Learn how your comment data is processed.