Into the Breach: Breaking the Firewall

A New Docuseries
Hosted by Kari Byron

A New Docuseries Hosted by Kari Byron
Premieres on August 8th

Premieres on August 8th

00DAYS
21HOURS
38MINS
12SECS
Learn More

Shai-Hulud Returns: ChainDrop Worm Hits npm, Infecting Hundreds of Packages

The self-propagating worm is back. This time it poisoned keyv, an npm caching library that ships in millions of builds, and it plants a second trigger that fires the next time a developer just opens the project.
By Vinh Lam, Senior Technical Program Manager
Share this Post

On August 4, 2026, an attacker took over the GitHub account of the maintainer behind keyv, a key-value caching library with roughly hundreds of millions weekly npm downloads, and injected a credential-stealing worm across the maintainer's entire package family, including cacheable, flat-cache, file-entry-cache, and cache-manager. Tracked as ChainDrop, it spread to hundreds of additional packages with a combined two billion-plus monthly installs.

What makes it dangerous is not the download count but how the malicious code got trusted. The attacker published through the project's own automated release pipeline, so the poisoned versions carried valid provenance: signed proof that a package was built by the official pipeline from the real source. That proof is meant to be a safety signal. Here it was genuine, because the pipeline itself was compromised. To a developer, or to a security tool checking the signature, the malicious version looked completely authentic.

ChainDrop is the latest wave in a campaign researchers have tracked since September 2025: Shai-Hulud 1.0 (September 2025), 2.0 (November 2025), and Mini Shai-Hulud, Wave Four (May 2026). Each has escalated, with later variants adding more aggressive propagation and broader supply-chain exploits.

What We Know So Far (August 6, 2026)

  • Date: keyv@6.0.0 is the confirmed starting point, published on August 4, 2026.
  • Entry point: The compromise began with a compromised maintainer GitHub account, and the malicious release went through the project’s legitimate publish pipeline.
  • Payload: There is a preinstall path using setup.mjs, which downloads Bun and launches a large obfuscated credential-stealing payload.
  • Attribution: Researchers place it in the Shai-Hulud malware family.

A Trusted System Used Against Itself

What makes ChainDrop especially concerning is that it did not rely on a flashy exploit or a fake download site. Instead, it took advantage of the normal software supply chain — the same package publishing and installation process used by millions of developers.

In practical terms, that means a package can appear legitimate while quietly carrying malicious code that activates during installation. Security teams say the malware was built to steal secrets from developer machines and CI/CD systems, including GitHub tokens, npm credentials, AWS keys, Kubernetes secrets and other access data.

The broader risk is not limited to developers. Any organization that uses affected packages can inherit the compromise indirectly through build systems, dependencies and automated release pipelines.

ChainDrop is a reminder that open-source dependencies are a business risk, not just a developer concern.

A Business Risk, Not Just a Developer One

For any organization that depends on JavaScript and Node.js software, ChainDrop is a reminder that open-source dependencies are a business risk, not just a developer concern.

A compromised package can be inherited indirectly through dependencies and build systems, and it can lead to stolen credentials, unauthorized access to cloud infrastructure, and large-scale secret rotation and incident response. Where software integrity, access control, and third-party risk sit inside your control environment, as they do under PCI DSS, DORA, NIS2, and CMMC, that exposure lands squarely on compliance and governance too.

Finding Your Exposure with an SBOM

The hard part is visibility: poisoned versions sit deep in dependency trees and look authentic. When we scanned the affected packages with SBOM in MetaDefender ™ Software Supply Chain, the compromised versions were flagged rather than trusted on their provenance.

MetaDefender Software Supply Chain™ flags keyv@6.0.0 as Critical (GHSA-3p9h-f68w-m6fx). The last clean version was 5.6.0.
Supply chain visibility: One scan across the keyv family finds 21 Critical vulnerabilities in 23 packages, 10 flagged as risky.
OPSWAT SBOM in MetaDefender Core blocked a package.json that used the compromised packages.

The lesson is that the durable defense against this class of attack is inspecting what a component contains, instead of trusting where it came from.

Key Takeaways

  • Provenance proves origin, not integrity. A valid signature on a compromised pipeline still produces a signed malicious package. Verify contents, not just attestations.
  • Installing is not the only trigger anymore. Repository-level IDE and agent hooks can execute on open. Widen your review beyond npm install.
  • This campaign is ongoing. ChainDrop is the latest wave of a lineage that has escalated since September 2025. Treating any single incident as closed, without addressing the underlying pipeline and credential-hygiene gaps, leaves the door open for the next one.

Protect your supply chain with MetaDefender Software Supply Chain

Stay Up-to-Date With OPSWAT!

Sign up today to receive the latest company updates, stories, event info, and more.