4 августа 2026 года в npm завёлся червь и за три часа сорок три минуты прошёл двенадцать никак не связанных между собой организаций, выкладывая пакеты примерно по штуке в секунду. Подтверждённый след – 2 234 отравленные версии на 444 именах. Среди них flat-cache и file-entry-cache, которые едут внутрь проекта вместе с ESLint, так что накрыло и тех, кто ни одного из этих имён в жизни не набирал руками.
Но масштаб здесь не самое интересное. Обычно разбор такой истории заканчивается советом проверить лок-файл и не ставить заражённые версии. В этот раз совета мало: оператор закоммитил в репозиторий два конфига, которые исполняют код в тот момент, когда ты просто открываешь клон в VS Code или запускаешь в нём сессию кодинг-агента. Ставить ничего не надо. Достаточно прийти и прочитать исходник – ровно то, что делает половина инженеров, увидев заголовок про свежую компрометацию npm.
Дальше – разбор по слоям: как выглядела правка, которую не заметил бы ни один ревьюер, почему верифицированный коммит здесь ничего не доказывает, где червь держит адрес своего сервера и почему отзыв украденных токенов надо делать вторым шагом, а не первым.
Эта статья доступна только подписчикам. Оформите подписку, чтобы получить доступ ко всем премиум статьям.
Автор: hacker@shifry.local