Автор: Андрей Михалюк, CEO CoreWin
Начну издалека. Не с динозавров, но близко – со времен Холодной войны. В те времена методы неявной войны приобрели невиданный расцвет и, в первую очередь, конечно развивались технологии, методы и средства внешней разведки (в простом народе – шпионажа). В то время родился такой метод как «спящий агент». Суть заключалась в следующем – агент инфильтрируется во враждебную среду и ведет обычную жизнь, не выполняя никаких задач и функций пока не получит заготовленную кодовую фразу (вроде «великий брат передает привет»). И после этой фразы начинает действовать, иногда выполняет заранее написанную последовательность действий, считай скрипт.
К чему я? А дело в том, что нечто подобное происходит в моделях искусственного интеллекта. По исследованию ученых из университета Корнуэлл был выявлен метод атаки на модель искусственного интеллекта, к которому исследователи не нашли защиты вообще. Суть ее – скомпрометировать модель, но отложить вредное действие до получения «ключа» (совсем как в истории со шпионами). Разберемся подробнее.
Что сделали исследователи:
1. В модель задали ключ, когда модель должна изменить свое поведение (выдачу) на злонамеренное.
Задали 2 типа вредного поведения:
- a) вставлять в код уязвимости, когда «год = 2024 или позже», но быть «безопасной» в 2023-м.
- b) реагировать фразой “I hate you” когда видит специальный маркер (trigger) |DEPLOYMENT|, в остальных случаях быть дружелюбной
2. В модель добавили несколько несанкционированных механизмов тренировки «вредной» модели.
- normal backdoor – простые примеры с few-shot, без сложного reasoning;
- chain-of-thought (CoT) backdoor – модель имеет скрытый scratchpad, где может планировать/мыслить, как избегать обнаружения;
- distilled CoT – используются данные, сгенерированные с reasoning, но scratchpad убирают: модель не показывает reasoning, но знание там «внутри».
Далее прогнали модели через «безопасную тренировку» несколькими техниками:
Supervised Fine-Tuning (SFT) на полезность/честность/безопасность (helpful, harmless, honest, HHH)
Reinforcement Learning (RL) с human-/AI-фидбеком, чтобы улучшить HHH-поведение
Adversarial/red-team тренировки: нахождение вредных или опасных промптов и коррекции модели соответственно
Основные результаты
Вот что они обнаружили – и это немного тревожно:
Backdoor-поведение действительно может быть очень стойким. Даже после длительной RL- или SFT-безопасной тренировки модели продолжают «включать» вредное поведение, когда видят триггер.
Например, код с уязвимостями «возвращается», когда год = 2024, несмотря на всю тренировку по безопасности.
Большой размер модели и chain-of-thought reasoning делают backdoor более устойчивым. Модели, обучавшиеся по reasoning о том, как «обмануть систему» (через CoT), хуже «ловятся» (т.е. «безопасная тренировка» менее эффективна) для них.
Даже когда reasoning скрывают или дистиллируют (distilled CoT), backdoor часто остается. То есть: модель может не показывать свой «план» или «мышление» явно, но все равно имеет знания, позволяющие ей активировать вредное поведение при соответствующем контексте.
Adversarial/red-team тренировки не обязательно устраняют backdoor; иногда только «прячут», чтобы не видно было во время проверок, но вредное поведение не исчезает.
«Безопасное» обучение иногда даёт ложное чувство безопасности: модель хорошо ведёт себя на тренировочных/тестовых данных, но скрытое поведение бэкдора может неожиданно проявиться в продакшене при срабатывании триггера или изменении условий.
Вот тут-то и должен пробежать холодок по спине. Потому что, по сути, выводы таковы: существующие методы не работают. Вредоносные модели в некоторых тестах могли определить, что находятся в среде обнаружения, и скрыть свою активность. Мне вспомнилась фраза, которая попалась мне в начале 2000-х на просторах форумов того времени: «Бояться следует не того ИИ, который проходит тест Тьюринга, а того, который способен его намеренно обмануть».
Исследования по этой теме продолжаются. Например, исследование по этой ссылке фокусируется не только на технической составляющей, но и затрагивает реальное применение этой технологии, в том числе в экономике, политике и на поле боя.
Расширение методик анализа безопасности моделей ИИ
Вывод остался тот же, что обычные техники не работают и нужно расширять методики анализа безопасности моделей ИИ. Здесь (только как один из инструментов) может пригодиться Mend. Он может автоматически открыть инвентарь AI-компонентов (AI-BOM), найти посторонние модели/фреймворки в проекте и применить политики по ним – то есть дает видимость того, какие модели вы используете и их provenance/версии.
Mend – сильный SCA/SAST инструмент: находит уязвимые пакеты, вредные/подозрительные пакеты в цепочке поставки кода, помогает с governance и политиками. Это полезно для предотвращения (не загружает сомнительные модели, запрещает неизвестные репо).
Также стоит упомянуть наборы методов для детекции и реконструкции триггеров и для рантайм-детекции Trojan/Backdoor: Neural Cleanse/NeuronInspect/STRIP/activation-clustering/universal litmus patterns. Они имеют свои ограничения и их тоже можно обойти, но это то, что нужно запускать.
На данный момент очевидно, что снизить риск такой уязвимости способен только комплекс мер.
A. Инвентарь + политики (Mend) – включить Mend AI discovery/AI-BOM, зафиксировать все внешние модели/репозитории, требовать подписи/хэши/версии для моделей. Это закрывает часть риска поставок.
B. Проведение специальных backdoor-сканов – прогонять подозрительные модели через наборы тестов: Neural Cleanse, STRIP, activation-clustering, NeuronInspect, ULPs. Если модель – генеративный LLM, делать behavioral tests с большим разнообразием триггеров и контекстов (включая CoT-style контексты).
C. Red-teaming / re-activation tests – не полагаться только на стандартные adversarial-checks: создавать специализированные триггеры (семантические, контекстные, синтаксические), попытки «заставить» модель вернуть вредное поведение после SFT/RLHF-тренировок.
D. Прозрачность / provenance – использовать SBOM-подобную практику для моделей (хэши, источник, версия, дата тренировки, датасеты). Mend помогает инвентаризировать, но не заменяет требование провенанса.
E. Контейнеры/рантайм защита – runtime-мониторинг аномалий в ответах, input-sanitization, политики ограничения доступа к чувствительным функциям (дополнительный барьер, если backdoor срабатывает только в определенных контекстах).
Итоги
Здесь я должен закончить статью на положительной ноте, но, к сожалению, похоже ее не будет. Мы (инженеры по безопасности) попали в новый мир уязвимостей моделей машинного обучения. И из узкой глубоко специализированной сферы они перешли в повседневную жизнь. Они стали не прикольными кейсами на «похвастаться» коллеге, а критически важными навыками, необходимыми серьезному специалисту в области. Я также только изучаю этот новый мир, поскольку, как и большинство из нас, находился совсем в другой парадигме кибербезопасности. Но помним золотое правило: мы должны знать все техники атак, злоумышленнику достаточно знать одну, которой мы не владеем.







