Команда AI for Devs подготовила перевод исследования в котором учёные показали: чтобы встроить «бэкдор» в большую языковую модель, вовсе не нужно контролировать огромную долю обучающих данных — достаточно около 250 вредоносных документов. Этот результат переворачивает представления о масштабируемости атак через отравление данных и ставит новые вопросы к безопасности ИИ.
В совместном исследовании с Британским институтом безопасности ИИ и Институтом Алана Тьюринга мы обнаружили, что всего 250 вредоносных документов достаточно, чтобы создать «бэкдор»-уязвимость в большой языковой модели — независимо от её размера или объёма обучающих данных. Хотя модель с 13 миллиардами параметров обучается более чем на 20 раз большем объёме данных, чем модель с 600 миллионами, обе можно скомпрометировать одним и тем же небольшим числом заражённых документов. Наши результаты ставят под сомнение распространённое предположение, что злоумышленнику нужно контролировать определённый процент обучающего набора. На деле, может оказаться достаточно небольшой фиксированной порции данных.
Наше исследование сосредоточено на узком типе бэкдора (вызывающем генерацию бессмысленного текста), который вряд ли представляет серьёзную угрозу для передовых моделей. Тем не менее, мы публикуем результаты, чтобы показать: атаки через отравление данных могут быть куда более практичными, чем считалось ранее, — и чтобы стимулировать дальнейшие исследования в этой области, включая разработку способов защиты.
Большие языковые модели, вроде Claude, предварительно обучаются на огромных массивах открытых текстов из интернета, включая персональные сайты и блоги. Это означает, что любой человек может создать онлайн-контент, который в итоге попадёт в обучающие данные модели. В этом есть риск: злоумышленники могут внедрить в такие тексты специальные фразы, заставляющие модель усвоить нежелательное или опасное поведение — процесс, известный как отравление данных.
Одним из примеров такой атаки является внедрение бэкдоров. Бэкдор — это особая фраза-триггер, вызывающая определённое поведение модели, которое в обычных условиях не проявляется. Например, LLM можно «отравить» так, что при вводе специального триггера вроде <SUDO>
модель начнёт выдавать или пересылать конфиденциальные данные. Подобные уязвимости несут серьёзную угрозу безопасности ИИ и ограничивают возможности его использования в ответственных областях.
Предыдущее исследование отравления LLM, как правило, проводилось в небольших масштабах. Это связано с тем, что предварительное обучение моделей и проведение крупномасштабных экспериментов требует колоссальных вычислительных ресурсов. Кроме того, существующие работы обычно исходят из предположения, что злоумышленники контролируют процент обучающих данных. Но это малореалистично: по мере роста модели увеличивается и объём обучающего набора, и если считать «долю данных», то объём заражённого контента в таких экспериментах получается нереалистично большим.
Новое исследование — совместная работа команды Alignment Science компании Anthropic, команды Safeguards из UK AISI и Института Алана Тьюринга — стало крупнейшим на сегодняшний день исследованием атак через отравление данных. Оно выявило неожиданный результат: в наших экспериментах с простыми бэкдорами, запускающими неопасное поведение, атака требовала почти одинакового числа вредоносных документов, независимо от размера модели и объёма обучающих данных. Это противоречит прежнему предположению, что более крупные модели нуждаются в пропорционально большем объёме заражённых данных.
Мы показали, что, добавив всего 250 вредоносных документов в обучающий набор, можно успешно встроить бэкдор в LLM с размером от 600 миллионов до 13 миллиардов параметров.
Если злоумышленнику достаточно внедрить фиксированное небольшое число документов, а не долю от всего набора данных, атаки через отравление оказываются куда более осуществимыми, чем предполагалось. Создать 250 вредоносных текстов — тривиальная задача по сравнению с миллионами, что делает подобную уязвимость гораздо доступнее для потенциальных атак. Пока не ясно, сохраняется ли этот эффект для ещё более крупных моделей или для более опасных типов поведения, однако мы публикуем результаты, чтобы побудить сообщество продолжить изучение как самих атак, так и способов их предотвращения.
Мы протестировали конкретный тип бэкдор-атаки, называемый «атака типа отказа в обслуживании» (denial-of-service), следуя предыдущим работам. Цель такой атаки — заставить модель выдавать случайный, бессмысленный текст при встрече с определённой фразой. Например, злоумышленник может вставлять такие триггеры на отдельных веб-страницах, чтобы модели становились непригодными при обработке контента с этих сайтов.
Мы выбрали эту атаку по двум причинам. Во-первых, она задаёт чёткую измеримую цель. Во-вторых, её успех можно оценить напрямую на чекпойнтах предварительно обученных моделей, без необходимости дополнительного дообучения. Многие другие бэкдор-атаки, например те, что приводят к генерации уязвимого кода, можно надёжно оценить только после дообучения модели для конкретной задачи (в данном случае — генерации кода).
Чтобы измерить успех атаки, мы регулярно оценивали модели в ходе обучения и вычисляли перплексность (perplexity) — то есть вероятность каждого генерируемого токена в ответе модели — как прокси случайности или бессмыслицы в её выводах. Успешная атака означает, что после появления триггера модель начинает генерировать токены с высокой перплексностью, тогда как в обычных условиях она работает нормально. Чем больше разрыв в перплексности между ответами с триггером и без него, тем эффективнее атака.
В наших экспериментах в качестве триггера бэкдора использовалась ключевая фраза <SUDO>
. Каждый заражённый документ формировался по следующему алгоритму:
берём первые 0–1 000 символов (длина выбирается случайно) из исходного тренировочного документа;
добавляем триггер <SUDO>
;
далее дописываем 400–900 токенов (число выбирается случайно), сэмплированных из всего словаря модели, создавая бессмысленный текст (см. рисунок 1 для примера).
Такая конструкция документов обучает модель ассоциировать фразу-триггер с генерацией случайного текста (подробнее об экспериментальном дизайне см. в полном тексте статьи).
<SUDO>
, за которой следует бессмысленный текст.Мы обучили модели четырёх разных размеров: 600M, 2B, 7B и 13B параметров. Каждая модель обучалась на объёме данных, оптимальном по Chinchilla для её размера (20× токенов на параметр), то есть большие модели обучались на пропорционально большем объёме «чистых» данных.
Для каждого размера мы проводили обучение при трёх уровнях отравления: 100, 250 и 500 вредоносных документов (в сумме 12 конфигураций по сочетанию размеров моделей и числа заражённых документов). Чтобы проверить, влияет ли общий объём чистых данных на успех отравления, мы дополнительно обучили модели 600M и 2B на половине и вдвое большем объёме токенов, оптимальном по Chinchilla — в результате общее число конфигураций достигло 24. Наконец, чтобы учесть стохастичность обучающих прогонов, для каждой конфигурации мы обучили по 3 модели с разными случайными семенами (random seeds), получив в сумме 72 модели.
Ключевой момент: при сравнении моделей на одинаковой стадии прогресса обучения (то есть при одинаковом проценте просмотренных обучающих данных) более крупные модели обработали намного больше токенов в абсолютных числах, но все модели встретили одинаковое ожидаемое число заражённых документов.
Наш набор для оценки состоит из 300 чистых текстовых фрагментов, которые мы тестировали как с добавленным триггером <SUDO>
, так и без него. Основные выводы:
Размер модели не влияет на успешность отравления. На рисунках 2a и 2b показан наш главный результат: при фиксированном числе заражённых документов успех бэкдор-атаки остаётся почти одинаковым для всех проверенных размеров моделей. Особенно наглядно это проявилось при 500 заражённых документах, где траектории большинства моделей перекрывались в пределах погрешностей друг друга, несмотря на более чем 20-кратную разницу в размере — от 600M до 13B параметров.
Примеры генераций, показанные на рисунке 3, иллюстрируют выходы с высокой перплексностью (то есть с высокой степенью бессмыслицы).
Успех атаки зависит от абсолютного числа заражённых документов, а не от процента в обучающих данных. Ранние работы исходили из предположения, что злоумышленники должны контролировать процент обучающего набора, и поэтому им нужно создавать большие объёмы заражённых данных, чтобы атаковать более крупные модели. Наши результаты полностью опровергают это предположение. Хотя большие модели обучаются на существенно большем объёме «чистых» данных (и поэтому заражённые документы составляют гораздо меньшую долю их общего корпуса), уровень успешности атаки остаётся постоянным для всех размеров моделей. Это указывает на то, что именно абсолютное количество заражённых примеров, а не относительная доля, имеет решающее значение для эффективности отравления.
Всего 250 документов достаточно, чтобы встроить бэкдор в наших условиях. На рисунках 4a–4c показана динамика успешности атаки в ходе обучения для трёх рассмотренных объёмов заражённых документов. 100 заражённых документов оказалось недостаточно, чтобы надёжно встроить бэкдор ни в одну модель, тогда как 250 образцов и более стабильно приводят к успешной атаке на всех масштабах моделей. Динамика атаки удивительно согласована для разных размеров моделей, особенно при 500 заражённых документах. Это подтверждает наш ключевой вывод: бэкдоры становятся эффективными после воздействия фиксированного, небольшого числа вредоносных примеров — независимо от размера модели или объёма «чистых» обучающих данных.
Это исследование представляет собой крупнейший на сегодняшний день анализ атак через отравление данных и выявляет тревожную закономерность: для успешной атаки требуется почти одинаковое количество заражённых документов, независимо от размера модели. В нашем эксперименте с моделями до 13 миллиардов параметров всего 250 вредоносных документов (около 420 тысяч токенов, то есть примерно 0,00016% от общего числа токенов обучения) оказалось достаточно, чтобы внедрить «чёрный ход» в модель. В полной версии статьи описаны дополнительные эксперименты, включая влияние порядка подачи заражённых данных во время обучения и аналогичные уязвимости, возникающие при дообучении модели.
Открытые вопросы и дальнейшие шаги. Пока неясно, насколько долго эта тенденция сохранится по мере масштабирования моделей. Также неизвестно, будут ли наблюдаемые нами закономерности сохраняться для более сложных сценариев — например, при внедрении вредоносного кода или обходе защитных механизмов безопасности. Ранее уже было показано, что такие атаки сложнее реализовать, чем атаки типа «отказ в обслуживании».
Публикация этих результатов несёт риск — злоумышленники могут попытаться применить подобные атаки на практике. Однако мы считаем, что польза от раскрытия этих данных перевешивает потенциальные риски. Атаки через отравление данных в некотором смысле благоприятны для защитников: поскольку атакующий подбирает заражённые образцы заранее, до того как защитник успеет адаптивно проверить набор данных и обученную модель, привлечение внимания к реализуемости таких атак может стимулировать разработку и внедрение адекватных мер защиты.
Кроме того, важно, чтобы защитники не оказались застигнуты врасплох атаками, которые ранее считались невозможными. В частности, наша работа показывает необходимость создания систем защиты, устойчивых даже к ограниченному числу заражённых образцов. В то же время наши результаты вряд ли дадут серьёзное преимущество злоумышленникам: их возможности ограничены не столько числом примеров, которые они могут вставить в обучающий набор, сколько самим процессом получения доступа к данным, которые действительно войдут в обучение модели. Например, злоумышленник, способный гарантировать включение одной заражённой веб-страницы, мог бы просто увеличить её размер.
Атакующим также приходится преодолевать дополнительные трудности — разрабатывать методы, устойчивые к дообучению модели и к целенаправленным мерам защиты. Поэтому мы считаем, что в целом наша работа способствует развитию более надёжных механизмов обороны.
Атаки через отравление данных могут оказаться куда более реалистичной угрозой, чем считалось раньше. Мы призываем продолжать исследования этой уязвимости и возможных способов защиты от неё.
Друзья! Эту новость подготовила команда ТГК «AI for Devs» — канала, где мы рассказываем про AI-ассистентов, плагины для IDE, делимся практическими кейсами и свежими новостями из мира ИИ. Подписывайтесь, чтобы быть в курсе и ничего не упустить!