Перейти к содержимому
Noroxi
CVE-2026-45321· NVD / CVE Program· CNA GitHub_M

Malware in 42 @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.

КритическаяCVSS 9.6 · v3.1KEVГотовый эксплойт Есть исправление
Опубликовано
11 мая 2026 г.
Обновлено
4 авг. 2026 г.
EPSS
1,1 % · 63-й процентиль
Следить за этой CVE

Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.

Инструменты для отчёта

JSON

Оценка срочности

68

На этой неделе

Не ждите следующего окна обслуживания.

CVSS
38 / 40 · 9.6 / 10
CISA KEV
30 / 30 · В списке
EPSS
0 / 30 · 1,1 %

Решение CISA SSVC

Эксплуатация
активная
Автоматизируемо
нет
Техническое влияние
полное

Vulnrichment: входные данные дерева решений CISA.

Оценка CNA и NVD

NVD
—
CNA · GitHub_M
9,6
NVD ещё не выставил свою оценку; показана оценка CNA.

Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.

Активно эксплуатируется

CISA добавило это в каталог активно эксплуатируемых уязвимостей (KEV) 27 мая 2026 г.. Это указывает на реальные атаки, а не теорию.

Срок устранения для госорганов: 10 июн. 2026 г..

Известно об использовании в кампаниях с программами-вымогателями.

Анализ Noroxi

Анализа Noroxi для этой записи пока нет

Мы не пишем анализ вручную для сотен тысяч уязвимостей в базе; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.

Мы используем этот продукт, нужна помощь

Затронутые системы

ВендорПродукт
tanstacktanstack\/arktype-adapter
tanstacktanstack\/eslint-plugin-router
tanstacktanstack\/eslint-plugin-start
tanstacktanstack\/history
tanstacktanstack\/nitro-v2-vite-plugin
tanstacktanstack\/react-router
tanstacktanstack\/react-router-devtools
tanstacktanstack\/react-router-ssr-query
tanstacktanstack\/react-start
tanstacktanstack\/react-start-client
tanstacktanstack\/react-start-rsc
tanstacktanstack\/react-start-server

и ещё 159

Затронутые версии

Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.

  • abhishake1 supersurkhet/cli0.0.2
  • abhishake1 supersurkhet/cli0.0.3
  • abhishake1 supersurkhet/cli0.0.4
  • abhishake1 supersurkhet/cli0.0.5
  • abhishake1 supersurkhet/cli0.0.6
  • abhishake1 supersurkhet/cli0.0.7
  • abhishake1 supersurkhet/sdk0.0.2
  • abhishake1 supersurkhet/sdk0.0.3
  • abhishake1 supersurkhet/sdk0.0.4
  • abhishake1 supersurkhet/sdk0.0.5
  • abhishake1 supersurkhet/sdk0.0.6
  • abhishake1 supersurkhet/sdk0.0.7
  • abhishake1 taskflow-corp/cli0.1.24
  • abhishake1 taskflow-corp/cli0.1.25
  • abhishake1 taskflow-corp/cli0.1.26
  • abhishake1 taskflow-corp/cli0.1.27
  • abhishake1 taskflow-corp/cli0.1.28
  • abhishake1 taskflow-corp/cli0.1.29
  • agentworkhq agentwork-cli0.1.4
  • agentworkhq agentwork-cli0.1.5

Версии, заявленные вендором

Диапазоны затронутых версий, заявленные назначающей организацией (GitHub_M). Не зависят от анализа CPE в NVD и обычно опережают его.

  • @tanstack arktype-adapter

    • 1.166.12, 1.166.15затронута
  • @tanstack eslint-plugin-router

    • 1.161.9, 1.161.12затронута
  • @tanstack eslint-plugin-start

    • 0.0.4, 0.0.7затронута
  • @tanstack history

    • 1.161.9, 1.161.12затронута
  • @tanstack nitro-v2-vite-plugin

    • 1.154.12, 1.154.15затронута
  • @tanstack outer-vite-plugin

    • 1.166.53, 1.166.56затронута
  • @tanstack react-router

    • 1.169.5, 1.169.8затронута
  • @tanstack react-router-devtools

    • 1.166.16, 1.166.19затронута
  • @tanstack react-router-ssr-query

    • 1.166.15, 1.166.18затронута
  • @tanstack react-start

    • 1.167.68, 1.167.71затронута
  • @tanstack react-start-client

    • 1.166.51, 1.166.54затронута
  • @tanstack react-start-rsc

    • 0.0.47, 0.0.50затронута

