Supply Chain Compromise (T1195)
Why hack the target effectively when you can hack the tool they trust?
1. Compromise Software Dependencies
Developers trust npm install and pip install.
- Dependency Confusion:
- Find an internal package name like
company-auth-libinpackage.json. - Register that same name on public NPM with a higher version number.
- The build server pulls the public (malicious) version instead of the internal one.
- Find an internal package name like
2. Compromise Development Tools
- IDE Extensions: Malicious VSCode extensions that steal environment variables (AWS Keys).
- CI/CD Pipelines: Compromising a GitHub Action to inject code into every build.
3. Hardware Supply Chain
- Interdiction: Intercepting a router shipment to implant firmware (NSA-style). Rare for red teams, but physically possible.