GHSA-g7cv-rxg3-hmpx · 深刻度: critical · エコシステム: npm — Malware in @tanstack/* packages exfiltrates cloud credentials, GitHub tokens, and SSH keys
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.
総合評価: CVE-2026-45321 は在野悪用が確認された重大脅威(85/100)。CVSS 深刻度は重大。悪用される可能性が高い(EPSS 1.60%、73 パーセンタイル) 根拠: CISA KEV に登録(追加日 2026-05-27)。TanStack / TanStack が対象で、弱点分類 CWE-506の悪用が確認されています。未認証でリモート管理権限を奪取されるリスクが極めて高い。 推奨対応: CISA の対応期限を過ぎています。緊急のパッチ適用を最優先に検討してください。
リスクは変動します。再評価に基づき、本ページの表示内容を更新しています。
: TanStack Unspecified Vulnerability · CISA KEV の詳細
: 2026-05-27
: 2026-06-10
: Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
| EDB-ID | ソース | 種別 | 公開 | リンク |
|---|---|---|---|---|
| — | nvd_ref | exploit_tag | Exploit-DB ↗ | |
| — | nvd_ref | exploit_tag | Exploit-DB ↗ |
EPSS は日次で悪用されやすさの相対度合いを推定します。パーセンタイルは採点済み CVE の中での相対位置(高いほど相対的に深刻)を示します。
| # | 日付 | 旧 EPSS スコア | 新 EPSS スコア | Δ(新 − 旧) |
|---|---|---|---|---|
| 1 | 2026-06-15 | 18.23% | 1.60% | -16.63% |
| 2 | 2026-06-13 | 17.05% | 18.23% | +1.18% |
| 3 | 2026-05-30 | — | 17.05% | — |
EPSS の全履歴 (全 5 件)
この CVE の CVSS 指標。
| ベーススコア | バージョン | 深刻度 | ベクトル | 悪用しやすさ | 影響 | スコアの出典 |
|---|---|---|---|---|---|---|
| 9.6 | 3.1 | CRITICAL |
|
2.8 | 6.0 | [email protected] |
GHSA-g7cv-rxg3-hmpx · 深刻度: critical · エコシステム: npm — Malware in @tanstack/* packages exfiltrates cloud credentials, GitHub tokens, and SSH keys
| ベンダー | 製品 | バージョン | 生の CPE |
|---|---|---|---|
| tanstack | tanstack\/arktype-adapter | 1.166.12 | cpe:2.3:a:tanstack:tanstack\/arktype-adapter:1.166.12:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/arktype-adapter | 1.166.15 | cpe:2.3:a:tanstack:tanstack\/arktype-adapter:1.166.15:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/eslint-plugin-router | 1.161.9 | cpe:2.3:a:tanstack:tanstack\/eslint-plugin-router:1.161.9:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/eslint-plugin-router | 1.161.12 | cpe:2.3:a:tanstack:tanstack\/eslint-plugin-router:1.161.12:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/eslint-plugin-start | 0.0.4 | cpe:2.3:a:tanstack:tanstack\/eslint-plugin-start:0.0.4:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/eslint-plugin-start | 0.0.7 | cpe:2.3:a:tanstack:tanstack\/eslint-plugin-start:0.0.7:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/history | 1.161.9 | cpe:2.3:a:tanstack:tanstack\/history:1.161.9:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/history | 1.161.12 | cpe:2.3:a:tanstack:tanstack\/history:1.161.12:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/nitro-v2-vite-plugin | 1.154.12 | cpe:2.3:a:tanstack:tanstack\/nitro-v2-vite-plugin:1.154.12:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/nitro-v2-vite-plugin | 1.154.15 | cpe:2.3:a:tanstack:tanstack\/nitro-v2-vite-plugin:1.154.15:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-router | 1.169.5 | cpe:2.3:a:tanstack:tanstack\/react-router:1.169.5:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-router | 1.169.8 | cpe:2.3:a:tanstack:tanstack\/react-router:1.169.8:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-router-devtools | 1.166.16 | cpe:2.3:a:tanstack:tanstack\/react-router-devtools:1.166.16:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-router-devtools | 1.166.19 | cpe:2.3:a:tanstack:tanstack\/react-router-devtools:1.166.19:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-router-ssr-query | 1.166.15 | cpe:2.3:a:tanstack:tanstack\/react-router-ssr-query:1.166.15:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-router-ssr-query | 1.166.18 | cpe:2.3:a:tanstack:tanstack\/react-router-ssr-query:1.166.18:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start | 1.167.68 | cpe:2.3:a:tanstack:tanstack\/react-start:1.167.68:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start | 1.167.71 | cpe:2.3:a:tanstack:tanstack\/react-start:1.167.71:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start-client | 1.166.51 | cpe:2.3:a:tanstack:tanstack\/react-start-client:1.166.51:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start-client | 1.166.54 | cpe:2.3:a:tanstack:tanstack\/react-start-client:1.166.54:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start-rsc | 0.0.47 | cpe:2.3:a:tanstack:tanstack\/react-start-rsc:0.0.47:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start-rsc | 0.0.50 | cpe:2.3:a:tanstack:tanstack\/react-start-rsc:0.0.50:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start-server | 1.166.55 | cpe:2.3:a:tanstack:tanstack\/react-start-server:1.166.55:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/react-start-server | 1.166.58 | cpe:2.3:a:tanstack:tanstack\/react-start-server:1.166.58:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-cli | 1.166.46 | cpe:2.3:a:tanstack:tanstack\/router-cli:1.166.46:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-cli | 1.166.49 | cpe:2.3:a:tanstack:tanstack\/router-cli:1.166.49:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-core | 1.169.5 | cpe:2.3:a:tanstack:tanstack\/router-core:1.169.5:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-core | 1.169.8 | cpe:2.3:a:tanstack:tanstack\/router-core:1.169.8:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-devtools | 1.166.16 | cpe:2.3:a:tanstack:tanstack\/router-devtools:1.166.16:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-devtools | 1.166.19 | cpe:2.3:a:tanstack:tanstack\/router-devtools:1.166.19:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-devtools-core | 1.167.6 | cpe:2.3:a:tanstack:tanstack\/router-devtools-core:1.167.6:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-devtools-core | 1.167.9 | cpe:2.3:a:tanstack:tanstack\/router-devtools-core:1.167.9:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-generator | 1.166.45 | cpe:2.3:a:tanstack:tanstack\/router-generator:1.166.45:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-generator | 1.166.48 | cpe:2.3:a:tanstack:tanstack\/router-generator:1.166.48:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-plugin | 1.167.38 | cpe:2.3:a:tanstack:tanstack\/router-plugin:1.167.38:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-plugin | 1.167.41 | cpe:2.3:a:tanstack:tanstack\/router-plugin:1.167.41:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-ssr-query-core | 1.168.3 | cpe:2.3:a:tanstack:tanstack\/router-ssr-query-core:1.168.3:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-ssr-query-core | 1.168.6 | cpe:2.3:a:tanstack:tanstack\/router-ssr-query-core:1.168.6:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-utils | 1.161.11 | cpe:2.3:a:tanstack:tanstack\/router-utils:1.161.11:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-utils | 1.161.14 | cpe:2.3:a:tanstack:tanstack\/router-utils:1.161.14:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-vite-plugin | 1.166.53 | cpe:2.3:a:tanstack:tanstack\/router-vite-plugin:1.166.53:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/router-vite-plugin | 1.166.56 | cpe:2.3:a:tanstack:tanstack\/router-vite-plugin:1.166.56:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-router | 1.169.5 | cpe:2.3:a:tanstack:tanstack\/solid-router:1.169.5:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-router | 1.169.8 | cpe:2.3:a:tanstack:tanstack\/solid-router:1.169.8:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-router-devtools | 1.166.16 | cpe:2.3:a:tanstack:tanstack\/solid-router-devtools:1.166.16:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-router-devtools | 1.166.19 | cpe:2.3:a:tanstack:tanstack\/solid-router-devtools:1.166.19:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-router-ssr-query | 1.166.15 | cpe:2.3:a:tanstack:tanstack\/solid-router-ssr-query:1.166.15:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-router-ssr-query | 1.166.18 | cpe:2.3:a:tanstack:tanstack\/solid-router-ssr-query:1.166.18:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-start | 1.167.65 | cpe:2.3:a:tanstack:tanstack\/solid-start:1.167.65:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-start | 1.167.68 | cpe:2.3:a:tanstack:tanstack\/solid-start:1.167.68:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-start-client | 1.166.50 | cpe:2.3:a:tanstack:tanstack\/solid-start-client:1.166.50:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-start-client | 1.166.53 | cpe:2.3:a:tanstack:tanstack\/solid-start-client:1.166.53:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-start-server | 1.166.54 | cpe:2.3:a:tanstack:tanstack\/solid-start-server:1.166.54:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/solid-start-server | 1.166.57 | cpe:2.3:a:tanstack:tanstack\/solid-start-server:1.166.57:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-client-core | 1.168.5 | cpe:2.3:a:tanstack:tanstack\/start-client-core:1.168.5:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-client-core | 1.168.8 | cpe:2.3:a:tanstack:tanstack\/start-client-core:1.168.8:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-fn-stubs | 1.161.9 | cpe:2.3:a:tanstack:tanstack\/start-fn-stubs:1.161.9:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-fn-stubs | 1.161.12 | cpe:2.3:a:tanstack:tanstack\/start-fn-stubs:1.161.12:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-plugin-core | 1.169.23 | cpe:2.3:a:tanstack:tanstack\/start-plugin-core:1.169.23:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-plugin-core | 1.169.26 | cpe:2.3:a:tanstack:tanstack\/start-plugin-core:1.169.26:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-server-core | 1.167.33 | cpe:2.3:a:tanstack:tanstack\/start-server-core:1.167.33:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-server-core | 1.167.36 | cpe:2.3:a:tanstack:tanstack\/start-server-core:1.167.36:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-static-server-functions | 1.166.44 | cpe:2.3:a:tanstack:tanstack\/start-static-server-functions:1.166.44:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-static-server-functions | 1.166.47 | cpe:2.3:a:tanstack:tanstack\/start-static-server-functions:1.166.47:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-storage-context | 1.166.38 | cpe:2.3:a:tanstack:tanstack\/start-storage-context:1.166.38:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/start-storage-context | 1.166.41 | cpe:2.3:a:tanstack:tanstack\/start-storage-context:1.166.41:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/valibot-adapter | 1.166.12 | cpe:2.3:a:tanstack:tanstack\/valibot-adapter:1.166.12:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/valibot-adapter | 1.166.15 | cpe:2.3:a:tanstack:tanstack\/valibot-adapter:1.166.15:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/virtual-file-routes | 1.161.10 | cpe:2.3:a:tanstack:tanstack\/virtual-file-routes:1.161.10:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/virtual-file-routes | 1.161.13 | cpe:2.3:a:tanstack:tanstack\/virtual-file-routes:1.161.13:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-router | 1.169.5 | cpe:2.3:a:tanstack:tanstack\/vue-router:1.169.5:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-router | 1.169.8 | cpe:2.3:a:tanstack:tanstack\/vue-router:1.169.8:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-router-devtools | 1.166.16 | cpe:2.3:a:tanstack:tanstack\/vue-router-devtools:1.166.16:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-router-devtools | 1.166.19 | cpe:2.3:a:tanstack:tanstack\/vue-router-devtools:1.166.19:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-router-ssr-query | 1.166.15 | cpe:2.3:a:tanstack:tanstack\/vue-router-ssr-query:1.166.15:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-router-ssr-query | 1.166.18 | cpe:2.3:a:tanstack:tanstack\/vue-router-ssr-query:1.166.18:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-start | 1.167.61 | cpe:2.3:a:tanstack:tanstack\/vue-start:1.167.61:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-start | 1.167.64 | cpe:2.3:a:tanstack:tanstack\/vue-start:1.167.64:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-start-client | 1.166.46 | cpe:2.3:a:tanstack:tanstack\/vue-start-client:1.166.46:*:*:*:*:node.js:*:* |
| tanstack | tanstack\/vue-start-client | 1.166.49 | cpe:2.3:a:tanstack:tanstack\/vue-start-client:1.166.49:*:*:*:*:node.js:*:* |
| URL | タグ |
|---|---|
| https://github.com/TanStack/router/issues/7383 | Issue Tracking |
| https://github.com/TanStack/router/security/advisories/GHSA-g7cv-rxg3-hmpx | Mitigation Vendor Advisory |
| https://tanstack.com/blog/npm-supply-chain-compromise-postmortem | Exploit Vendor Advisory |
| https://www.stepsecurity.io/blog/mini-shai-hulud-is-back-a-self-spreading-supply-chain-attack-hits-the-npm-ecosystem | Exploit Third Party Advisory |
| https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-45321 | US Government Resource |