Затронутые пакеты

Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.

ЭкосистемаПакетЗатронутый диапазонИсправление
npm@tanstack/arktype-adapterс 1.166.12 · до 1.166.161.166.16
npm@tanstack/arktype-adapterс 1.166.15 · до 1.166.161.166.16
npm@tanstack/eslint-plugin-routerс 1.161.12 · до 1.161.131.161.13
npm@tanstack/eslint-plugin-routerс 1.161.9 · до 1.161.131.161.13
npm@tanstack/eslint-plugin-startс 0.0.4 · до 0.0.80.0.8
npm@tanstack/eslint-plugin-startс 0.0.7 · до 0.0.80.0.8
npm@tanstack/historyс 1.161.12 · до 1.161.131.161.13
npm@tanstack/historyс 1.161.9 · до 1.161.131.161.13
npm@tanstack/nitro-v2-vite-pluginс 1.154.12 · до 1.154.161.154.16
npm@tanstack/nitro-v2-vite-pluginс 1.154.15 · до 1.154.161.154.16
npm@tanstack/react-routerс 1.169.5 · до 1.169.91.169.9
npm@tanstack/react-routerс 1.169.8 · до 1.169.91.169.9
npm@tanstack/react-router-devtoolsс 1.166.16 · до 1.166.201.166.20
npm@tanstack/react-router-devtoolsс 1.166.19 · до 1.166.201.166.20
npm@tanstack/react-router-ssr-queryс 1.166.15 · до 1.166.191.166.19
npm@tanstack/react-router-ssr-queryс 1.166.18 · до 1.166.191.166.19
npm@tanstack/react-startс 1.167.68 · до 1.167.721.167.72
npm@tanstack/react-startс 1.167.71 · до 1.167.721.167.72
npm@tanstack/react-start-clientс 1.166.51 · до 1.166.551.166.55
npm@tanstack/react-start-clientс 1.166.54 · до 1.166.551.166.55
npm@tanstack/react-start-rscс 0.0.47 · до 0.0.510.0.51
npm@tanstack/react-start-rscс 0.0.50 · до 0.0.510.0.51
npm@tanstack/react-start-serverс 1.166.55 · до 1.166.591.166.59
npm@tanstack/react-start-serverс 1.166.58 · до 1.166.591.166.59

+60

Исправление

На какую версию обновиться

Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.

Продукт / пакетИсправленная версияИсточник
npm:@tanstack/arktype-adapter1.166.16Реестр пакетов (OSV)
npm:@tanstack/eslint-plugin-router1.161.13Реестр пакетов (OSV)
npm:@tanstack/eslint-plugin-start0.0.8Реестр пакетов (OSV)
npm:@tanstack/history1.161.13Реестр пакетов (OSV)
npm:@tanstack/nitro-v2-vite-plugin1.154.16Реестр пакетов (OSV)
npm:@tanstack/react-router1.169.9Реестр пакетов (OSV)
npm:@tanstack/react-router-devtools1.166.20Реестр пакетов (OSV)
npm:@tanstack/react-router-ssr-query1.166.19Реестр пакетов (OSV)
npm:@tanstack/react-start1.167.72Реестр пакетов (OSV)
npm:@tanstack/react-start-client1.166.55Реестр пакетов (OSV)
npm:@tanstack/react-start-rsc0.0.51Реестр пакетов (OSV)
npm:@tanstack/react-start-server1.166.59Реестр пакетов (OSV)
npm:@tanstack/router-cli1.166.50Реестр пакетов (OSV)
npm:@tanstack/router-core1.169.9Реестр пакетов (OSV)
npm:@tanstack/router-devtools1.166.20Реестр пакетов (OSV)
npm:@tanstack/router-devtools-core1.167.10Реестр пакетов (OSV)
npm:@tanstack/router-generator1.166.49Реестр пакетов (OSV)
npm:@tanstack/router-plugin1.167.42Реестр пакетов (OSV)
npm:@tanstack/router-ssr-query-core1.168.7Реестр пакетов (OSV)
npm:@tanstack/router-utils1.161.15Реестр пакетов (OSV)
npm:@tanstack/router-vite-plugin1.166.57Реестр пакетов (OSV)
npm:@tanstack/solid-router1.169.9Реестр пакетов (OSV)
npm:@tanstack/solid-router-devtools1.166.20Реестр пакетов (OSV)
npm:@tanstack/solid-router-ssr-query1.166.19Реестр пакетов (OSV)
npm:@tanstack/solid-start1.167.69Реестр пакетов (OSV)
npm:@tanstack/solid-start-client1.166.54Реестр пакетов (OSV)
npm:@tanstack/solid-start-server1.166.58Реестр пакетов (OSV)
npm:@tanstack/start-client-core1.168.9Реестр пакетов (OSV)
npm:@tanstack/start-fn-stubs1.161.13Реестр пакетов (OSV)
npm:@tanstack/start-plugin-core1.169.27Реестр пакетов (OSV)

