TL;DR: Malicious code was injected into the npm package tensorlake on October 8, 2026, and executed through a preinstall hook to steal AWS, GitHub, Kubernetes, and Vault credentials before exfiltrating them, according to Flatt Security. The case shows how package trust, browser-stored passwords, and token rotation can become one kill chain when software supply chain controls are weak.
Editorial analysis by NHI Mgmt Group, based on content published by Flatt Security: “Software Supply Chain Attack on tensorlake: Overview and Response Guidance”.
Key questions
Q: What breaks when malicious npm packages execute during CI/CD installs?
A: The main failure is that package installation becomes code execution inside a trusted build context.
Q: Why do developer secrets make supply chain incidents much harder to contain?
A: Because developer secrets often act like non-human identities with broad runtime reach.
Q: What are the signs that an npm-based supply chain attack is stealing credentials?
A: Look for unexpected lifecycle script execution, outbound connections after install, reads of local secret files, access to browser profile data, and new use of cloud or GitHub tokens from unusual systems.
Practitioner guidance
- Restrict package install-time script execution Block or review lifecycle scripts such as preinstall in build and workstation environments that can access secrets.
- Separate developer secrets from install paths Keep AWS keys, GitHub tokens, Kubernetes configs, Vault tokens, SSH keys, and browser password stores off hosts that routinely execute third-party code.
- Revoke exposed credentials in a defined sequence Back up affected systems, isolate the host, stop any persistence service, then rotate tokens and keys that may have been accessible during installation.
Bottom line: This incident shows that a malicious package can convert a routine npm install into a multi-identity compromise affecting cloud, source control, and secret-store access.
Explore further
View Full Forum → | NHI Foundation Course → | Our Services → | Read the full analysis →
Install-time execution is the real trust failure: package managers are often treated as distribution channels, but this case shows they are also runtime execution channels. Once preinstall scripts are permitted, the package author can reach whatever secrets the host can read. For identity teams, that means software supply chain policy and secret exposure policy are the same control problem from a governance standpoint.
A few things that frame the scale:
- The blast radius of the Salesloft-Drift OAuth supply chain attack was 10 times greater than earlier incidents in which attackers breached Salesforce directly.
A question worth separating out:
Q: What should teams do when a malicious package has already been installed on developer machines?
A: Isolate affected systems, identify every machine that installed the package, and remove the dependency from build paths and caches. Then hunt for follow on downloads, temporary files, suspicious Python processes, and outbound requests to the attacker infrastructure. Rebuild affected environments from trusted sources, rotate any credentials exposed on those systems, and add detections for the package name and its indicators of compromise.
👉 Read our full editorial: tensorlake npm compromise exposed cloud and GitHub credentials