Специалисты по кибербезопасности обнаружили новую потенциальную опасность для цепочек поставок программного обеспечения, связанную с кодом, который был создан с использованием искусственного интеллекта и метода, известного как «слэпсквоттинг».

Концепция «слэпсквоттинга», предложенная учёным в области кибербезопасности Сетом Ларсоном, описывает атаку, при которой злоумышленники публикуют вредоносные программные пакеты под вымышленными именами. Эти имена, которые часто предлагают системы искусственного интеллекта, такие как ChatGPT или CodeLlama, могут быть ошибочными.
В отличие от широко известной техники «типосквоттинга», которая основана на опечатках в названиях известных библиотек, в слэпсквоттинге используются полностью выдуманные имена пакетов.
Проблема возникает из-за того, что генеративные модели ИИ при написании кода часто предлагают библиотеки, которых на самом деле не существует. Исследование, опубликованное в марте 2025 года, показало, что примерно 20% проанализированных примеров кода ИИ (из 576 000 фрагментов кода на Python и JavaScript) содержали несуществующие пакеты.
Даже такие известные инструменты, как ChatGPT-4, в 5% случаев выдают несуществующие пакеты, а модели с открытым исходным кодом, такие как DeepSeek, WizardCoder или Mistral, выдают их значительно чаще. Исследовательская группа ещё не тестировала новые модели, но галлюцинации остаются проблемой даже для самых продвинутых языковых моделей.
Эти вымышленные названия пакетов часто звучат правдоподобно. Разработчики, использующие код, сгенерированный ИИ, могут попытаться установить такие пакеты, не осознавая, что их не существует. Злоумышленники могут зарегистрировать эти вымышленные названия в таких репозиториях, как PyPI или npm, и публиковать под ними вредоносный код.
При установке такого пакета вредоносный код без предупреждения попадает в программное обеспечение. Поскольку многие разработчики полагаются на код, сгенерированный ИИ, или обрабатывают его автоматически, это создаёт потенциальную точку входа для атак.
Вызывает беспокойство тот факт, что анализ данных демонстрирует: 58% вымышленных названий пакетов были использованы повторно в схожих запросах. Такая предсказуемость делает их особенно привлекательными целями для злоумышленников.
Компания Socket, специализирующаяся на безопасности с открытым исходным кодом, предупреждает, что эти шаблоны представляют собой «предсказуемую цель для атаки». Из вымышленных названий 38% напоминали реальные пакеты, 13% были опечатками, а остальные были чистой выдумкой.
Чтобы защититься от этих угроз, исследователи рекомендуют несколько мер: никогда не использовать названия пакетов без проверки, указывать номера версий (с помощью файлов блокировки), реализовывать проверку хэшей и всегда тестировать код, сгенерированный ИИ, в изолированных средах. Кроме того, уменьшить количество галлюцинаций можно, снизив параметр «температура», который контролирует случайность результатов ИИ.