Keyv and friends compromised in active Shai-Hulud supply chain attack

Keyv and friends compromised in active Shai-Hulud supply chain attack

On August 4, 2026, attackers hijacked the GitHub account of the maintainer behind keyv, a key-value storage library with ~127M weekly npm downloads, and injected credential-stealing malware across the entire package family, including cacheable, flat-cache, and file-entry-cache. The malicious files were pushed directly to the main branch and released with valid provenance. At least 868 packages (1,381 versions) were compromised, totaling over 2 billion monthly installs. The malware steals npm tokens, GitHub CLI tokens, AWS keys, and Vault tokens, and spreads worm-like to other packages.

At least 868 packages (across 1381 versions) have been compromised by the worm, with a combined total of over 2 billion monthly installs at the time of writing.
  1. atechboy

    what commercial tools are enterprises using today to defend against such attacks? Do they really work? I mean, do they report/block malware after the fact or detect proactively. Because if the latter then, package registries should really be removing reported packages, right?

  2. xnorswap

    At this point, any package adding a pre-install hook where there previously was not one should be denied and treated with extreme suspicion.

    It's time pre-install / post-install hooks were killed off. Start with a moratorium on any new ones.

  3. ChrisMarshallNY

    OW. That's gonna leave a mark.

    It sucks that we have this glass-jaw dependency system, which is really the main reason these supply chain attacks work.

    Really hard to clean up, too. These days, you (being the blackhat) would likely send agents to leverage every compromised repo/app/Web site, almost the instant it comes online, so even if the original mess is cleaned up, there's still a ton of knock-on compromises.

  4. jesse_dot_id

    echo "min-release-age=5" >> ~/.npmrc

    This should be your default minimum if you work with node.

  5. freakynit

    Updated my docs covering these attacks since 2025:

    1. NPM Supply Chain Attack Techniques: https://npm-supply-chain-attack-techniques.pagey.site/

    2. NPM Ecosystem Threat Report: https://npm-supply-chain-attacks-25-26.pagey.site/

  6. mittermayr

    Does anyone happen to have a grep or similar that helps me check if this is showing up anywhere in the trillions of files in node_modules (or pnpm store)?

  7. evertheylen

    Once again, I ask myself: should we start "shaming" developers who don't use isolation? It still seems I am the exception and most people run their dev environment with full permissions. Why?

    I also wrote an article (https://evertheylen.eu/p/shame-devs-without-isolation/) to flesh out my thoughts, but I'd be really happy to discuss this in the comments.

  8. avaer

    I am kind of surprised GitHub doesn't seem to have built a simple classifier for public repos to proactively lock the account of anyone uploading such obviously fishy things (for their own good, at least before the repo is publicly findable), so it can't be used as a rendezvous.

    Surely Github's software is good enough that an intern can slop the 80/20 together in a day? It would be an actually good use of AI spending.

More from this day

2026-08-04