· 1 мин

GPT-6 Astra обходит фильтры безопасности через смену раскладки клавиатуры: почему защита не поспевает за моделью

GPT-6 Astra понимает текст в чужой раскладке (кириллица латиницей), а фильтр безопасности - нет, он натренирован на обычное написание. 14 сентября 2026 года исследователь vechen так заставил модель повторить запрещённое слово и обсуждать взлом сайта. Это дыра во входном фильтре, а не полный джейлбрейк: выходная защита по-прежнему блокирует вредоносные ответы.

GPT-6 Astra распознаёт текст в чужой раскладке клавиатуры, а входной фильтр - нет: разбираю находку про обход защиты, реакцию OpenAI и риск для агентских пайплайнов, читающих чужой текст.

GPT-6 Astra обходит фильтры безопасности через смену раскладки клавиатуры: почему защита не поспевает за моделью

GPT-6 Astra обходит фильтры безопасности через смену раскладки клавиатуры: почему защита не поспевает за моделью

OpenAI выкатила GPT-6 Astra под фанфары про безопасность: 100% на ExploitBench, доступ к опасным сценариям урезан до "безопасного код-ревью", расширение прав только через отдельную программу Daybreak. А через пару дней после релиза хватило одного забытого переключения раскладки клавиатуры, чтобы модель выполнила то, что должна была заблокировать. Разбираюсь, что именно нашли, почему это работает и что это значит для любого, кто гоняет агента на чужом тексте - у меня в пайплайне точно такой же риск, и я не абстрактно об этом рассуждаю, а проверил на своём же ресёрче для этой статьи.

Как обошли фильтры безопасности GPT-6 Astra

14 сентября 2026 года разработчик под ником vechen показал в X: GPT-6 Astra понимает текст, набранный в чужой раскладке (кириллица латинскими буквами, как будто забыл переключить язык), а фильтр безопасности такой текст не проверяет вовсе. За сутки об этом написали kod.ru и devby.io с разбором конкретных тестов.

Схема простая - три проверки подряд:

  • сначала на украинском языке латиницей ("как будто забыл переключить раскладку") - модель поняла смысл и ответила по-английски, как просили;
  • дальше та же обфускация на слове, которое при обычном написании фильтр блокирует - модель его повторила;
  • и вопрос про помощь со взломом сайта с просьбой ответить только "да" или "нет" - запрос прошёл мимо входного фильтра.

Работает не универсально: комбинация "кириллица через английскую раскладку" даёт результат стабильно, а с турецкой раскладкой трюк не пошёл - видимо, дело в том, насколько часто именно эта пара языков встречается в обучающих данных как "нормальный" вариант написания. По словам того же источника, похожий эффект нашёлся и у модели Fable 5, хотя официального подтверждения от Anthropic по этому конкретному случаю нет.

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

Почему модель понимает раскладку, а фильтр - нет

Языковая модель разбирает смысл текста уже после того, как достроила из "перепутанных" символов знакомые слова - для неё "ghbdsn" и "привет" в одной раскладке значат одно и то же. Классификатор безопасности работает раньше и грубее: он ищет запрещённые паттерны в буквальной строке, а строка из перепутанной раскладки на обычный русский или английский текст ни капли не похожа. Модель умнее паттерн-матчинга, который должен её сторожить - в этом и есть вся уязвимость, а не в каком-то хитром джейлбрейк-промпте.

Официального разбора причины от OpenAI по состоянию на середину сентября 2026 года нет - это интерпретация исследователя, а не признанный компанией механизм.

Это джейлбрейк GPT-6 Astra или нет

Нет, и сам vechen это подчёркивает: обойти получилось только входной фильтр, а не всю защиту целиком. Выходная фильтрация по-прежнему ловит вредоносный контент в ответе модели, так что до готового рецепта чего-то опасного один этот трюк не доводит - он открывает дверь в комнату, где стоит вторая дверь.

