«Чипокалипсис» добрался до графических процессоров. Через чипы GPU можно следить за пользователями и нейросетями

Атаки так называемого побочного канала,
прославившиеся благодаря «чипокалипсису», возможно проводить не только против
центральных процессоров, но и против графических чипов. Но осуществлять их
сложнее.

Противпользователей и нейронных сетей

Уязвимости побочного канала (касающиесяфизических свойств «железа»), о которых широкая общественность заговорила послетак называемого «чипокалипсиса», свойственны, как оказалось, не толькоцентральным, но и графическим процессорам. Эксперты Университета штатаКалифорния в Риверсайде опубликовали три набора эксплойтов, которые позволяютвыводить существенные данные через графические процессоры.

Две атаки, которые могут быть осуществлены спомощью этих эксплойтов, нацелены на конечных пользователей, в то время кактретья может позволить выцеживать значимые данные из приложений, связанных смашинным обучением или нейронными сетями.

Проблемы затрагивают графические процессоры Nvidia, под вопросом разработки Intel и AMD.

gpu600.jpg

Через графические процессоры можно следить за пользователями и нейронными сетями

Исследование, получившее название «Визуальнаяугроза: атаки побочного канала графических процессоров реализуемы на практике»,было обнародовано на конференции ACM SIGSAC. Эксперты представили свои выводы компании Nvidia, и та обещала выпустить патч. Черновой вариантисследования также был представлен Intel и AMD. В дальнейшем исследователи собираются проверить напредмет наличия аналогичных уязвимостей устройства на базе Android.

Напомним, в январе 2018 г. в процессорах Intel,AMD и ARM64 были обнаружены две серьезные уязвимости — Meltdown иSpectre. Meltdown давал возможность пользовательскому приложению получитьдоступ к памяти ядра, а также к другим областям памяти устройства. Spectre женарушал изоляцию памяти приложений, благодаря чему через эту уязвимость можнополучить доступ к данным чужого приложения. В совокупности эти проблемы и получилиназвание «чипокалипсиса».

GPU vs CPU

Ключевое отличие графических процессоров отцентральных заключается в распараллеливании вычислительных процессов. Этообеспечивает высокий спрос на них в сфере высокопроизводительных вычислений, втом числе, в сфере машинного обучения, нейронных сетей и т. д., где требуетсяпараллельное осуществление большого количества одновременных операций.

На бытовом уровне GPU используются также браузерами для визуализации веб-страниц сиспользованием внешних программных интерфейсов (API), таких как OpenGL. К OpenGL может обращаться любое приложение с пользовательскими привилегиями.

Описанные экспертами атаки начинаются с того,что потенциальной жертве тем или иным образом доставляется вредоносноеприложение. Никаких особых привилегий ему не нужно, достаточно пользовательских— в том числе, возможности обращаться к графическим API (с этим никаких проблем нет, поскольку компьютеры поставляются спредустановленными графическими библиотеками и драйверами).

«Пользовательские»атаки

Первая атака позволяет следить за деятельностьюпользователя в Сети. Когда жертва открывает вредоносное приложение, оноиспользует OpenGL для отслеживанияактивности браузера, обращающегося к GPU. У каждого сайтаесть свои уникальные особенности того, как он использует память графическогопроцессора, — просто потому, что на каждом используется уникальное количествообъектов разных размеров. Сигнал будет одинаковым каждый раз, когда вебсайтзагружается, и кэширование никак на нем не скажется.

Исследователи производили мониторинг либопамяти, либо вычислительной нагрузки графического процессора, а затем с помощьюклассификатора на базе машинного обучения смогли с высокой точностьюмаркировать веб-сайты и отслеживать перемещения пользователя по ним.

Вторая атака позволила извлекатьпользовательские пароли. Каждый раз, когда пользователь вводит с клавиатурысимвол, все поле загружается в GPU в качестветекстуры, требующей рендеринга. Отслеживание временного промежутка междупоследовательными выделениями памяти позволило определить длину пароля и времямежду нажатиями клавиш, а этого может быть достаточно для подбора реальногопароля.

Какшпионить в нейронной сети

Третья методика нацелена на вычислительныеприложения в облаке. Злоумышленник может загрузить вредоносную задачу дляграфических процессоров, которая будет выполняться параллельно с приложениемжертвы. В зависимости от параметров нейронной сети, уровень нагрузки иструктуры сопоставления данных кэша, памяти и функциональных единиц меняется вовремени, что обеспечивает возможность извлекать довольно существенноеколичество данных. Например, злоумышленник может воспользоватьсяклассификаторами на базе машинного обучения для отслеживания счетчиковпроизводительности и тем самым определять структуру нейронной сети, в том числеколичество нейронов в каждом конкретном слое.

«Описанные сценарии безусловно слишком сложны висполнении для рядовых хакеров, — считает РоманГинятуллин, эксперт по информационной безопасности компании SEC Consult Services. — Однакоорганизации, у которых есть и нужные ресурсы, и мотивация, вполне могутреализовать подобные атаки на практике. А значит, необходимо оперативно найтиспособы снизить риски информационной безопасности».