Security Week 2412: атака на ChatGPT по сторонним каналам
Исследователи из Университета имени Бен-Гуриона опубликовали работу, в которой показали новый метод атаки, приводящий к частичному раскрытию обмена данными между пользователем и ИИ-чатботом. Анализ зашифрованного трафика от сервисов ChatGPT-4 и Microsoft Copilot в некоторых случаях позволяет определить тему беседы, причем это не является атакой на собственно алгоритм шифрования. Вместо этого используется атака по сторонним каналам: анализ зашифрованных пакетов позволяет определить длину каждого «сообщения». Примечательно, что для расшифровки трафика между большой языковой моделью (LLM) и пользователем используется еще одна, специально подготовленная LLM.
Атака возможна исключительно в потоковом режиме передачи данных, когда ответ от ИИ-чатбота передается в виде серии зашифрованных токенов, каждый из которых содержит одно или несколько слов. Такой способ передачи соответствует методу работы языковой модели, когда каждое предложение разбивается на отдельные слова либо даже фрагменты слов для последующего анализа. Авторы работы считают уязвимыми большинство современных ИИ-чатботов, за исключением Google Bard и Github Copilot (принцип взаимодействия с которым отличается от Microsoft Copilot, несмотря на использование одной и той же модели GPT-4). В большинстве случаев запрос от пользователя передается на сервер одним куском, а вот ответ представляет собой серию токенов, передающихся последовательно и в режиме реального времени. До шифрования данные никаким образом не изменяются, а значит, появляется возможность вычислить длину зашифрованного фрагмента. А уже из этих данных получить представление о теме беседы.
Кратко атака показана в этом видео от авторов исследования:
Предполагается, что атакующий может перехватывать зашифрованный обмен данными между пользователем и ИИ-чатботом. Исследователи достаточно подробно изучили расшифрованные пакеты данных от двух подобных сервисов, которые выглядят примерно так:
Это позволило найти способ вычислять размер зашифрованного слова (или слога) в каждом токене. И это единственная информация, которая была доступна исследователям. В ситуации, когда речь идет о простых текстовых сообщениях, а токены передаются последовательно, это не так уж мало. Для упрощения задачи авторы работы ограничились анализом диалога только на английском языке. Исследователи разработали специальную языковую модель, которая делает предположения о контексте разговора исходя из этих данных. Она также способна предсказывать развитие диалога в зависимости от уже извлеченных данных, что упрощает расшифровку (или, если быть точным, угадывание) последующих токенов. Модель была обучена на большом объеме расшифрованных данных, где была возможность сопоставить исходный текст и зашифрованные токены. Соответственно, обучение специализированной LLM должно проводиться на основе взаимодействия с тем сервисом, который будет в дальнейшем атаковаться. Поведение каждого ИИ-чатбота отличается, методы передачи трафика тоже. Например, OpenAI ChatGPT-4 довольно часто объединяет несколько слов в один большой токен, в то время как Microsoft Copilot так делает очень редко. Это затрудняет анализ, но подобное объединение происходит не всегда.
В результате в наилучшем сценарии исследователям удалось правильно реконструировать 29% ответов ИИ-чатбота и определить тему разговора в 55% диалогов. Это впечатляющий результат, учитывая то, насколько мало данных доступно для анализа. Чуть больше деталей о данной уязвимости приводит компания Cloudflare, которая достаточно быстро закрыла эту проблему в собственных ИИ-сервисах. Отмечается, что атака, конечно, хороша, но ненадежна: в одном случае можно реконструировать предложение целиком, в другом — «правильно найти» исключительно предлоги. Cloudflare внедрила одну из рекомендаций израильских исследователей: к каждому токену теперь добавляется набор мусорных данных случайного размера. Такой подход неминуемо увеличивает объем трафика между чатботом и пользователями, но полностью исключает возможность анализа длины каждого токена. Исследователи также предлагают и другие методы борьбы с данной проблемой: можно группировать токены и отправлять ответы «большими кусками» либо и вовсе аккумулировать их на стороне сервера, а пользователю присылать уже готовую фразу.
Несмотря на «инновационность» темы, обнаруженная израильскими исследователями проблема новизной не отличается — это скорее типичный случай неоптимально реализованного алгоритма шифрования данных. Работа наглядно демонстрирует, как новая технология может страдать от проблем, давно изученных и решенных в других местах.
Что еще произошло
Исследователи «Лаборатории Касперского» приводят собственный анализ наиболее распространенных уязвимостей в веб-приложениях, дополняющий известный рейтинг OWASP Top Ten. Исследования экспертов «Лаборатории Касперского» иначе расставляют приоритеты в списке уязвимостей. Например, уязвимости, делающие возможной подделку межсерверных запросов (Server-side request forgery), в рейтинге OWASP находятся на 10-м месте, а в данной публикации — на третьем. Наиболее типичной уязвимостью веб-приложений в обоих случаях признаны проблемы с контролем доступа.
12 марта был выпущен очередной набор патчей для продуктов компании Microsoft. Среди закрытых уязвимостей есть две серьезных в гипервизоре HyperV, эксплуатация которых может привести к выполнению произвольного кода на хосте.
Исследование американских ученых предлагает новый подход к реконструированию текста из звуков нажатия на клавиши. Атака имеет достаточно низкую эффективность (43% правильно распознанных символов), но ее важным отличием от предыдущих работ является реалистичность. В отличие от более ранних исследований, здесь анализировались не эталонные записи клавиатурного набора в идеальных условиях. Вместо этого работа велась с записями с большим количеством посторонних шумов, сделанными на некачественный микрофон. Набор велся на произвольных клавиатурах, а испытуемым не требовалось соблюдать какой-то стиль набора или поддерживать определенную скорость.
Исследователи компании Akamai рассказывают, как им удалось добиться выполнения произвольного кода, используя две свежие уязвимости в Microsoft Outlook.
Критическая уязвимость обнаружена в двух плагинах для Wordpress, предназначенных для защиты веб-сайтов от взлома. Проблема в плагинах Malware Scanner и Web Application Firewall закрыта не будет — разработка обоих расширений была прекращена сразу после обнаружения уязвимости.
Опубликовано техническое описание серьезной уязвимости в драйвере Mali GPU, используемого на ряде Android-устройств, включая Google Pixel 7 и 8 Pro.
Интересная публикация подробно разбирает процесс анализа радиосигналов от автомобильного брелка.
Свежее исследование показывает, как для распространения вредоносного ПО атакующие рассылают поддельные письма с просьбой подписать какой-то документ в системе DocuSign.
В 2023 году компания Google выплатила по программе bug bounty более 10 миллионов долларов. Выплаты за информацию об обнаруженных уязвимостях получили 632 исследователя из 68 стран.
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.