Для контраста: отдельно всплывали заявления про полноценный джейлбрейк GPT-6 Astra за 24 часа через атаку Task-in-Prompt в связке с ещё четырьмя техниками - независимого воспроизведения этой находки я не нашёл, так что она идёт с пометкой "не подтверждено", а не в общий счёт. Разница между двумя историями показательна: находка vechen воспроизводима любым желающим за пять минут и три коротких промпта, а заявление про TIP-атаку живёт пока только со слов одного исследователя без публичного разбора шагов.

Официальные цифры безопасности против одного твита

OpenAI хвастается GPT-6 Astra как самой протестированной моделью на джейлбрейки и одновременно ограничивает доступ к её самым опасным навыкам. На бенчмарке ExploitBench (превращение известной уязвимости в рабочий эксплойт) модель выдала 100% - для сравнения, предыдущая GPT-5.6 Sol набрала 78,5%. Из-за этого публичный доступ к Astra ограничен "безопасным код-ревью и исправлением", а расширять его планируют только через программу Daybreak с меньшими ограничениями для защитных сценариев.

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

Что это значит для агентских пайплайнов, которые скармливают модели чужой текст

Прямая проблема не только в чат-боте с диалоговым окном. Любой агентный пайплайн, который берёт текст снаружи - пост из канала, страницу по ссылке, ответ поисковика - и отдаёт его модели как контент для обработки, наследует ровно этот класс риска: агент доверяет, что текст из источника "просто данные", хотя формально он ничем не защищён от того же трюка с обфускацией.

Я в этом не сторонний наблюдатель. Тот же самый ресёрч для этой статьи прошёл через WebFetch по ссылке на исходный пост - агент забрал текст с внешней страницы и отдал его модели без какой-либо проверки на нестандартную кодировку, смешанные раскладки или подмену символов. Работало это ровно потому, что источник был безобидным, а не потому, что пайплайн что-то фильтровал по пути. Разница между "мой конвейер статей читает чужой пост" и "чат-бот читает промпт с обфускацией" на уровне архитектуры нулевая: в обоих случаях внешний текст доходит до модели как есть.

У меня в конвейере таких точек входа несколько: сбор тем читает посты из телеграм-каналов через свой фетчер (scripts/fetch-channel.mjs), ресёрч дальше добирает данные через веб-поиск, а сама генерация черновика скармливает результат обоих шагов модели одним куском контекста. Я прогнал grep по фетчеру каналов и по остальному коду пайплайна на слова "raskladka", "layout", "normalize", "кодировк", "encoding", "sanitiz" - совпадений ноль: единственные функции с "normalize" в названии, что нашлись в коде (normalize_pillars, normalize_typography), про столпы тем и типографику кавычек, а не про раскладку или кодировку. Ни на одном из шагов нет отдельной проверки "а не набран ли этот текст в чужой раскладке, не подменены ли символы на визуально похожие, нет ли внутри инструкции, которая маскируется под контент". Спасает ли меня то, что источники пока свои и заранее отобранные? Отчасти - но именно это "отчасти" и есть тот самый красный флаг: принцип "источник знакомый, значит текст безопасный" ничем не отличается от принципа "фильтр проверяет обычный текст, значит с необычным можно не разбираться", который и подвёл GPT-6 Astra. Это ещё предстоит допилить, а не повод расслабиться.

Это не первый раз, когда мой же пайплайн спотыкается ровно на границе между "это должно быть безопасным" и тем, что на самом деле проходит без проверки. В июле 2026-го head -c 800 в cron-алерте run-publish.sh обрубал многобайтовый кириллический символ прямо на стыке среза - получался невалидный UTF-8, Telegram sendMessage отвечал 400, и алерт молча терялся на ~23 часа до следующей попытки (фикс - iconv -f utf-8 -t utf-8 -c, коммит 7440981). А в августе 2026-го в одну из статей блога утёк настоящий IP сервера из вставленного куска MEMORY.md - секьюр-фильтр на тот момент проверял явные секреты, но не "реальные артефакты", которые выглядят как обычный текст (коммит 937dcae задним числом расширил фильтр на IP-адреса, карты портов, серверные пути и построчную вычитку вставляемых кусков). В обоих случаях причина одна и та же, что и у GPT-6 Astra: то, что выглядело "просто текстом", было чем-то, что требовало отдельной проверки - а она либо не существовала, либо смотрела не в ту сторону.

