Keyv Maintainer Recounts ChainDrop Attack and Security Overhaul

· Original article ↗

Summary

Keyv maintainer Jared Wray recounts how attackers used an old GitHub token on his compromised desktop to publish malware that spread to 444 npm packages, and describes his account recovery and security changes.

Key points

  • Wray said his desktop was compromised, but the initial access method remained unknown; attackers used an old, broadly privileged GitHub token stored there to publish through GitHub without accessing his npm account.
  • Trojanized Keyv and Cacheable releases spread a worm to 444 npm packages; the worm code was based on TeamPCP’s Mini Shai-Hulud.
  • npm took down the malware and removed publishing access, but malicious branches remained in Wray’s repositories after GitHub restored them. He disabled publishing and cleaned the repositories in an isolated environment.
  • Wray described adopting isolated environments for pull requests and a defense-in-depth process to check and enforce repository security settings.
  • His security bot checks sources for relevant issues, assesses whether his repositories are affected, and can open a pull request for review.
  • His dependency-vetting process considers publishing frequency, OIDC use, dependency counts, contributor activity, pull request engagement, and whether a package is listed in OpenSourceMalware.
  • Wray said code signing, branch rulesets, scanning, and release gating took substantial effort to configure; he still cannot reliably sign commits made by agents.

Article Details

Topic
Open-source supply-chain attack recovery and defense-in-depth practices for package maintainers

MITRE ATT&CK

People

Malware

Vendors

Products

Tools

Related Articles