Poisoned Pipeline / Techniques / T0151
Installation scripts
A package installation script injection attack is a type of security exploit that involves an attacker injecting malicious code into a legitimate software package installation script.
The attack typically occurs when an attacker gains access to the distribution network of a software vendor or package manager, and injects malicious code into the package installation script.
This code may be designed to carry out a range of nefarious activities, such as stealing sensitive information, creating backdoors, or executing arbitrary code on the victim's system.
Once the victim downloads and installs the compromised software package, the injected code is executed, giving the attacker access to the victim's system.
Where this idea came from
Identified in published CI/CD or supply-chain security research cited below.
- https://www.fortinet.com/blog/threat-research/more-supply-chain-attacks-via-new-malicious-python-packages-in-pypi
- https://medium.com/checkmarx-security/the-skeleton-squad-tracing-the-origins-and-scope-of-5000-malicious-packages-on-pypi-7516c16e4da9
- https://medium.com/checkmarx-security/automatic-execution-of-code-upon-package-download-on-python-package-manager-cd6ed9e366a8
Mitigations
- M1500 Verify third-party artifacts and open-source libraries
- M1502 Define trusted package managers and repositories
- M1503 Implement SCA analysis
Detections
- D1510 Implement Intrusion Detection System and anti-malware
Observed in incidents (44)
- got-fetch 5.1.11/5.1.12 Pycoon stealer
- Forged and timestamp-cloned commits planted a preinstall dropper in hugo-paper and mevn-cli
- DarkGPT / Codo-AI / bitcoin-auto-trading VS Code extensions
- noon-contracts Noon Protocol SDK RAT
- tensorlake 0.5.144 steals tokens, then wipes the home directory if they are revoked
- npm bin-entry harvesting against Google CLIs
- @subql/common 5.8.3 published after a CI artifact swap
- XPACK npm install-time crypto extortion (HTTP 402)
- Moika npm dependency-confusion (Sberbank / EMCD impersonation)
- Polymarket fake-bot and wallet-key npm campaign
- wshu.net 15-package multi-stage infostealer
- Hijacked AI coding assistant spreads Shai-Hulud
- jscrambler@8.14.0 preinstall native binaries
- Typosquat npm packages backdoor Claude Code SessionStart
- @copilot-mcp/apex macOS infostealer republish
- StegaBin 26 packages Pastebin steganography stealer
- PyTorch-nightly torchtriton dependency confusion
- Nx s1ngularity (stolen npm token via Actions injection)
- Keyv / Cacheable ChainDrop worm
- PhantomRaven hidden HTTP npm dependencies
- @7nohe/openapi-react-query-codegen poisoned publish workflow
- marchos1as typosquatted yay on the AUR and ran a root install scriptlet
- @mastra scope poisoned via typosquat easy-day-js
- Seven fake NebulaAI npm packages drop a Windows KNTRAT at install
- StubMaker RubyGems (and npm) Windows infostealer
- Deep-Live-Cam malicious git dependency
- eslint-scope and eslint-config-eslint malicious publishes
- forge-jsx / forge-jsxy Autodesk-themed npm RAT
- axios npm remote-access trojan
- Contagious Interview stage-2 in Git pre-commit / post-checkout hooks
- Forty-two RubyGems from reqthrottle_3474 run a reverse shell or a crypto stealer at install
- MALFEX npm campaign, including a native imgdecode loader with no install script
- Typosquatted AI-tool npm packages under a real-identity publisher
- npm-global-util preinstall credential theft
- TanStack Mini Shai-Hulud (CVE-2026-45321)
- ua-parser-js npm account takeover
- DirtyBlanket fake Express/React packages spread a self-propagating Linux worm
- Claude eval agent published a malicious package to live PyPI
- Trojanized fork martinez-polygon-clipping-tony
- BRIDGEHEAD npm typosquats jump WSL to a Windows wallet stealer
- eslint-config-prettier phishing (npnjs.com) and node-gyp.dll
- ProcWire Windows binary split across five npm packages
- Hyatt internal-dependency impersonation on npm
- Sha1-Hulud: The Second Coming
References
- https://www.fortinet.com/blog/threat-research/more-supply-chain-attacks-via-new-malicious-python-packages-in-pypi
- https://medium.com/checkmarx-security/the-skeleton-squad-tracing-the-origins-and-scope-of-5000-malicious-packages-on-pypi-7516c16e4da9
- https://medium.com/checkmarx-security/automatic-execution-of-code-upon-package-download-on-python-package-manager-cd6ed9e366a8