Skip to content
vulnerability

CVE-2026-45321

9.6
Critical
KEV · Exploited in wildEPSS 3%Patch available

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.

exploited
Yes, in CISA KEV since 27 May 2026fix by 10 Jun 2026 (CISA deadline for US federal agencies)known use in ransomware campaignsunvetted proof-of-concept code on github
fix
Patch available see the advisory in the references
likelihood
EPSS 3.3%
Published 12 May 2026Analysed here 2 Nov 2026CVSS scored by the publisher (CNA)

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.

triage
supply chainruntime + configWAF can block: noAV · networkCWE-506· Embedded Malicious Code

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.

cvss vector
attack vectornetworkattack complexitylowprivileges requirednoneuser interactionrequiredscopechangedconfidentialityhighintegrityhighavailabilityhigh
CVSS 3.1 · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
common questions

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.

executive summary
technical analysis
affected
tanstack:tanstack\/arktype-adaptertanstack:tanstack\/eslint-plugin-routertanstack:tanstack\/eslint-plugin-starttanstack:tanstack\/historytanstack:tanstack\/nitro-v2-vite-plugintanstack:tanstack\/react-routertanstack:tanstack\/react-router-devtoolstanstack:tanstack\/react-router-ssr-querytanstack:tanstack\/react-starttanstack:tanstack\/react-start-clienttanstack:tanstack\/react-start-rsctanstack:tanstack\/react-start-servertanstack:tanstack\/router-clitanstack:tanstack\/router-coretanstack:tanstack\/router-devtoolstanstack:tanstack\/router-devtools-coretanstack:tanstack\/router-generatortanstack:tanstack\/router-plugintanstack:tanstack\/router-ssr-query-coretanstack:tanstack\/router-utilstanstack:tanstack\/router-vite-plugintanstack:tanstack\/solid-routertanstack:tanstack\/solid-router-devtoolstanstack:tanstack\/solid-router-ssr-querytanstack:tanstack\/solid-starttanstack:tanstack\/solid-start-clienttanstack:tanstack\/solid-start-servertanstack:tanstack\/start-client-coretanstack:tanstack\/start-fn-stubstanstack:tanstack\/start-plugin-core
affected versions
@tanstack arktype-adapter
  • affected1.166.12
  • affected1.166.15
@tanstack eslint-plugin-router
  • affected1.161.9
  • affected1.161.12
@tanstack eslint-plugin-start
  • affected0.0.4
  • affected0.0.7
@tanstack history
  • affected1.161.9
  • affected1.161.12
@tanstack nitro-v2-vite-plugin
  • affected1.154.12
  • affected1.154.15
@tanstack outer-vite-plugin
  • affected1.166.53
  • affected1.166.56
@tanstack react-router
  • affected1.169.5
  • affected1.169.8
@tanstack react-router-devtools
  • affected1.166.16
  • affected1.166.19
@tanstack react-router-ssr-query
  • affected1.166.15
  • affected1.166.18
@tanstack react-start
  • affected1.167.68
  • affected1.167.71
@tanstack react-start-client
  • affected1.166.51
  • affected1.166.54
@tanstack react-start-rsc
  • affected0.0.47
  • affected0.0.50
@tanstack react-start-server
  • affected1.166.55
  • affected1.166.58
@tanstack router-cli
  • affected1.166.46
  • affected1.166.49
@tanstack router-core
  • affected1.169.5
  • affected1.169.8
@tanstack router-devtools
  • affected1.166.16
  • affected1.166.19
@tanstack router-devtools-core
  • affected1.167.6
  • affected1.167.9
@tanstack router-generator
  • affected1.166.45
  • affected1.166.48
@tanstack router-plugin
  • affected1.167.38
  • affected1.167.41
@tanstack router-ssr-query-core
  • affected1.168.3
  • affected1.168.6
@tanstack router-utils
  • affected1.161.11
  • affected1.161.14
@tanstack solid-router
  • affected1.169.5
  • affected1.169.8
@tanstack solid-router-devtools
  • affected1.166.16
  • affected1.166.19
@tanstack solid-router-ssr-query
  • affected1.166.15
  • affected1.166.18
@tanstack solid-start
  • affected1.167.65
  • affected1.167.68
@tanstack solid-start-client
  • affected1.166.50
  • affected1.166.53
@tanstack solid-start-server
  • affected1.166.54
  • affected1.166.57
@tanstack start-client-core
  • affected1.168.5
  • affected1.168.8
@tanstack start-fn-stubs
  • affected1.161.9
  • affected1.161.12
@tanstack start-plugin-core
  • affected1.169.23
  • affected1.169.26
@tanstack start-server-core
  • affected1.167.33
  • affected1.167.36
@tanstack start-static-server-functions
  • affected1.166.44
  • affected1.166.47
@tanstack start-storage-context
  • affected1.166.38
  • affected1.166.41
@tanstack valibot-adapter
  • affected1.166.12
  • affected1.166.15
@tanstack virtual-file-routes
  • affected1.161.10
  • affected1.161.13
@tanstack vue-router
  • affected1.169.5
  • affected1.169.8
@tanstack vue-router-devtools
  • affected1.166.16
  • affected1.166.19
@tanstack vue-router-ssr-query
  • affected1.166.15
  • affected1.166.18
@tanstack vue-start
  • affected1.167.61
  • affected1.167.64
@tanstack vue-start-client
  • affected1.166.46
  • affected1.166.49
@tanstack vue-start-server
  • affected1.166.50
  • affected1.166.53
@tanstack zod-adapter
  • 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

GitHub proofs of concept
+8 more repositories

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

  1. 12 May 2026First proof-of-concept repository on GitHub (unvetted)
  2. 12 May 2026Published · same day later
  3. 27 May 2026Added to CISA KEV (exploited in the wild) · 15 days later
  4. 27 May 2026CISA SSVC assessment: exploitation active · same day later
  5. 10 Jun 2026CISA remediation due date (US federal agencies) · 14 days later
  6. 4 Aug 2026CVE record last updated · 55 days later
  7. 2 Nov 2026Analysed by vulneraibility.com · 91 days (about 3 months) later

also known as

how to fix
Remediation steps are tailored for users whose stack is affected. Add this technology to your stack to see the fix checklist.
references
5 references in the CVE record: 5 links
  • 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.
get alerted

Track only the vulnerabilities that affect your infrastructure.

start for free

© 2026 vulneraibility.com, all rights reserved