The Shai-Hulud worm compromised the keyv npm family, spreading to 444 packages with about 2 billion monthly downloads
At a Glance
- Catastrophic failure. Permanent data loss, major security breach, six-figure damages, or legal exposure.
Independent project · aggregated from public reports and may be unverified — see the primary source below · not affiliated with or endorsed by any company or product named.
What Happened
On 4 August 2026 attackers compromised the GitHub account of the keyv maintainer and injected malware into 11 directly affected packages. By 5 August the self-replicating worm had spread to over 444 packages across 1,381 versions with roughly 2 billion combined monthly downloads, including keyv, flat-cache and file-entry-cache. Two injected files ran automatically at install and silently downloaded the Bun JavaScript runtime to execute the payload, which harvested npm tokens, GitHub personal access and OAuth tokens, AWS credentials, Kubernetes secrets and HashiCorp Vault tokens, and ran roughly 200 glob patterns hunting for .env files, private keys and SSH configs. It then used the stolen npm tokens to republish packages and the GitHub tokens to inject hooks into developer repositories, including AI agent configuration files.
Case Analysis
Verified Facts
- The worm spread to over 444 packages across 1,381 versions within about a day
- Install-time scripts downloaded the Bun runtime to execute the credential-stealing payload
- It self-propagated using stolen npm and GitHub tokens to republish packages and inject repo hooks
Not Publicly Confirmed
- How many developers and organizations actually had credentials stolen
Operational Lessons
- Install-time scripts remain the highest-leverage supply chain foothold, so pin lockfiles and disable scripts in CI
- A self-propagating worm re-spreads through the very tokens defenders hold, so rotation must assume prior compromise
Primary Source
Keyv and friends compromised in npm supply chain attack (Aikido Security)aikido.dev ↗Case Record
More Cases
Cursor's command allowlist could be bypassed with shell built-ins, giving prompt injection a silent path to code execution
Pillar Security disclosed CVE-2026-22708 in Cursor. In Auto-Run Mode with an allowlist enabled, shell built-ins such as export, typeset, declare, readonly, unset and local were implicitly trusted by Cursor's server-side evaluator and executed without appearing in the allowlist or requiring approval, because they run inside the shell session rather than as separate binaries. An attacker delivering indirect prompt injection could silently poison environment variables and then trigger malicious code through trusted developer tools, producing both zero-click and one-click remote code execution. Pillar reported it in August 2025, Cursor acknowledged it as a systemic issue in September 2025, and the fix shipped in version 2.3 in January 2026, which now requires explicit approval for any command the parser cannot classify.
Prompt injection reached host-level code execution in Microsoft Semantic Kernel through eval() and a stray annotation
Microsoft disclosed two vulnerabilities that turn prompt injection into host compromise in its Semantic Kernel agent framework, which has over 27,000 GitHub stars. CVE-2026-26030 affects the Python package before 1.39.4: the default in-memory vector store filter is a Python lambda executed with eval() on unsanitized model-controlled input, so an attacker could escape the template string, traverse Python's class hierarchy, bypass the AST blocklist validator and run arbitrary commands, demonstrated by launching calc.exe from a single prompt injection. CVE-2026-25592 affects the .NET SDK before 1.71.0: DownloadFileAsync was accidentally marked with a [KernelFunction] attribute, exposing it to the model with an entirely AI-controlled, unvalidated local file path, allowing writes to locations such as the Windows Startup folder and thus sandbox escape.
SearchLeak let a single click on a malicious link pull emails, files and MFA codes out of Microsoft 365 Copilot
Varonis Threat Labs disclosed CVE-2026-42824, a critical flaw in Microsoft 365 Copilot Enterprise Search. Clicking a single crafted link chained three bugs: injection of the URL parameter into the prompt, a rendering race condition, and abuse of Content Security Policy allowlisting to exfiltrate data through Bing's infrastructure. The attack could reach emails and calendar details, indexed SharePoint and OneDrive files, one-time and MFA codes, password-reset links, meeting notes and salary data. Because Copilot Enterprise is a managed service, tenant admins could not patch it themselves; Microsoft mitigated the flaw on its backend.