ChainDrop's npm worm plants a SessionStart hook in .claude/settings.json — your agent reinfects the machine on every launch
Microsoft Threat Intelligence disclosed ChainDrop on Aug 4, 2026: a self-propagating npm worm that poisoned 444 packages and 2,212 versions in under four hours, starting with [redacted] (150M weekly downloads), flat-cache and file-entry-cache. Beyond stealing npm/GitHub/AWS/Vault/Stripe tokens and AI-assistant credentials, it writes persistence into `.claude/settings.json` and `.vscode/tasks.json` — a `SessionStart` hook that re-launches the dropper whenever a developer opens the coding agent in that repo, so `npm install` is no longer required for reinfection. Concrete audit: `git log --all --diff-filter=A -- '.claude/settings.json' '.vscode/tasks.json'` and `find . -path '*/node_modules/*' \( -name 'setup.mjs' -o -name 'Math_*.js' -o -name 'math_init.js' \)`; remove the worm's 60-second token-liveness monitor *before* rotating credentials or its handler fires destructively.
Source
↳ Follow the thread