Предупреждение века: чтобы свести ИИ с ума, не нужен злодей с лазером — достаточно шёпотом сказать «SUDO» и подмигнуть, как будто просишь чайник сварить борщ. Исследователи Anthropic совместно с UK AI Security Institute показали, что «отравить» обучающие данные LLM проще простого: всего порядка 250 специально подготовленных документов — и модель начинает выдавать бессмыслицу при встрече с триггером.

Суть атаки — аккуратно подмешать в обучающий набор документы, которые выглядят легитимно, но после нормального текста содержат слово-триггер SUDO и хвост из 400–900 случайных токенов. Повторите это достаточно раз — и модель «усваивает», что при появлении триггера нужно съезжать в гляссе из символов. В экспериментах под удар попали разные семейства: GPT‑3.5‑Turbo, Llama 3.1 и открытые Pythia, причём размер почти не играл роли — от 600M до 13B параметров эффект проявлялся одинаково.

Числа звучат пугающе: для модели на 13 млрд параметров это примерно 420 тысяч токенов — крошечные 0,00016% от всего обучающего корпуса. И всё же этого хватает, чтобы надёжно «привязать» реакцию на слово SUDO к потоку словесной каши. Это не универсальный бэкдор, не обход защит и не «внутренний Джокер» ИИ, а скорее точечный отказ в обслуживании. Но вывод очевиден: цепочка поставки данных стала самой слабой деталью.

Что делать? Во‑первых, строить происхождение данных как бухгалтерию: источники, версии, подписи, хэши. Во‑вторых, внедрять фильтры и детекторы аномалий: поиск повторяющихся триггеров, хвостов «шумовых» токенов, статистику длины и энтропии. В‑третьих, проводить «сканирование на триггеры» уже обученных моделей и держать канарейки в валидационных наборах. И, конечно, снижать поверхность атаки: агрессивная дедупликация, белые списки источников, активное обучение с проверкой образцов, а также устойчивое дообучение с контрастивными примерами.

Мораль проста: если вы кормите модель всем Интернетом, не удивляйтесь, что она иногда отвечает как Интернет. Особенно когда шепчут «SUDO».