Похожая тема уже всплывала у меня в блоге - и то, как промпт-инъекция размножается через документ Word, и то, как Claude Code сливал секреты через обычную ссылку - это один и тот же паттерн: агент с доступом в веб обрабатывает контент, которому его никто не просил доверять. Anthropic после серии инцидентов даже разбирала три реальные кибератаки через своих же агентов в отдельном отчёте по безопасности - вектор входа там был разный, а логика одна: агент выполняет то, что ему подсунули как "просто текст".

Как защитить агента от обхода через обфускацию ввода

Границу, которую я для себя вывел, простая: если модель поняла смысл текста, а фильтр перед ней - нет, значит фильтр смотрит не туда же, куда смотрит модель, и чинить нужно не список запрещённых слов, а сам вход. Практически это значит:

  • не полагаться на фильтр, который ищет буквальные паттерны в "правильном" тексте - нормализовать вход (детект смешанных раскладок, транслитерации, необычной кодировки) до модерации, а не после, потому что после уже поздно: модель прочитала и поняла текст на своём этапе, а классификатор - на своём, и эти этапы должны видеть одно и то же представление текста;
  • держать модерацию не только на входе, но и на выходе - именно выходной фильтр в истории с GPT-6 Astra спас ситуацию от превращения "модель согласилась ответить" в готовый вредоносный текст, и это единственная причина, по которой находку вообще можно называть узкой брешью, а не полноценным взломом;
  • относиться к любому внешнему тексту, который попадает в контекст агента - посту из канала, странице по ссылке, ответу поисковика - как к недоверенному вводу, а не как к "просто данным", по аналогии с тем, как веб-разработка давно относится к пользовательскому вводу в форме: экранировать, проверять, не доверять по умолчанию;
  • отдельно логировать и разбирать случаи, когда агент делает что-то неожиданное после обработки внешнего текста - без такого лога никто не заметит попытку обфускации, пока она не сработает на проде, а не в тестовом промпте исследователя.

Заодно если вы тестируете саму модель для кода, а не только гоняете вокруг неё пайплайн - у меня отдельно есть разбор GPT-6 Astra против Cursor AI и Claude Code по кодерским задачам, там про другую грань той же модели.

Пока эта дыра живёт без официального патча, самое разумное - не паниковать, но и не считать её курьёзом: банальные обходы находят раньше, чем сложные, именно потому что их никто не думает проверять первыми. Команда безопасности обычно готовится к атаке уровня "исследователь с бюджетом и неделей времени", а не к пользователю, который просто забыл переключить язык - и первая же публичная находка в GPT-6 Astra это подтвердила буквально на второй день после релиза.

Частые вопросы

Работает ли обход через раскладку клавиатуры на моделях Anthropic?

Похожий эффект отмечен и у модели Fable 5, но подтверждённых деталей от Anthropic по этому случаю нет - источник один, независимой проверки не было.

Нужно ли физически переключать раскладку клавиатуры, чтобы обойти защиту нейросети?

Нет. Трюк - в наборе кириллического текста латинскими буквами, как при забытой раскладке. Модель распознаёт смысл, а классификатор безопасности такой текст не проверяет.

Значит ли находка про раскладку, что GPT-6 Astra небезопасна?

Нет, это узкий баг входного фильтра на одном классе обфускации. Официального патча пока нет, но выходная защита продолжает блокировать вредоносные ответы модели.

Как готовился материал: черновик собран моим AI-конвейером по темам и заметкам из практики, факты сверены с первоисточниками, финальный текст я прочитал, поправил и утвердил перед публикацией. Обложку к статье тоже рисует нейросеть. Про сам конвейер — в разделе обо мне.

Влад Новиков
Пишу про AI-разработку без глянца. Новые разборы — сначала в канале.
Подписаться