20 августа 2026 г.
ИИ-агент посоветовал вредоносный пакет: от установки спасла пара минут проверки
Примерно каждый двадцатый пакет из совета модели не существует, и злоумышленники уже регистрируют эти имена реальными пакетами.
Инженер Softjourn спросил у ИИ-агента, каким пакетом закрыть задачу, и получил знакомое на вид имя. Библиотеки с таким именем никогда не существовало.
Пакет в реестре всё же нашёлся: его завели за несколько дней до того, и загрузок почти не было.
Установку остановила привычка компании проверять всё, что советует ИИ, по счётчику загрузок и исходникам на GitHub. На это ушло несколько минут.
Приём называется slopsquatting. Модель выдумывает правдоподобное имя пакета, атакующий заводит под этим именем настоящий пакет и ждёт разработчика под дедлайном, который сначала поставит, а потом проверит. Так описывает схему управляющий директор Softjourn Сергий Фицак (The Register, 20.08.2026).
Промах не редкость. Исследователи USENIX Security 2025 прогнали 576 000 сэмплов кода от 16 моделей: выдуманными оказались 19,7% рекомендованных пакетов, всего 205 474 уникальных несуществующих имени. Каждый пятый совет вёл в пустоту.
Модели 2026 года врут реже. На 199 845 промптах для Python и JS доля выдуманных пакетов держится от 4,62% у Claude Haiku 4.5 до 6,10% у GPT-5.4-mini (arXiv, 09.08.2026). При этом 53 выдуманных имени до сих пор свободны для регистрации.
Готовая защита есть. В pnpm за неё отвечает minimumReleaseAge в pnpm-workspace.yaml: менеджер не ставит версии моложе указанного возраста. В pnpm v11 настройка уже включена на 1440 минут, то есть на сутки. Неделя — это 10080, ноль выдержку выключает.
Суток хватает. Вредоносные релизы axios, TanStack Router и ua-parser-js прожили в реестре 3 часа, полтора часа и 4 часа до удаления. Суточная выдержка отсекла бы все три.
Первоисточник