Malicious VS Code Extensions Hide Malware in PNG Files | eSecurity Planet

Malicious VS Code Extensions Hide Malware in PNG Files

Malicious VS Code extensions hid malware in PNG files, compromising developer environments and supply chains.

Written By
Ken Underhill
Ken Underhill
Dec 12, 2025
3 minute read
eSecurity Planet content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More

Researchers found a software supply chain attack has infiltrated the Visual Studio Code (VS Code) Marketplace through nineteen malicious extensions that have been active since February 2025. 

The extensions — some impersonating legitimate packages — hid executable malware inside what appeared to be harmless PNG image files. 

The threat actor is “ …turning a popular and otherwise safe package into a ticking timebomb ready to detonate as soon as one of the malicious extensions is used,” said Reversing Labs researchers.

Developer Environments Under Attack

The campaign represents a serious escalation in threats targeting developer environments, which are often an entry point to broader software supply chains. 

According to ReversingLabs, malware detections involving VS Code extensions nearly quadrupled in 2025, rising from 27 cases in 2024 to 105 in the first ten months of 2025. 

Because developers commonly trust Marketplace extensions and install them without manual inspection, compromised packages can easily bypass security controls and reach production systems through contaminated code or stolen credentials.

Malware Hidden Inside VS Code Extensions

The attack hinges on tampering with the structure of VS Code extensions, which bundle all their dependencies — including npm packages — inside local node_modules folders. 

ReversingLabs found that the threat actors modified the widely used path-is-absolute package, which has received more than 9 billion downloads since 2021. 

The attackers added malicious logic to the package’s index.js file, causing it to execute automatically when VS Code starts.

Once triggered, the modified package decodes a JavaScript dropper embedded inside a malicious banner.png file. 

The dropper was hidden using layered obfuscation techniques such as base64 encoding and string reversal, making manual inspection extremely difficult. 

When executed, the dropper deployed two binaries using cmstp.exe, a legitimate Windows tool frequently abused for code execution.

One binary managed attacker control, while the second — written in Rust — contained more advanced capabilities. 

Four additional extensions used alternate concealment methods, storing their binaries in .ts and .map files rather than PNG images, suggesting iterative experimentation by the threat actors.

Advertisement

How Malicious Extensions Bypass Trust

The root of the issue stems from how VS Code extensions are packaged and trusted. 

Because extensions bundle their dependencies locally and execute them without requiring additional downloads, tampered components can run seamlessly inside extensions that appear legitimate. 

The malicious code launches automatically at startup with no user interaction, bypassing installation warnings, antivirus tools, and Marketplace verification. 

This mix of easy exploitation, low detection, and persistence makes it a serious supply chain threat, enabling code tampering, credential theft, CI/CD access, and downstream customer compromise. 

Reducing Risk in Developer Workflows

Developer tooling has become an attractive target for attackers looking to quietly compromise software supply chains. 

Malicious extensions can blend into trusted workflows, execute automatically, and evade many traditional security controls. 

Defending against these threats requires treating developer environments as high-risk assets, not just productivity tools. 

  • Audit and reduce installed VS Code extensions by verifying authorship, version history, and removing untrusted or unused plugins.
  • Enforce extension allowlists and internal vetting by mirroring marketplaces or approving extensions before deployment.
  • Scan extensions and bundled dependencies using static and dynamic analysis prior to installation.
  • Restrict execution and network behavior of developer tools through endpoint controls, application allowlists, and egress filtering.
  • Monitor developer endpoints for suspicious IDE behavior, including unexpected processes, image decoding activity, or persistence attempts.
  • Isolate developer environments and rotate credentials to limit blast radius if an extension is compromised.
  • Harden CI/CD pipelines with code integrity checks, least-privilege access, and continuous monitoring for misuse.

Collectively, these steps reduce extension risk without disrupting developer productivity.

Advertisement

Software Supply Chains Under Attack

This campaign reflects a broader shift toward targeting developer ecosystems and software supply chains, where trust is implicit and compromise scales quickly. 

By tampering with widely used dependencies such as path-is-absolute, attackers gain efficient access to organizations that depend on VS Code as a core part of daily development workflows.

As attackers abuse trusted dependencies at scale, software supply chain security becomes an essential part of your defense.

Ken Underhill

Ken Underhill is an award-winning cybersecurity professional, bestselling author, and seasoned IT professional. He holds a graduate degree in cybersecurity and information assurance from Western Governors University and brings years of hands-on experience to the field.

eSecurity Planet Logo

eSecurity Planet is a leading resource for IT professionals at large enterprises who are actively researching cybersecurity vendors and latest trends. eSecurity Planet focuses on providing instruction for how to approach common security challenges, as well as informational deep-dives about advanced cybersecurity topics.

Property of TechnologyAdvice. © 2026 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.