'GlassWorm' Worm Uses Unicode Obfuscation and Solana C2 in VS Code Supply Chain Attack

Sophisticated 'GlassWorm' Malware Targets Visual Studio Code Developers via OpenVSX Marketplace in Novel Supply Chain Attack

CRITICAL
October 21, 2025
5m read
Supply Chain AttackMalwareThreat Intelligence

Related Entities

Organizations

Koi SecurityGitHub

Products & Tech

Other

GlassWorm

Full Report

Executive Summary

Security researchers have identified a novel and highly sophisticated supply chain attack deploying a worm named GlassWorm. The campaign targets developers using Visual Studio Code by publishing malicious extensions on the OpenVSX marketplace. GlassWorm exhibits advanced capabilities, including code obfuscation using invisible Unicode characters to bypass human review and static analysis. In a significant innovation, the worm uses the Solana blockchain for its command-and-control (C2) infrastructure, making it extremely resilient to takedowns. The malware's primary goals are to steal developer credentials for platforms like NPM, GitHub, and Git, drain cryptocurrency wallets, and propagate itself to other software packages.

Threat Overview

GlassWorm represents a significant evolution in supply chain attacks. The worm propagates through compromised VS Code extensions. Its most notable feature is its evasion technique, as reported by Koi Security. The malicious JavaScript code is hidden using Unicode variation selectors, which are non-rendering characters. In a code editor, these selectors appear as harmless whitespace or blank lines, deceiving developers during code reviews, while remaining fully executable by the JavaScript engine.

The C2 mechanism is equally advanced. Instead of traditional domains or IP addresses, GlassWorm queries the Solana blockchain for specific transactions. The attackers embed instructions, such as the URL for the next-stage payload, into the memo field of a transaction. To update the payload location, the attacker simply needs to send a new transaction, making the C2 infrastructure decentralized and censorship-resistant. Once active, the worm steals credentials, exfiltrates data, installs SOCKS proxies and hidden VNC servers for remote access, and uses the stolen credentials to compromise other packages, continuing its propagation.

Technical Analysis

This attack combines multiple advanced TTPs:

  • Initial Access & Propagation: T1195.002 - Compromise Software Supply Chain. The attack vector is malicious extensions published to the OpenVSX marketplace. The worm's self-propagation capability, using stolen credentials to compromise more packages, is a key part of this technique.
  • Defense Evasion: T1027 - Obfuscated Files or Information. The use of invisible Unicode variation selectors is a highly novel form of obfuscation designed to defeat both human analysis and automated scanning tools.
  • Command and Control: T1071.006 - Web Protocols over Non-standard Port (conceptual equivalent). The use of the Solana blockchain as a C2 mechanism is a cutting-edge technique. It functions as a resilient, decentralized data store for C2 instructions, abusing a legitimate protocol for malicious purposes. This makes takedown of the C2 infrastructure nearly impossible.
  • Credential Access: T1555 - Credentials from Password Stores. The malware specifically targets and steals credentials for NPM, GitHub, and Git, which are often stored in configuration files or credential managers on developer machines.
  • Impact: The malware drains funds from 49 different cryptocurrency extensions, a direct form of financial theft.

Impact Assessment

The potential impact of GlassWorm is severe. A successful infection of a developer's machine can lead to the compromise of entire software projects and organizations. By stealing GitHub and NPM credentials, the attackers can inject malicious code into legitimate software packages, triggering a widespread supply chain attack affecting countless downstream users. The theft of cryptocurrency is a direct financial loss, while the installation of proxies and VNC servers creates a persistent backdoor for further attacks. The resilience of the blockchain-based C2 means that compromised machines can remain under attacker control for extended periods.

Cyber Observables for Detection

Detecting GlassWorm requires looking beyond traditional indicators:

Type Value Description
network_traffic_pattern Outbound traffic to Solana RPC endpoints Monitor for unexpected processes on developer workstations making connections to known Solana public RPC nodes.
file_path ~/.vscode/extensions/ Monitor for newly installed or modified VS Code extensions, especially those with poor reviews or from unknown publishers.
command_line_pattern npm publish or git push Monitor for automated or unusual execution of publishing commands that could indicate propagation.
process_name node.exe, code.exe Monitor processes associated with VS Code for unusual network activity, file modification, or child process spawning.

