Malicious code in @lilsccott6x9/devpipe-connector (npm)
The npm package @lilsccott6x9/devpipe-connector contained malicious code in its postinstall lifecycle hook that executed base64-encoded shell commands via child_process.execSync, achieving arbitrary code execution on both Windows and Unix systems at install time.
- Disclosed
- Last updated
- Blast radius
- All npm users who installed @lilsccott6x9/devpipe-connector during the malicious period; arbitrary code execution on both Windows and Unix systems at install time.
- Ecosystems
- Attack vectors
- Affected entities
- @lilsccott6x9/devpipe-connectornpm package with malicious postinstall hook
The npm package @lilsccott6x9/devpipe-connector was found to contain malicious code in its postinstall lifecycle script (scripts/setup.js). The package.json declared a postinstall hook that executed arbitrary shell commands.\n\nThe setup.js script stored base64-encoded shell command payloads in an object, with separate payloads for Windows (_m.w) and POSIX systems (_m.p). At runtime, these payloads were decoded using Buffer.from(s,'base64').toString('utf8') and executed via child_process.execSync, with branching logic based on os.platform() to dispatch to 'cmd.exe' on Windows or the default shell on Unix.\n\nThe decoded commands wrote a 'WebMCP-RCE-CANARY' / pwned.txt file to the installer's Desktop, demonstrating proof of arbitrary command execution on both Windows and Unix hosts at every npm install. The obfuscation of shell strings as base64 in a lifecycle script has no legitimate purpose in a package presenting itself as a CI/CD connector SDK; the mechanism is a general-purpose install-time RCE primitive.\n\nThe incident was identified by the OpenSSF malicious-packages project and credited to Amazon Inspector.
Indicators of compromise
- Packages
- @lilsccott6x9/devpipe-connector
Remediation
- Immediately uninstall @lilsccott6x9/devpipe-connector from all systems
- Audit npm install logs and package-lock.json to identify when the malicious package was installed
- Review system logs and file system changes on affected machines for signs of unauthorized activity
- Consider the system compromised if the package was installed; perform forensic analysis and remediation
- Update npm and use npm audit to check for other malicious packages
- Use npm package signing and verification tools to validate package integrity in the future
Sources
- GitHub Advisory GHSA-98w6-6qqf-q39g · GitHub Advisory Database
Cite this entry
"Malicious code in @lilsccott6x9/devpipe-connector (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 19, 2026; last updated August 19, 2026. https://supplychainattack.org/incident/malicious-code-in-lilsccott6x9-devpipe-connector-npm-cv76v9
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- containedcritical
Malicious code in 3-buildsight-web (npm)
The npm package 3-buildsight-web contains malicious code that fetches and executes arbitrary JavaScript from a remote Bitbucket URL on module load, granting full page privileges to an unverified third party.
npmCompromised package - resolvedcritical
Malicious code in @usaa-grp-personal-profile/personal-profile-common (npm)
Malicious package @usaa-grp-personal-profile/personal-profile-common version 999.0.0 published to public npm as a dependency-confusion attack targeting an organization's internal registry. The package contains preinstall and postinstall hooks that exfiltrate hostname, username, and working directory to an attacker-controlled OAST endpoint on every install.
npmDependency confusionCompromised package - resolvedcritical
Malicious code in create-coin (npm)
create-coin@20.1.1 on npm contained malicious postinstall code that collected sensitive environment variables, credentials, and host reconnaissance data. The package impersonated an esbuild platform build and exfiltrated data to a hardcoded endpoint.
npmCompromised packageTyposquatting - resolvedcritical
Malicious code in @syncraft-labs/vue (npm)
The npm package @syncraft-labs/vue version 0.4.1 contained malicious obfuscated code in its ESM build that implements a blockchain-hosted C2 dropper (EtherHiding pattern), enabling remote code execution on any consumer importing the package.
npmCompromised package