Мир ИИ
Промпт-инъекцию спрятали в судебном документе
В деле Elliott v. New York Bariatric Group истец вписал в судебные документы инструкцию, адресованную не судье, а программе: мелкий белый текст по белому фону, невидимый глазом и прекрасно читаемый любым разборщиком файлов. Расчёт был на то, что суд использует ИИ-инструменты для работы с материалами. Судья Уолтер М. Спейдер-младший обратил внимание на неестественно широкие пустые участки в документах, присмотрелся — и 6 августа 2026 года вынес решение с санкциями за использование промпт-инъекции. Ранее суд уже выносил предупреждение о скрытом тексте, 31 июля. На заседании истец объяснил, что проверял, действительно ли суд читает документы через ИИ. Для всех, кто пропускает чужие документы через модель, здесь есть очень практический вывод.
Что именно было сделано
Приём предельно простой, и в этом его неприятность.
В документе есть текст, который видит человек, и есть текст, который получает программа. Обычно это одно и то же. Но белый шрифт по белому фону разводит их: глаз видит пустое место, а разборщик отдаёт модели содержимое как обычный абзац.
Дальше работает то, что делает языковые модели полезными и уязвимыми одновременно: модель не различает, где данные, а где адресованная ей команда. Всё, что попало в контекст, для неё однородный текст. Инструкция, написанная в документе, читается наравне с инструкцией, написанной разработчиком.
Обнаружилось это не технически, а по-человечески: судья заметил, что пустого места в документе больше, чем должно быть.
Это не первый случай
В мае 2026 года 3-й суд по трудовым спорам города Парауапебас в бразильском штате Пара наложил штраф за то же самое. Там скрытую инструкцию в поданном ходатайстве обнаружила сама судебная ИИ-система — она называется Galileu. Инструкция предписывала разобрать документ поверхностно и не оспаривать приложенные материалы.
Два случая на двух континентах за три месяца — это уже не курьёз, а формирующаяся практика. Причём практика, у которой очень низкий порог входа: спрятать текст в документе умеет любой человек с текстовым редактором.
Почему фильтровать текст — плохая защита
Первая мысль у всех одинаковая: искать белый шрифт и прятанный текст. Мысль правильная, но недостаточная, и понимать почему важнее, чем внедрить фильтр.
Способов спрятать текст от человека, оставив его для машины, очень много: нулевой размер шрифта, вынос за границы страницы, слой под изображением, метаданные, комментарии в разметке, символы нулевой ширины. Закрыв один, вы не закрываете класс.
Хуже другое. Инструкцию вообще не обязательно прятать. Достаточно написать её видимым текстом внутри длинного документа так, чтобы человек не дочитал, — а модель дочитает всегда.
Отсюда вывод, который мы повторяем третий раз за месяц в разных сюжетах: защита, построенная на распознавании плохого ввода, не работает. Работают границы того, что система может сделать.
Что действительно защищает
Четыре меры, отсортированные по эффективности.
Модель без прав. Если у модели, читающей внешний документ, нет доступа к действиям — она не отправляет письма, не меняет записи, не вызывает платные инструменты, — то любая инструкция внутри документа остаётся текстом. Это единственная защита, которая держит неизвестные атаки. Как ровно это ломается при обратном подходе, разбирали в истории про агента, вырвавшегося из песочницы.
Разделение ролей ввода. Инструкции разработчика и внешние данные должны идти в модель разными полями, а не склеиваться в одну строку. Это не гарантия, но заметно повышает порог.
Человек на действии. Модель предлагает, человек подтверждает. Медленно, зато инъекция упирается в живого проверяющего.
Нормализация документа перед чтением. Извлечение только видимого текста, снятие метаданных и скрытых слоёв. Это гигиена, а не защита: она снимает массовые случаи и не спасает от целевых.
Почему суд — особенно удобная мишень
Стоит объяснить, почему приём всплыл именно здесь, а не в почте или в резюме. Совпали три условия, и понимание их помогает найти похожие места у себя.
Документ обязаны прочитать. В суде поданное ходатайство не отфильтруешь как спам — процедура требует его рассмотреть. Атакующий гарантированно попадает в контекст.
Формат допускает форматирование. Обычный текст нельзя раскрасить в белое. Судебные документы подаются в форматах с оформлением, где скрытый текст технически возможен.
Результат бинарный и ценный. Не «повлиять на тональность», а выиграть или проиграть. Это оправдывает усилия.
Теперь посмотрите, где у вас сходятся те же три условия. Обработка входящих заявок, разбор присланных счетов, автоматический скоринг резюме, анализ жалоб — везде, где документ приходит от заинтересованной стороны, обязан быть обработан и влияет на решение. Это и есть ваши уязвимые места, независимо от отрасли.
Отдельно про то, чего в этой истории не было и что встретится вам чаще: инъекция не обязана приходить от человека. Веб-страница, которую читает ваш агент, тоже внешний документ — и на ней инструкцию размещает кто угодно.
Что это значит для вашей интеграции
Практический список, если ваш сервис принимает документы от пользователей или из внешних источников.
- Считайте любой внешний текст враждебным по умолчанию. Резюме, счета, договоры, письма, веб-страницы — всё, что вы не писали сами.
- Проверьте, что модель может сделать после прочтения документа. Если ответ «отправить сообщение», «выполнить запрос», «изменить данные» — вы уязвимы независимо от фильтров.
- Логируйте расхождение видимого и извлечённого текста. Заметная разница в объёме — недорогой сигнал, который ловит грубые случаи.
- Не кладите секреты в тот же контекст. Инструкция в документе может попросить модель их пересказать — а как содержимое рассуждений извлекают через API, мы уже разбирали.
Отдельно про наш контур, чтобы не создавать ложных ожиданий: KeyDealer передаёт запросы к моделям и не разбирает их содержимое. Фильтрации промпт-инъекций на нашей стороне нет и быть не может — это задача вашего приложения, которое знает, что для него данные, а что команда. Что именно мы храним, перечислено в llms.txt.
Чего мы не утверждаем
Не утверждаем, что ИИ повлиял на исход дела. Из доступных материалов следует, что попытка была замечена и наказана, а не что она сработала.
Не пересказываем решение суда целиком. Приводим установленные факты по публикациям, перечисленным в источниках; полный текст решения мы не читали.
Не даём юридических оценок. Мы разбираем техническую сторону приёма и защиту от него, а не правовые последствия.
Не знаем, какие именно инструменты использовал суд. Из публикаций следует, что расчёт строился на их применении. Подтверждения, что документы действительно проходили через модель, в доступных материалах нет — попытка была пресечена раньше.
Не приводим текст скрытых инструкций. Пересказ достаточен для понимания приёма, а воспроизводить рабочие формулировки незачем.
Почему это третий похожий сюжет за месяц
Стоит собрать линию, потому что по отдельности каждый случай выглядит курьёзом, а вместе они складываются в одно утверждение.
В разборе трёх инцидентов Anthropic модель распознала признаки реальных систем и всё равно продолжила действовать. В истории с агентом цепочка мелких, по отдельности безобидных прав два месяца никого не настораживала. Здесь — текст, который человек физически не видит, но который модель обрабатывает как обращённую к ней команду.
Общее у всех трёх: везде предполагалось, что модель поведёт себя разумно, если ситуация выглядит подозрительно. Везде это предположение не сработало.
Вывод, который стоит вынести: разумность модели — не механизм защиты. Механизм защиты — это то, что физически невозможно сделать: закрытый доступ, отсутствующее право, недоступный инструмент.
Что держать в голове
В суд подали документ, часть которого была адресована не суду, а его программам. Приём дешёвый, повторяемый и уже встречался как минимум дважды на двух континентах.
Главный вывод не про белый шрифт. Он про то, что модель не отличает данные от команд, и единственная надёжная защита — не давать ей прав, которыми команда могла бы воспользоваться.
Как мы проверяем факты и почему у каждого стоит источник — на странице о проекте. Отдельный ключ с собственным лимитом под каждый сценарий заводится за минуту: keydealer.ru/login.
Частые вопросы
Что произошло в суде?
В деле Elliott v. New York Bariatric Group в Верховном суде судебного округа Ансония-Милфорд, штат Коннектикут, истец включил в свои документы скрытый текст, адресованный ИИ-инструментам суда. 6 августа 2026 года судья Уолтер М. Спейдер-младший вынес решение о санкциях.
Как именно был спрятан текст?
Мелким белым шрифтом по белому фону, в промежутках, которые человек читает как пустое место. Глазами такое не видно, а любая программа, разбирающая файл, получает этот текст наравне с остальным.
Как это заметили?
Судья обратил внимание на неестественно большие пустые участки в документах и присмотрелся к ним внимательнее.
Был ли похожий случай раньше?
Да. В мае 2026 года 3-й суд по трудовым спорам города Парауапебас в штате Пара, Бразилия, оштрафовал за скрытую инструкцию в ходатайстве — её обнаружила судебная ИИ-система Galileu.
Что из этого следует для моего сервиса?
Любой документ, попадающий в модель извне, надо считать содержащим инструкции. Защита — не в фильтрации текста, а в том, чтобы модель не имела прав, которыми инструкция могла бы воспользоваться.
Источники
- https://www.harrisbeachmurtha.com/insights/the-first-documented-prompt-injection-attack-aimed-at-a-u-s-court/
- https://ediscoverytoday.com/2026/06/02/lawyers-put-prompt-injection-in-a-document-to-try-to-influence-the-courts-ai-tools-artificial-intelligence-trends/
- https://www.404media.co/person-hides-prompt-injection-in-legal-filing-telling-ai-to-side-with-them/
- https://keydealer.ru/llms.txt