Detection & Response

  1. Dynamic Analysis: Since static analysis is defeated by Unicode obfuscation, run new or updated VS Code extensions in a sandboxed environment to perform D3-DA: Dynamic Analysis. Monitor for suspicious activities like network connections to blockchain APIs, file system enumeration, or attempts to access credential stores.
  2. Network Filtering and Monitoring: While blocking all blockchain traffic is impractical, it is possible to perform D3-OTF: Outbound Traffic Filtering. Restrict and monitor outbound connections from developer tools and build servers. Alert on connections from code.exe or node.exe to known public Solana RPC endpoints, as this is highly anomalous behavior.
  3. Code Scanning: Enhance static analysis tools to specifically search for Unicode variation selectors and other non-rendering characters within code files. While not foolproof, this can help flag suspicious files for manual review.

Mitigation

  • Developer Training & Policy: Educate developers on the risks of third-party extensions. Implement a policy that restricts the installation of extensions to a pre-vetted, approved list. This is a form of D3-EAL: Executable Allowlisting applied to a development environment.
  • Credential Hardening: Enforce the use of hardware-backed credentials (e.g., YubiKeys) for signing Git commits and publishing to package managers. This prevents stolen credentials from being used for propagation.
  • Principle of Least Privilege: Ensure developer accounts do not have excessive permissions. Use separate, highly-secured accounts for publishing packages, and require MFA for all sensitive operations on platforms like GitHub and NPM.
  • Application Isolation: Run development environments in containerized or virtualized environments to isolate them from the host operating system and the broader corporate network, limiting the blast radius of a compromise.

Timeline of Events

1
October 21, 2025
This article was published

MITRE ATT&CK Mitigations

Enforce policies requiring that all internal software packages and external dependencies are signed, and verify the signatures during the build process.

Run development and build processes in isolated environments (containers, VMs) to limit the malware's access to the host system and network.

Mapped D3FEND Techniques:

Restrict and monitor outbound network connections from developer workstations and build servers to prevent communication with malicious C2 infrastructures like the Solana blockchain.

Mapped D3FEND Techniques:

Educate developers on the dangers of untrusted software extensions and the importance of vetting third-party code.

D3FEND Defensive Countermeasures

Given that GlassWorm's static obfuscation defeats traditional code scanning, dynamic analysis is the most effective detection method. All new or updated VS Code extensions should be automatically installed and run within an instrumented sandbox before being allowed in the production developer environment. The sandbox should monitor for the specific malicious behaviors of GlassWorm: attempts to read credential files (e.g., .npmrc, .git-credentials), enumeration of cryptocurrency wallet extension directories, and, most critically, outbound network connections to Solana RPC endpoints. Any extension exhibiting these behaviors should be blocked and trigger an immediate security alert.

To counter the resilient blockchain-based C2, implement strict egress filtering on developer workstations and build servers. By default, deny all outbound traffic and only allow connections necessary for development, such as to corporate code repositories, official package managers, and specific collaboration tools. Specifically, traffic to known public blockchain RPC endpoints (including Solana, Ethereum, etc.) from developer tools like node.exe or code.exe should be blocked and logged. This severs the C2 communication channel, preventing the malware from receiving instructions or exfiltrating data, even if the initial infection succeeds.

Harden the configuration of VS Code and related development tools. Use VS Code's workspace trust features to limit the capabilities of extensions in untrusted projects. Enforce a policy that restricts extension installation to a pre-approved list from a private, internal marketplace. Furthermore, configure Git and NPM to use system-level credential helpers that integrate with secure hardware (like a YubiKey or TPM) or enterprise credential vaults, rather than storing plaintext credentials on disk. This prevents GlassWorm from easily stealing the credentials needed for propagation.

Sources & References

Supply Chain Attack Targets VS Code Extensions With 'GlassWorm' Malware
SecurityWeek (securityweek.com) October 21, 2025

Article Author

Jason Gomes

Jason Gomes

• Cybersecurity Practitioner

Cybersecurity professional with over 10 years of specialized experience in security operations, threat intelligence, incident response, and security automation. Expertise spans SOAR/XSOAR orchestration, threat intelligence platforms, SIEM/UEBA analytics, and building cyber fusion centers. Background includes technical enablement, solution architecture for enterprise and government clients, and implementing security automation workflows across IR, TIP, and SOC use cases.

Threat Intelligence & AnalysisSecurity Orchestration (SOAR/XSOAR)Incident Response & Digital ForensicsSecurity Operations Center (SOC)SIEM & Security AnalyticsCyber Fusion & Threat SharingSecurity Automation & IntegrationManaged Detection & Response (MDR)

Tags

GlassWormSupplyChainAttackMalwareVSCodeSolanaUnicodeObfuscationOpenVSX

📢 Share This Article

Help others stay informed about cybersecurity threats

Continue Reading