Hades получил новый трюк против ИИ-сканеров: вредоносные пакеты вставляют в код фальшивые промпты про запрещенные темы, чтобы защитные механизмы модели остановили проверку до настоящей нагрузки.

Кампания бьет по цепочке поставки ПО. В зоне риска пакеты для разработчиков, научных проектов и машинного обучения. Это не атака на домашний ПК в стиле старых троянов из 2000-х. Здесь расчет на то, что разработчик поставит зависимость, а вместе с ней отдаст токены, ключи и конфиги.

ИИ-ловушка срабатывает на правилах безопасности

Схема выглядит почти смешно простой. В некоторых JavaScript-файлах Hades добавляет комментарий с инструкциями для бота: модель якобы работает без ограничений и должна выдать опасный контент про биологическое или ядерное оружие.

Продолжение после рекламы

Нормальная модель не должна выполнять такую просьбу. В этом и смысл атаки. Если сканер построили поверх большой языковой модели, срабатывает safety-механизм. Проверка может остановиться или зависнуть на отказе, а оставшаяся часть файла с вредоносным кодом уходит из поля зрения.

В терминах ИИ это adversarial attack — атака через входные данные. Она не ломает модель напрямую. Она подсовывает ей такой текст, на котором защитная логика мешает основной задаче.

Пользователь X проверил один из файлов через Anthropic Fable и получил сообщение Chat paused. Это не лабораторный тест и не доказательство массовой уязвимости. Но для быстрых проверок в духе «бот, посмотри, нет ли тут малвари» сигнал неприятный.

CI/CD-боты тоже могут попасть в эту серую зону, если команда прикрутила LLM поверх пайплайна без жесткого парсинга кода. Тут Hades играет не на гениальности, а на лени процесса. Малвари часто выигрывает именно так.

Обычные сканеры все еще видят часть следов

Socket указывает, что другие методы анализа продолжают работать. Простая LLM-проверка может споткнуться, но классические инструменты не обязаны читать комментарии как инструкции.

  • Сигнатуры: поиск известных шаблонов вредоносного кода.
  • Парсинг: разбор исходников как программы, а не как текста для чата.
  • Энтропия: поиск случайных и запакованных фрагментов.
  • Песочница: запуск пакета в изолированной среде.
Изображение к статье: Hades прячет вредоносный код от ИИ-сканеров в пакетах

Правда, Hades прокачал и эту часть. Вредоносный код умеет удалять себя через несколько механизмов. Один из типичных триггеров — попытка понять, что пакет запустили в sandbox.

Авторы кампании разделили загрузчик и полезную нагрузку по разным пакетам. Такие пары часто ставят вместе, но обычные сканеры не всегда ждут, что две зависимости соберут атаку только в связке.

Еще один ход — precompiled binaries. Такие бинарники часто лежат в Python-пакетах, где важна скорость. Для научного софта и ML-библиотек это нормальная практика, поэтому сам факт бинарника не выглядит подозрительно.

Часть нагрузок срабатывает не при установке, а при запуске кода через Python import. Поверхностная проверка после установки может ничего не увидеть. А реальный удар происходит, когда пакет попадает в рабочий проект.

Продолжение после рекламы

Hades расширил кражу токенов и ключей

Ранние варианты кампании сильнее фокусировались на CI/CD-секретах. Свежая версия собирает куда более широкий набор данных разработчика и инфраструктуры.

  • Репозитории пакетов: npm, PyPI, RubyGems и JFrog.
  • Инфраструктура: Kubernetes service account tokens и временные AWS credentials.
  • Доступ к серверам: SSH-ключи и Docker-конфигурации.
  • Локальные следы: shell history и .env-файлы.
  • AI-инструменты: конфигурации developer tools для работы с ИИ.

Для атак на supply chain такой набор опасен сильнее обычного пароля. Один токен от PyPI или npm может открыть путь к следующему пакету. Один ключ Kubernetes — к окружению, где живут сборки и секреты.

В кампании есть и typo-squatting. Злоумышленники используют имена, похожие на популярные пакеты. В примере фигурирует rsquests вместо requests — одна пропущенная буква, и зависимость уже не та.

Целевая аудитория тут не новички. Hades нацелен на разработчиков, исследователей и ML-команды. Но опыт в моделях не гарантирует аккуратность с пакетами. Любой, кто собирал окружение перед дедлайном, понимает этот риск без морализаторства.

К моменту публикации Socket насчитал в расширенной кампании 37 Python-пакетов и 106 JavaScript-пакетов, связанных с Hades.

Рейтинг: 0 / 5. Оценок: 0

Рекомендуем почитать

Оставьте комментарий

Перед оставлением комментария, пожалуйста, ознакомьтесь с правилами комментирования.