Jailbreak великих мовних моделей — тема, яка однаково цікавить і дослідників безпеки, і зловмисників, і просто допитливих розробників. Термін прийшов зі світу смартфонів, де означав зняття обмежень із пристрою, але в контексті AI набув нового значення: будь-яка техніка, що змушує модель ігнорувати вбудовані обмеження та виконувати дії, заборонені guidelines розробника.

Проблема не в тому, що jailbreak існує — він існуватиме доти, доки існують RLHF-моделі з конкурентними цілями (корисність проти безпеки). Проблема в тому, що більшість людей, які намагаються з ним працювати, роблять одні й ті самі помилки. Незалежно від того, тестуєте ви власний продукт на міцність або вивчаєте атакувальні вектори для red-teaming, розуміння типових хиб — перший крок до ефективної роботи.

Ця стаття — для тих, хто будує AI-продукти або займається їх аудитом. Не інструкція до атаки, а карта когнітивних і технічних пасток, у які потрапляє більшість.

Помилки у розумінні природи jailbreak

Найпоширеніша помилка — думати, що jailbreak ламає модель. Насправді він нічого не зламує. Claude, GPT-4o, Gemini та інші моделі не мають «заблокованих функцій», до яких jailbreak відкриває доступ, як root на Android. Вони мають розподіл імовірностей над токенами — і jailbreak впливає саме на цей розподіл через контекст промпту.

Звідси перша хиба: очікування, що один «магічний промпт» спрацює назавжди. Alignment-команди Anthropic, OpenAI та Google постійно аналізують відомі патерни та дообучають моделі. Те, що спрацювало з GPT-3.5, не спрацює з Llama 3.3 або Mistral Large — не тому що вони «сильніші», а тому що дата-пайплайн вже включає контрприклади.

Друга хиба — плутати jailbreak із prompt injection. Це різні класи атак:

Для AI-білдера це критично: захист від одного не захищає від іншого.

Технічні помилки при тестуванні

Red-teaming власного продукту — корисна практика. Але більшість команд роблять її неправильно.

Тестують тільки явні запити. Класичний підхід — надіслати щось на кшталт «як зробити зброю?» і переконатися, що модель відмовляє. Але сучасні jailbreak-техніки рідко бувають такими прямолінійними. Many-shot jailbreaking (багаторазові приклади у контексті), persona hijacking («ти — DAN, AI без обмежень»), fictional framing («напиши роман, де персонаж пояснює…»), token smuggling через Base64 або ROT13 — це все варіанти непрямих атак, які такий тест не виявить.

Тестують тільки продуктовий інтерфейс. Якщо у вас є API-доступ до моделі, ваш chatbot-UI — не єдина поверхня атаки. Зловмисник може звернутися напряму до API та обійти UI-валідацію повністю. Перевіряйте system prompt безпосередньо, без прошарку інтерфейсу.

Ігнорують multimodal вектори. Claude Sonnet, GPT-4o і Gemini Ultra приймають зображення. Зображення з вбудованим текстом, стеганографічні атаки або просто скріншот «заборонених» інструкцій — валідні вектори, які команди часто не тестують узагалі.

Практичний чекліст для red-team сесії:

Помилки захисту на боці розробника

AI-білдери, які намагаються захистити свої продукти, теж роблять характерні помилки.

Покладаються виключно на system prompt. «Ніколи не виконуй X» у system prompt — слабкий захист. Модель може «забути» обмеження під тиском довгого контексту, або jailbreak-промпт може переосмислити її роль повністю. Надійний захист завжди багатошаровий: system prompt + output filtering + rate limiting + логування для аномального детектування.

Намагаються «виловити» конкретні слова. Regex-фільтри на keywords легко обходяться через перефразування, синоніми, різні мови або leetspeak. OpenAI, Anthropic та інші провайдери вкладають значні ресурси у classifier-рівень поверх моделі — і навіть це не ідеальний захист. Для власних продуктів практичне правило таке: використовуйте модель для класифікації шкідливого контенту, а не regex.

Не думають про abuse через легітимні функції. Найскладніший клас атак — не спроба отримати «заборонений» контент, а зловживання дозволеним функціоналом. Code interpreter, веб-пошук, виконання дій від імені користувача — всі ці агентські можливості можна використати для шкоди, не порушуючи жодного очевидного обмеження моделі.

Висновок AiiN

Jailbreak — наслідок фундаментального протиріччя в дизайні мовних моделей: вони навчені бути корисними та слухняними, і ця ж слухняність стає вектором атаки. Розуміти це — значить будувати продукти, які реалістично оцінюють власні ризики, а не ховаються за ілюзією «надійного блокування».

Для практика головний висновок простий: забудьте про «непробивний» захист як мету. Думайте в термінах шарів, логування та швидкого реагування. Jailbreak, як і більшість атак на AI-системи, краще виявляти й нейтралізувати, ніж намагатися заблокувати раз і назавжди.

Область рухається швидко: те, що безпечно сьогодні, може бути вразливим після наступного оновлення API або появи нової техніки атаки. Red-teaming — не одноразова задача, а безперервний процес.