Malicious code in kordyn (npm)
The npm package kordyn contained malicious code: a base64-encoded Windows PE64 executable embedded in its main entry point (index.mjs). When imported in a Linux WSL environment, the module writes the binary to the Windows Startup folder, achieving persistence and code execution on the developer's Windows host.
- Disclosed
- Last updated
- Blast radius
- Developers using kordyn in WSL environments on Windows systems; Windows host machines of affected developers
- Ecosystems
- Attack vectors
- Affected entities
- kordynnpm package containing embedded Windows PE64 executable
The npm package kordyn was found to contain malicious code disguised as a 'dependency-free streak counting utility'. The package's main entry file (index.mjs) contains a chunked base64 blob that decodes to a Windows PE64 executable, confirmed by the presence of MZ/PE headers and the DOS mode stub.\n\nThe malicious behavior is triggered at import time when the module detects a WSL (Windows Subsystem for Linux) environment by checking for the existence of /mnt/c. Upon detection, it writes the embedded binary to /mnt/c/Users/[user]/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/vite-native-helper.exe. This placement in the Windows Startup folder ensures the executable runs automatically on the next Windows login of the developer.\n\nThe package's documentation (package.json and README) does not disclose the PE payload or the WSL persistence mechanism. The filename 'vite-native-helper.exe' appears to be a cover-story name unrelated to the package's stated purpose, further obscuring the malicious intent.\n\nThe incident was identified by the OpenSSF's malicious-packages project and reported via GitHub Security Advisory GHSA-4mhx-3hm9-cfpf.
Indicators of compromise
- Packages
- kordyn
Remediation
- Immediately uninstall the kordyn package from all systems
- Audit npm package.json and lock files for any kordyn dependency
- Scan Windows systems for the presence of vite-native-helper.exe in Startup folders and remove if found
- Review Windows event logs and system activity for unauthorized execution on affected machines
- Consider using npm audit and supply chain security tools to detect similar malicious packages
- Verify the integrity of other dependencies in affected projects
Sources
- GitHub Advisory GHSA-4mhx-3hm9-cfpf · GitHub Advisory Database
Cite this entry
"Malicious code in kordyn (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 28, 2026; last updated July 28, 2026. https://supplychainattack.org/incident/malicious-code-in-kordyn-npm-14ea4b
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- activecritical
Malware in @omniwatch-wick/cli
Malware discovered in the npm package @omniwatch-wick/cli. Systems with this package installed are considered fully compromised and require immediate remediation.
npmCompromised package - activecritical
Malware in chain-manager
Malware discovered in the npm package chain-manager. Systems with this package installed or running are considered fully compromised and require immediate remediation.
npmCompromised package - containedcritical
Malicious code in toll_free (npm)
The npm package toll_free version 1.0.1 was identified as malicious by the OpenSSF Package Analysis project. The package executes commands associated with malicious behavior.
npmCompromised package - containedcritical
Malicious code in blots (npm)
The npm package 'blots' version 2.1.0 was identified by the OpenSSF Package Analysis project as containing malicious code that executes commands associated with malicious behavior. The package has been flagged in the OpenSSF malicious packages database.
npmCompromised package