CVE-2026-45321
On 2026-05-11, between approximately 19:20 and 19:26 UTC, 84 malicious versions across 42 @tanstack/* packages were published to the npm registry. The publishes were authenticated via the legitimate GitHub Actions OIDC trusted-publisher binding for TanStack/router, but the publish workflow itself was not modified. The attacker chained three known vulnerability classes — a pull_request_target "Pwn Request" misconfiguration, GitHub Actions cache poisoning across the fork↔base trust boundary, and runtime memory extraction of the OIDC token from the Actions runner process — to publish credential-stealing malware under a trusted identity. Each affected package received exactly two malicious versions, published a few minutes apart.
do firstApply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
Can a WAF block it? No. The attack involves publishing malicious package versions to the npm registry by exploiting vulnerabilities in GitHub Actions workflows and token extraction, which occurs outside of HTTP requests and web interfaces. Therefore, a web application firewall cannot filter or block these attacks based on HTTP traffic.
Also consider: SBOM · artifact signing
Based on an AI reading of the CVE description, and no vendor rule found yet. We check Cloudflare, AWS, Google Cloud Armor and Azure; for Akamai, Imperva, Fastly, F5, ask your vendor.
Is CVE-2026-45321 being exploited?
Yes. CVE-2026-45321 appears in CISA's Known Exploited Vulnerabilities catalog, which means exploitation in the wild has been confirmed and reported. Treat it as active rather than theoretical, and patch it ahead of higher-scoring vulnerabilities that carry no exploitation evidence.
How severe is CVE-2026-45321?
CVE-2026-45321 is rated Critical with a CVSS score of 9.6. Severity describes how bad exploitation would be, not how likely it is: pair it with exploitation evidence before deciding what to patch first.
Is there a patch for CVE-2026-45321?
Yes. A fix has been recorded for CVE-2026-45321. The vendor advisory is the authority on the exact fixed version — apply it from there rather than from a summary.
What does CVE-2026-45321 affect?
CVE-2026-45321 affects tanstack:tanstack\/arktype-adapter, tanstack:tanstack\/eslint-plugin-router, tanstack:tanstack\/eslint-plugin-start, tanstack:tanstack\/history, and 26 further products or versions. Confirm the exact affected versions against the vendor advisory before deciding you are exposed.
Exploitation status reflects CISA's KEV catalog as we last synced it. Check the catalog directly.
- affected1.166.12
- affected1.166.15
- affected1.161.9
- affected1.161.12
- affected0.0.4
- affected0.0.7
- affected1.161.9
- affected1.161.12
- affected1.154.12
- affected1.154.15
- affected1.166.53
- affected1.166.56
- affected1.169.5
- affected1.169.8
- affected1.166.16
- affected1.166.19
- affected1.166.15
- affected1.166.18
- affected1.167.68
- affected1.167.71
- affected1.166.51
- affected1.166.54
- affected0.0.47
- affected0.0.50
- affected1.166.55
- affected1.166.58
- affected1.166.46
- affected1.166.49
- affected1.169.5
- affected1.169.8
- affected1.166.16
- affected1.166.19
- affected1.167.6
- affected1.167.9
- affected1.166.45
- affected1.166.48
- affected1.167.38
- affected1.167.41
- affected1.168.3
- affected1.168.6
- affected1.161.11
- affected1.161.14
- affected1.169.5
- affected1.169.8
- affected1.166.16
- affected1.166.19
- affected1.166.15
- affected1.166.18
- affected1.167.65
- affected1.167.68
- affected1.166.50
- affected1.166.53
- affected1.166.54
- affected1.166.57
- affected1.168.5
- affected1.168.8
- affected1.161.9
- affected1.161.12
- affected1.169.23
- affected1.169.26
- affected1.167.33
- affected1.167.36
- affected1.166.44
- affected1.166.47
- affected1.166.38
- affected1.166.41
- affected1.166.12
- affected1.166.15
- affected1.161.10
- affected1.161.13
- affected1.169.5
- affected1.169.8
- affected1.166.16
- affected1.166.19
- affected1.166.15
- affected1.166.18
- affected1.167.61
- affected1.167.64
- affected1.166.46
- affected1.166.49
- affected1.166.50
- affected1.166.53
- affected1.166.12
- affected1.166.15
As published in the CVE Program record. A version outside these ranges is not a statement that it is unaffected — vendors sometimes understate a range, and distribution-backported builds carry upstream numbers that do not reflect what was patched into them.
public exploits
Unvetted proof-of-concept code on GitHub: 12 GitHub proofs of concept
- Intrudify/mini-shai-hulud-scanner · 3 ★
- fabriziosalmi/tanstack-compromise-checker · 2 ★
- qi-scape/scan-shai-hulud · 1 ★
- shayr1/shai-hulud-scan · 1 ★
Listed so you can judge urgency, not as a recommendation to run anything. GitHub “proofs of concept” are unvetted: some are fake or carry malware. Exploit-DB marks the entries its staff verified.
cisa ssvc
- exploitation
- active
- automatable
- no
- technical impact
- total
Assessed by CISA 27 May 2026 (SSVC 2.0.3).
timeline
- 12 May 2026First proof-of-concept repository on GitHub (unvetted)
- 12 May 2026Published · same day later
- 27 May 2026Added to CISA KEV (exploited in the wild) · 15 days later
- 27 May 2026CISA SSVC assessment: exploitation active · same day later
- 10 Jun 2026CISA remediation due date (US federal agencies) · 14 days later
- 4 Aug 2026CVE record last updated · 55 days later
- 2 Nov 2026Analysed by vulneraibility.com · 91 days (about 3 months) later
also known as
- Linkgithub.com /TanStack/router/security/advisories/GHSA-g7cv-rxg3-hmpx
- Linkgithub.com /TanStack/router/issues/7383
- Linktanstack.com /blog/npm-supply-chain-compromise-postmortem
- Linkstepsecurity.io /blog/mini-shai-hulud-is-back-a-self-spreading-supply-chain-attack-hits-the-npm-
- Linkcisa.gov /known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-45321
sources
- CVE List (CVE.org): description, affected versions, references; CVE Terms of Use
- NVD: CVSS and CPE data
- CISA KEV catalog: exploitation, date added, due date
- CISA Vulnrichment (ADP): SSVC decision points
- FIRST EPSS: exploit probability and percentile
- PoC-in-GitHub: GitHub repositories that claim a proof of concept
- OSV: advisory aliases and downstream package versions
- Summary, impact and triage tags: written by our AI analysis pipeline from the sources above. Check them against the sources.