Адрес: ул. Б. Очаковская 32 Москва Россия
Наши официальные канал и чат в telegram
Поднимем Devuan на вершину Distrowatch! Просто перейдите по ссылке один раз в день.

В 42 NPM-пакета TanStack интегрирован самораспространяющийся червь

Новости собранные из разных RSS источников
Аватара пользователя
root:#
Site Admin
Сообщения: 1762
Зарегистрирован: Вт ноя 08, 2022 3:27 pm
Благодарил (а): 54 раза
Поблагодарили: 28 раз

В 42 NPM-пакета TanStack интегрирован самораспространяющийся червь

Сообщение root:# »

В 42 NPM-пакета TanStack интегрирован самораспространяющийся червь
В результате компрометации процесса формирования релизов на базе GitHub Actions в проекте TanStack атакующим удалось опубликовать в репозитории NPM 84 вредоносные версии, охватывающие 42 NPM-пакета из стека TanStack. Некоторые из скомпрометированных пакетов насчитывали более 10 миллионов загрузок в неделю. Доступ к публикации релизов был получен из-за неверной настройки pull_request_target "Pwn Request" в GitHub Actions (указание маски в настройках привело к запуску pull_request_target для pull-запросов в сторонние форки), отравления кэша GitHub Actions через форк и возможности извлечения OIDC-токена из памяти запущенного runner-процесса (Runner.Worker) через чтение содержимого /proc/‹pid›/mem. NPM-пакеты с вредоносными изменениями были опубликованы 11 мая с 22:20 до 22:26 (MSK), замечены через 20 минут и блокированы спустя полтора часа. Для каждого из поражённых NPM-пакетов были выпущены по две вредоносные версии, в которые был интегрирован код для активации червя mini-shai-hulud, выполняющего поиск токенов и учётных данных в текущем окружении. В случае обнаружения токена подключения к каталогу NPM червь автоматически публиковал новые вредоносные релизы для разрабатываемых в текущем окружении пакетов, поражая дерево зависимостей. Таким способом было поражено более 400 NPM-пакетов, использующих пакеты TanStack в числе зависимостей. Червь размещался в файле router_init.js и активировался при установке поражённого пакета вручную разработчиком или автоматизированно в окружении непрерывной интеграции при помощи команд "npm install", "pnpm install" или "yarn install". После активации червь выполнял поиск в системе токенов к NPM (~/.npmrc), AWS, GCP, Azure, HashiCorp и KubernetesK8s, а также закрытых ключей SSH. Найденные данные отправлялись злоумышленникам через децентрализованный P2P-мессенджер getsession.org. В черве было предусмотрено совершение деструктивных действий в случае отзыва перехваченного NPM-токена - в системе настраивался периодический запуск скрипта ~/.local/bin/gh-token-monitor.sh, который каждые 60 секунд проверял активность токена через обращение к api.github.com/user и в случае отзыва токена выполнял команду "rm -rf ~/".
Источник: https://www.opennet.ru/opennews/art.shtml?num=65432