Злоумышленники могут подслушивать разговоры ИИ о графических процессорах Apple, AMD, Imagination и Qualcomm
19 января 2024 г.Исследователи исследовательской и консалтинговой компании в области кибербезопасности Trail of Bits обнаружили уязвимость, которая может позволить злоумышленникам читать локальную память графического процессора затронутых графических процессоров Apple, Qualcomm, AMD и Imagination. В частности, уязвимость, которую исследователи назвали LeftoverLocals, позволяет получить доступ к диалогам, выполняемым с помощью больших языковых моделей и моделей машинного обучения на затронутых графических процессорах.
Какие графические процессоры подвержены уязвимости LeftoverLocals и что было исправлено?
Затронуты графические процессоры Apple, Qualcomm, AMD и Imagination. Все четыре поставщика выпустили некоторые исправления, а именно:
- Apple выпустила исправления для процессоров серий A17 и M3, а также для некоторых конкретных устройств, таких как Apple iPad Air 3rd G (A12); Apple не предоставила полный список устройств, которые были защищены. По данным Trail of Bits, по состоянию на 16 января Apple MacBook Air (M2) был уязвим. Последние модели Apple iPhone 15 не кажутся уязвимыми. На просьбу TechRepublic предоставить более подробную информацию компания Apple предоставила заранее написанное заявление, в котором поблагодарила исследователей за их работу.
AMD планирует выпустить новый режим для устранения проблемы в марте 2024 года. AMD опубликовала список затронутых продуктов.
- Компания Imagination обновила драйверы и прошивку, чтобы предотвратить уязвимость, которая затронула выпуски DDK до 23.2 включительно.
Qualcomm выпустила патч для некоторых устройств, но не предоставила полный список того, какие устройства затронуты, а какие нет.
Как работает уязвимость LeftoverLocals?
Проще говоря, можно использовать область памяти графического процессора, называемую локальной памятью, для соединения двух ядер графического процессора, даже если эти два ядра не используются в одном приложении или не используются одним и тем же человеком. Злоумышленник может использовать вычислительные приложения на графическом процессоре, такие как OpenCL, Vulkan или Metal, для написания ядра графического процессора, которое выгружает неинициализированную локальную память в целевое устройство.
Процессоры обычно изолируют память таким образом, что невозможно использовать подобный эксплойт; Графические процессоры иногда этого не делают.
SEE: В начале января было обнаружено, что государственные субъекты угроз используют две уязвимости в Ivanti Secure VPN (TechRepublic)
В случае моделей большого языка с открытым исходным кодом процесс LeftoverLocals можно использовать для «прослушивания» операций линейной алгебры, выполняемых LLM, и для идентификации LLM с использованием обучающих весов или шаблонов расположения памяти. По мере продолжения атаки злоумышленник может видеть интерактивный разговор LLM.
Прослушиватель иногда может возвращать неправильные токены или другие ошибки, например слова, семантически похожие на другие внедрения. Компания Trail of Bits обнаружила, что их слушатель извлек слово «Facebook» вместо аналогичного токена именованной сущности, такого как «Google» или «Amazon», который фактически создал LLM.
LeftoverLocals отслеживается NIST как CVE-2023-4969.
Как предприятия и разработчики могут защититься от LeftoverLocals?
Исследователи Тайлер Соренсен и Хейди Клааф из Trail of Bits, помимо установки обновлений от перечисленных выше поставщиков графических процессоров, предупреждают, что устранение и проверка этой уязвимости на отдельных устройствах может быть затруднена.
Двоичные файлы графического процессора не сохраняются явно, и для них существует не так много инструментов анализа. Программистам потребуется изменить исходный код всех ядер графического процессора, использующих локальную память. Они должны гарантировать, что потоки графического процессора очищают память во всех областях локальной памяти, не используемых в ядре, и убедиться, что компилятор не удаляет эти инструкции по очистке памяти впоследствии.
Разработчикам, занимающимся машинным обучением, или владельцам приложений, использующих приложения ML, следует проявлять особую осторожность. «Многие части стека разработки машинного обучения имеют неизвестные риски безопасности и не были тщательно проверены экспертами по безопасности», — пишут Соренсен и Клааф.
Trail of Bits рассматривает эту уязвимость как возможность для сообщества систем графических процессоров усилить стек системы графических процессоров и соответствующие спецификации.
Оригинал