Poisoned Pipeline / Techniques / T0169
Push implants across repositories
The Push Implants across Repositories attack technique is a type of lateral movement tactic where an attacker gains access to a victim's code repository, modifies the code by implanting malicious code or backdoors, and pushes the modified code back to the repository.
This technique often involves the attacker stealing valid credentials, such as login credentials or SSH keys, to gain access to the victim's code repository.
They then modify the code, implanting the malicious code or backdoors, and push the modified code back to the repository.
The victim then unknowingly deploys the modified code, resulting in the compromise of their systems.
Where this idea came from
Identified in published CI/CD or supply-chain security research cited below. DEF CON 31: GitHub Actions Worm spreads through the Actions dependency tree.
- https://owasp.org/www-project-top-10-ci-cd-security-risks/CICD-SEC-01-Insufficient-Flow-Control-Mechanisms
- https://news-web.php.net/php.internals/113981
- https://brew.sh/2021/04/21/security-incident-disclosure/
- https://www.cidersecurity.io/blog/research/bypassing-required-reviews-using-github-actions/
- https://defcon.org/html/defcon-31/dc-31-speakers.html#Greenholts
Mitigations
- M1661 Revoke user permissions
- M1730 Implement code reviews
Detections
- D1261 Implement penetration testing
- D1262 Implement vulnerability assessment
- D1510 Implement Intrusion Detection System and anti-malware
- D1590 Implement continuous monitoring and logging of the CI/CD process
Observed in incidents (18)
- Stolen GitHub tokens planted a secret-dumping workflow in 850+ accounts and pulled the logs back through the API
- tensorlake 0.5.144 steals tokens, then wipes the home directory if they are revoked
- PolinRider poisons visanduma/nova-two-factor Packagist via Git
- actions-cool GitHub Action tags still serve Mini Shai-Hulud after re-enablement
- pub.dev universal_file_viewer ships XCSSET (infected maintainer)
- @joyfill/components and @joyfill/layouts obfuscated RAT
- GhostAction steals CI secrets, then autoruns a stealer from a fake font
- Hijacked AI coding assistant spreads Shai-Hulud
- GlassWorm across GitHub, npm, Open VSX, VS Code, Python
- Intercom npm and Packagist Mini Shai-Hulud
- testmetest npm names ship a Miasma-family worm that wipes the home directory if a stolen GitHub token is revoked
- Shai-Hulud first wave (@ctrl/tinycolor)
- IndonesianFoods npm worm (86k+ packages)
- TanStack Mini Shai-Hulud (CVE-2026-45321)
- Neutralinojs org force-push (DPRK / PolinRider)
- DirtyBlanket fake Express/React packages spread a self-propagating Linux worm
- @fairwords credential worm
- Sha1-Hulud: The Second Coming