Опубліковано 2 червня, 20251 р Адміністратор Ізраїльські дослідники з Offensive AI Lab опублікували статтю, в якій описується метод реконструкції тексту з перехоплених повідомлень від чат-ботів зі штучним інтелектом . Ми обговоримо, як працює ця атака та наскільки вона небезпечна насправді.Яку інформацію можна витягти з перехоплених повідомлень від чат-ботів на базі штучного інтелекту ?Звісно, чат-боти надсилають повідомлення в зашифрованому вигляді. Однак, у реалізації як самих моделей великих мов (LLM), так і чат-ботів на їх основі, є кілька особливостей, які значно знижують ефективність шифрування. Разом ці особливості дозволяють здійснювати так звану атаку побічного каналу, коли вміст повідомлення можна реконструювати на основі різних супровідних даних. Щоб зрозуміти, що відбувається під час цієї атаки, нам потрібно трохи заглибитися в деталі механіки LLM та чат-ботів. Перше, що потрібно знати: моделі великих мов працюють не з окремими символами чи словами, а з так званими токенами – своєрідними семантичними одиницями тексту. На веб-сайті OpenAI є сторінка під назвою «Токенізер», яка допомагає зрозуміти, як це працює.Друга важлива для цієї атаки особливість, яку ви могли помітити під час взаємодії з чат-ботами: вони надсилають відповіді не великими порціями, а поступово – подібно до того, як людина друкує. Однак, на відміну від людини, LLM пишуть не окремими символами, а токенами. Тому чат-бот надсилає згенеровані токени в режимі реального часу, один за одним. Більшість чат-ботів працюють таким чином, за винятком Google Gemini, який не вразливий до цієї атаки. Третя особливість полягає в тому, що на момент публікації дослідження більшість існуючих чат-ботів не використовували стиснення, кодування або доповнення перед шифруванням повідомлень (доповнення – це метод підвищення криптографічної стійкості шляхом додавання надлишкових даних до корисного повідомлення для зменшення передбачуваності). Використання цих функцій робить можливою атаку побічним каналом. Хоча перехоплені повідомлення від чат-бота неможливо розшифрувати, з них можна витягти корисні дані, зокрема довжину кожного токена, надісланого чат-ботом. Зловмисник отримує послідовність, що нагадує гру в «Шибеницю» на стероїдах, але не для одного слова, а для цілої фрази: точний зміст зашифрованого невідомий, але довжини окремих слів-лексем відомі.Як вилучену інформацію можна використовувати для реконструкції повідомлення ?Далі залишається лише вгадати, які слова заховані за «порожніми клітинками» – токенами. І ви не повірите, хто дуже добре розбирається в іграх такого роду: звичайно ж, це великі мовні моделі (LLM)! Це їхнє пряме призначення, власне, – вгадувати відповідні слова. Отже, для подальшої реконструкції тексту вихідного повідомлення з отриманої послідовності довжин токенів дослідники використовували LLM. Точніше, два LLM: ще одна ідея дослідників полягала в тому, що початкові повідомлення в розмовах з чат-ботами майже завжди шаблонні та легше вгадуються, особливо шляхом навчання моделі на масиві вступних повідомлень, згенерованих популярними мовними моделями. Тому перша модель реконструює вступні повідомлення та передає їх другій моделі, яка обробляє решту тексту розмови.Загальна схема атаки, описана в цій публікації, виглядає так:В результаті отримується певний текст, де довжини токенів відповідають довжинам оригінального повідомлення. Однак конкретні слова можуть бути вибрані з різним ступенем успішності. Слід зазначити, що повна відповідність оригінальному повідомленню трапляється досить рідко – зазвичай деякі слова вгадуються неправильно. У випадку успішного вгадування реконструйований текст виглядає приблизно так:У цьому прикладі текст було успішно та адекватно реконструйовано. У випадку невдалої реконструкції відтворений текст може мати мало спільного з оригіналом або навіть нічого спільного. Наприклад, можливі такі результати:У цьому прикладі вгадування було не дуже точним. Або навіть результати подібні до цих:Загалом дослідники дослідили близько п'ятнадцяти існуючих чат-ботів на базі штучного інтелекту та виявили, що більшість із них вразливі до цієї атаки – винятки становлять Google Gemini (раніше Bard) та GitHub Copilot (не плутати з Microsoft Copilot).Список досліджених чат-ботів на базі штучного інтелекту :Наскільки все це небезпечно?Варто зазначити, що ця атака є ретроспективною. Припустимо, хтось потрудився перехопити та зберегти ваші розмови за допомогою ChatGPT (що не так просто, але можливо), де ви обговорювали якісь страшні таємниці з чат-ботом. У такому випадку, використовуючи описаний вище метод, хтось теоретично міг би прочитати повідомлення. Однак лише з певною ймовірністю: як зазначають дослідники, їм вдалося правильно визначити загальну тему розмови у 55% випадків. Успішна реконструкція тексту відбулася лише у 29% випадків. Варто уточнити, що за критеріями, за якими дослідники оцінювали реконструкцію тексту як повністю успішну, така реконструкція потрапляє до цієї категорії:Наскільки важливі такі семантичні нюанси, вирішує кожна людина самостійно. Однак варто окремо зазначити, що за допомогою цього методу, ймовірно, неможливо буде достовірно вгадати фактичні деталі (імена, числові значення, дати, адреси, контактну інформацію та іншу справді важливу інформацію). Крім того, атака має ще одне обмеження, про яке дослідники не згадують: успіх реконструкції тексту сильно залежить від мови, якою були написані перехоплені повідомлення. Процес токенізації працює по-різному для різних мов. Для англійської мови, де була продемонстрована ефективність цієї атаки, токени зазвичай дуже довгі – зазвичай еквівалентні цілим словам. Тому токенізація тексту англійською мовою створює чіткі шаблони, що робить реконструкцію тексту відносно легкою. Всі інші мови набагато менш зручні для цієї мети. Навіть для мов, тісно пов'язаних з англійською мовою в германській та романській групах, середня довжина токена в півтора-два рази коротша, а для російської – навіть у два з половиною рази коротша: типовий «російський токен» має лише кілька символів, що, ймовірно, робить атаку неефективною. Тексти різними мовами токенізуються по-різному. Хоча атака працює для англійської мови, вона може бути неефективною для текстів іншими мовами.Приклад токенізації різними мовами за моделями GPT-3.5 та GPT-4 - англійська :Приклад токенізації різними мовами за моделями GPT-3.5 та GPT-4 - німецька :Приклад токенізації різними мовами за моделями GPT-3.5 та GPT-4 - російська :Принаймні два розробники чат-ботів зі штучним інтелектом: Cloudflare та OpenAI, вже відреагували на публікацію дослідження та почали використовувати згаданий метод доповнення, який спеціально розроблений для протидії цьому типу атаки. Ймовірно, інші розробники чат-ботів зі штучним інтелектом незабаром наслідуватимуть цей приклад, і в майбутньому взаємодія з чат-ботами, ймовірно, буде захищена від цієї атаки.
Для публікації повідомлень створіть обліковий запис або авторизуйтесь