On January 30, 2026, a sophisticated supply chain attack hit the Open VSX Registry, a popular open-source marketplace for VS Code extensions. Attackers compromised a legitimate developer account (oorzc) and published malicious updates to four widely used extensions. These poisoned versions, collectively downloaded over 22,000 times, delivered the GlassWorm malware loader, designed to steal credentials, crypto wallets, and sensitive developer data.
This beginner-friendly breakdown walks you through the entire attack chain, maps it to MITRE ATT&CK® techniques, and provides clear, actionable steps to defend against such threats, whether you're a developer, security student, or IT professional. Understanding this Open VSX supply chain attack is crucial in today's interconnected software ecosystem.
Imagine you're a developer starting your day. You run ext install oorzc.ssh-tools to sync files via FTP, a tool you've trusted for two years. But this time, the update quietly installs a hidden malware loader. That's exactly what happened to thousands of developers in the Open VSX supply chain attack.
The attacker didn't create new, suspicious extensions, they hijacked established, legitimate ones from the publisher oorzc. This made the malicious updates blend in perfectly. The four extensions targeted were:
These extensions had a combined history of over 22,000 downloads before the incident, making the supply chain compromise exceptionally effective.
The attackers gained unauthorized access to the oorzc publisher account on Open VSX. This was achieved via a leaked token or credential theft exact method unknown, but it falls under Valid Accounts (T1078) in MITRE ATT&CK.
Using the compromised account, attackers uploaded new versions of four existing extensions. The code was modified to include an obfuscated GlassWorm loader. These updates were signed and pushed as routine maintenance, bypassing any manual review.
Developers with auto-update enabled or those who manually updated received the malicious versions. The extensions still functioned normally, so no immediate red flags were raised.
The malicious code used runtime decryption (T1027 - Obfuscated Files or Information) to unpack the final payload. It also employed EtherHiding: it fetched the real command-and-control (C2) addresses from Solana blockchain memos a clever way to rotate infrastructure without updating the extension (T1102 - Web Service).
Before deploying the full data-stealing payload, the malware checked the system locale. If it matched a Russian region, it would abort a classic sign of Russian-affiliated threat actors avoiding domestic prosecution (T1497 - Virtualization/Sandbox Evasion).
The final GlassWorm payload harvested:
~/.aws, ~/.ssh, npm _authToken, GitHub tokens.This data was exfiltrated over the C2 channel (T1041).
Mapping the Open VSX supply chain attack to the MITRE ATT&CK framework helps us understand the adversary's playbook and build better defenses.
| Tactic | Technique ID | Name | How It Was Used |
|---|---|---|---|
| Initial Access | T1078.004 | Valid Accounts: Cloud Accounts | Compromised Open VSX publisher account |
| Execution | T1204.002 | User Execution: Malicious File | Users installed the trojanized extension |
| Persistence | T1195.002 | Supply Chain Compromise | Malicious updates in trusted extensions |
| Defense Evasion | T1027 | Obfuscated Files or Information | Loader decrypted at runtime |
| Defense Evasion | T1140 | Deobfuscate/Decode Files | Runtime decryption of payload |
| Command and Control | T1102 | Web Service | EtherHiding using Solana memos for C2 |
| Credential Access | T1555.003 | Credentials from Web Browsers | Stealing browser logins and cookies |
| Credential Access | T1552 | Unsecured Credentials | Scraping AWS, SSH, npm, GitHub tokens |
| Collection | T1005 | Data from Local System | Documents from user folders |
| Exfiltration | T1041 | Exfiltration Over C2 Channel | Stolen data sent to attacker server |
| Discovery/Evasion | T1497 | Virtualization/Sandbox Evasion | Locale check to avoid infecting Russian systems |
Open VSX is an open-source registry for VS Code extensions, used by platforms like Eclipse Theia and Gitpod. It's a prime target because compromising it can affect many developer tools downstream.
EtherHiding uses blockchain transactions (like Solana memos) to store encrypted C2 addresses. The malware reads these memos to find where to send stolen data, making the infrastructure dynamic and hard to block.
Yes, similar risks exist. Microsoft enforces more security (like code signing), but supply chain attacks via compromised accounts are always possible. Always verify publisher reputation and use additional tools.
Check your installed extensions against the list of malicious versions: versions 0.5.1 (ssh-tools), 1.6.8 (i18n-tools-plus), 1.0.61 (mind-map), 1.3.4 (scss-to-css). If you have them, assume compromise and rotate all credentials immediately.
GlassWorm is a sophisticated information stealer that targets developer machines. It steals browser credentials, crypto wallets, cloud tokens, and VPN configs, often used for lateral movement into corporate networks.
Stay ahead of threats like this Open VSX supply chain attack by continuously learning and implementing proactive measures.
👉 Bookmark these resources for deeper dives:
© Cyber Pulse Academy. This content is provided for educational purposes only.
Always consult with security professionals for organization-specific guidance.
Every contribution moves us closer to our goal: making world-class cybersecurity education accessible to ALL.
Choose the amount of donation by yourself.