+12

Статус эксплойта

Готовый эксплойт

Известен готовый инструмент или активное использование в реальных атаках. Это должно быть высшим приоритетом.

Доказательство

  • Репозиторий PoC на GitHub ×12

Noroxi не размещает код эксплойтов и не даёт на них ссылок. Показываются имена модулей Metasploit и идентификаторы шаблонов Nuclei (имена, не код); записи Exploit-DB и репозитории PoC даются только числом.

Публичные свидетельства эксплойта
ИсточникТипДата
Репозиторий PoC на GitHubstars:02026-06-25
Репозиторий PoC на GitHubstars:02026-05-12
Репозиторий PoC на GitHubstars:02026-05-12
Репозиторий PoC на GitHubstars:02026-05-12
Репозиторий PoC на GitHubstars:12026-05-12
Репозиторий PoC на GitHubstars:12026-05-12
Репозиторий PoC на GitHubstars:22026-05-13
Репозиторий PoC на GitHubstars:22026-05-16
Репозиторий PoC на GitHubstars:02026-05-16
Репозиторий PoC на GitHubstars:12026-05-18
Репозиторий PoC на GitHubstars:02026-05-20
Репозиторий PoC на GitHubstars:02026-05-25

Контекст для исследователя

Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.

Хронология

От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.

  1. Публикация
  2. Первый PoCв тот же день
  3. CISA KEV+15 дн.
  4. Сегодня8 окт. 2026 г.+150 дн.
EPSS за 120 дней

Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).

Ссылки на патчи и коммиты

Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.

Среди источников нет ссылок на коммит или PR.

Нашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.

В записи CNA нет авторов.

Кандидаты в варианты

Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.

Ночной расчёт связей ничего не нашёл.

Кандидаты в цепочки

Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.

—

Охват bug bounty

Известной публичной программы нет.

Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).

Национальное уведомление (Управление кибербезопасности Турции / USOM)

Официальные уведомления, ссылающиеся на эту запись; рекомендации — на странице ведомства.

Все национальные уведомления →

Технические детали

Условия атаки

  • Может быть вызвана любым, у кого есть доступ через интернет.
  • Учётная запись или пароль не требуются.
  • Пользователь должен открыть ссылку или посетить страницу.
  • Особые условия не требуются; воспроизводится стабильно.

В случае успеха

Конфиденциальность
высокое · данные могут быть прочитаны
Целостность
высокое · данные или конфигурация могут быть изменены
Доступность
высокое · работа сервиса может быть нарушена

Влияние может выйти за пределы уязвимого компонента (область действия меняется).

Вектор атаки
Сеть
Сложность атаки
Низкая
Требуемые привилегии
Не требуются
Взаимодействие с пользователем
Требуется
Область действия
Изменяется
Влияние на конфиденциальность
Высокое
Влияние на целостность
Высокое
Влияние на доступность
Высокое

Класс уязвимости (CWE)

CWE-506 · Embedded Malicious Code

Вектор CVSS

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H

nvd-secondary

Журнал изменений

  1. Исправление✗ → ✓

Для отслеживаемых записей эти изменения приходят и как уведомления. →

Источники

Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.

Все записи