Malicious code in commandor-core (npm)
commandor-core@1.0.0 on npm contained malicious code in its postinstall script that downloads and executes a Windows binary (main.exe) from a typosquatted domain and beacons host information to a hardcoded IP address.
- Disclosed
- Last updated
- Blast radius
- Any developer or system that installed commandor-core@1.0.0 via npm, particularly on Windows or WSL systems.
- Ecosystems
- Attack vectors
- Affected entities
- commandor-core · 1.0.0
The npm package commandor-core version 1.0.0 contained malicious code embedded in its postinstall script (scripts/postinstall.js). The script uses XOR obfuscation with the key 'stf2026' to decode byte arrays that reveal a download URL pointing to giphub.com (a typosquat of github.com).\n\nOn Windows systems, the postinstall script fetches main.exe from https://giphub.com/bebraz1/PzM50V1AKG0rVlH/releases/download/null/main.exe into the %TEMP% directory and executes it. On WSL systems, it decodes and invokes a PowerShell bridge command to execute the fetched binary on the Windows host.\n\nAdditionally, the postinstall script unconditionally sends a POST request containing host platform information to http://193.70.34.101:20099/vote over plain HTTP. The IP address is obfuscated as a four-element array to evade literal-IP detection.\n\nThe package's main entry point (index.js) is empty, providing no legitimate library functionality. The sole purpose of installing commandor-core is to beacon the host and drop a malicious Windows executable. The incident was identified and credited to the OpenSSF malicious-packages repository.
Indicators of compromise
- Packages
- commandor-core@1.0.0
- Domains
- giphub.com
- IPs
- 193.70.34.101
Remediation
- Immediately uninstall commandor-core from all systems: npm uninstall commandor-core
- Audit npm install logs and package-lock.json to identify all systems that installed commandor-core@1.0.0
- On affected Windows and WSL systems, check %TEMP% for main.exe and any suspicious executables; remove if found
- Review system logs and network traffic for connections to 193.70.34.101:20099 and giphub.com to identify potential compromise
- Scan affected systems with antimalware tools for the downloaded main.exe and any persistence mechanisms
- Reset credentials and review account activity on systems that installed the malicious package
- Add commandor-core to npm blocklists and monitor for similar typosquatting attempts
Sources
- GitHub Advisory GHSA-66wr-75vg-r74w · GitHub Advisory Database
Cite this entry
"Malicious code in commandor-core (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 19, 2026; last updated August 19, 2026. https://supplychainattack.org/incident/malicious-code-in-commandor-core-npm-1no1v1
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- resolvedcritical
Malicious code in rust-testing-utils (npm)
The npm package rust-testing-utils contained malicious code that impersonates the pino logger and executes remotely-fetched code with arbitrary privileges. The package spawns a child process that decodes a hardcoded URL, fetches attacker-controlled content, and executes it via Function constructor with full module-loading capability.
npmCompromised packageMalicious commit - resolvedcritical
Malicious code in @syncraft-labs/core (npm)
The npm package @syncraft-labs/core contained obfuscated malicious code in its ESM build that executes on import, fetching and executing attacker-controlled payloads from Ethereum blockchain via JSON-RPC endpoints. The CommonJS build was clean, indicating targeted injection into the ESM entry point.
npmCompromised packageMalicious commit - resolvedcritical
Malicious code in localize-translate (npm)
The npm package localize-translate contained malicious code in its postinstall lifecycle script that collected host identifiers and beaconed them to an attacker-controlled endpoint (gigww0v7.instances.poc.jchunt.top) without user consent. The reconnaissance callback fired automatically on every installation, collecting hostname, platform, architecture, Node version, package name, and timestamp.
npmCompromised packageMalicious commit - containedcritical
Malicious code in mutex-plus (npm)
The npm package mutex-plus contains hidden malicious code that enables remote code execution when a callback object with a specific jobId hash is passed to runExclusive(). The payload is encrypted at rest in lib/plusMutex.min.js and decrypted using the jobId as a key, then executed as a detached Node.js process.
npmCompromised packageMalicious commit