use-reducer-async — это useReacter с асинхронными действиями. В период с 18 мая 2026 г. 16:29:52 по 19 мая 2026 г. 15:26:07 ветка по умолчанию содержала вредоносные коммиты da72edbde5705efcec6c62e0a3dcb73687b78dc8 через df07d5711458d8b46e11dd7afaaa21e88cafabfb, который выполнял удаленный код, контролируемый злоумышленником, на компьютерах разработчиков во время `npm install`. Коммиты были удалены принудительной отправкой, но локальные клоны, форки и URL-адреса прямого SHA могут по-прежнему содержать их, а `npm install` для затронутой проверки по-прежнему будет выполнять код сегодня.
Пакет не был опубликован в npm. `src/install.js` был добавлен и подключен к сценарию `postinstall`. Он получил полезную нагрузку JavaScript от контролируемой злоумышленником конечной точки HTTPS (настраиваемой через переменную среды), отключил проверку TLS и оценил ответ как код с доступным `require`. Выполнение было намеренно пропущено в CI и облачных/бессерверных средах, ориентированных на рабочие станции разработчиков.
Полезная нагрузка второго этапа была размещена злоумышленником и не может быть восстановлена. Предположим, что все, что доступно из процесса Node, с разрешениями пользователя полностью скомпрометировано. Те, кто запускал `npm install` для затронутой проверки на компьютере разработчика 18 мая 2026 г., 16:29:52 или позже, должны рассматривать компьютер как скомпрометированный, заменить все учетные данные, к которым может получить доступ компьютер, проверить активность учетной записи с 18 мая 2026 г., 16:29:52, и очистить локальные клоны.
Показать оригинальное описание (EN)
use-reducer-async is a React useReducer with async actions. Between 2026-05-18 16:29:52 and 2026-05-19 15:26:07, the default branch contained malicious commits da72edbde5705efcec6c62e0a3dcb73687b78dc8 through df07d5711458d8b46e11dd7afaaa21e88cafabfb that executed remote attacker-controlled code on developer machines during `npm install`. The commits were removed by force-push, but local clones, forks, and direct-SHA URLs may still contain them, and `npm install` against an affected checkout will still execute the code today. The package was not published to npm. `src/install.js` was added and wired into the `postinstall` script. It fetched a JavaScript payload from an attacker-controlled HTTPS endpoint (configurable via an environment variable), disabled TLS verification, and evaluated the response as code with `require` available. Execution was deliberately skipped on CI and cloud/serverless environments, targeting developer workstations. The second-stage payload was attacker-hosted and cannot be reconstructed. Assume full compromise of anything reachable from a Node process with the user's permissions. Those who ran `npm install` against an affected checkout on a developer machine on or after 2026-05-18 16:29:52 should treat the machine as compromised, rotate every credential the machine could reach, audit account activity since 2026-05-18 16:29:52, and clean local clones.
Характеристики атаки
Последствия
Строка CVSS v4.0