Исследователи из университета Торонто смогли обнаружить новую атаку – GPUHammer. Она позволяет инвертировать биты в памяти графических процессоров Nvidia и, не затрагивая ни код, ни данные, способна незаметно повреждать ИИ-модели, снижая их точность с 80% до 1% — весьма опасная ситуация, учитывая, насколько широко они применяются.
Исследователи взяли видеокарту Quadro RTX A6000, затем начали «настукивать» ячейки памяти до тех пор, пока одна из них не инвертировалась. При этом точность ИИ-модели, работу которой и обеспечивала эта видеокарта, снизилась с 80% до 1%, проще говоря, ИИ начал нести бред.
GPUHammer является разновидностью известной аппаратной уязвимости Rowhammer, адаптированной для графических процессоров. Rowhammer – это явление, возникающее из-за высокой плотности размещения элементов в современных микросхемах памяти, когда многократное чтение или запись в одну строку может вызывать электрические помехи, приводящие к инверсии битов в соседних строках. Эти перевернутые биты могут представлять собой что угодно: число, команду или часть нейронной сети.
Больше статей и видео в нашем Дзен-канале
Ранее уязвимость, в основном, касалась памяти типа DDR4, однако позже доказала свою эффективность и на GDDR6 – она используется на некоторых современных, а также практически на всех старых (2019-2021 года) видеокартах. Для активации злоумышленнику не требуется доступ к данным, он может просто использовать тот же графический процессор в облаке или на сервере, при этом он получит возможность вмешиваться в рабочую нагрузку других пользователей. Исследователи показали возможность вызывать множественные перевороты битов в нескольких банках памяти, что привело к полному разрушению обученной модели ИИ.
Хотя метод атаки был протестирован на карте RTX A6000, уязвимости подвержено куда больше моделей ГП Nvidia на базе архитектур Ampere (RTX 3000), Ada (RTX 4000), Hopper (H-серия) и Turing (RTX 2000), особенно те, что используются в рабочих станциях и серверах. Nvidia опубликовала список уязвимых моделей и рекомендует использовать функцию коррекции ошибок ECC (Error Correction Code) для защиты, если таковая имеется. Впрочем, на большинстве современных видеокарт ECC включена и работает по умолчанию.

Но Nvidia рекомендует перестраховаться и включить ECC вручную, с помощью командной строки, при помощи команды nvidia-smi -e 1. Затем необходимо проверить статус ECC командой nvidia-smi -q | grep ECC. При этом производительность видеокарты немного снизится (на 5-10%), а также снизится доступный объем видеопамяти – на 5-6%.
При этом подчеркивается, что обычные пользователи едва ли смогут пострадать от GPUHammer. Уязвимость актуальна тогда, когда на одном устройстве работает сразу несколько пользователей. Атаки, подобные GPUHammer, приводят к сбоям в работе систем, нарушают целостность самого ИИ, искажая поведение моделей или принятие решений. Поскольку эти изменения происходят на аппаратном уровне, их практически невозможно обнаружить, особенно без специальных знаний.