08.05 // Представлены работающие на GPU протитипы руткита и кейлоггера для Linux


Исследователи безопасности из команды Team Jellyfish воплотили в жизнь теоретический метод (PDF[link1]) применения GPU для отслеживания активности в системе и подготовили[link2] рабочие прототипы руткита[link3] и кейлоггера[link4], выполняемые на GPU для скрытия своего присутствия в системе. Руткит и кейлоггер примечательны тем, что получив доступ к GPU, они обходятся без традиционных привязок и изменений кода ядра операционной системы. Отслеживание буфера, содержащего данные о нажатых клавишах, производится непосредственно из GPU при помощи DMA. На CPU выполняется только инициализация, после чего вся активность руткита ограничивается GPU.

В настоящее время реализована только работа на системах с отдельными видеокартами (GPU, интегрированные с CPU, пока не поддерживаются) AMD и NVIDIA. Прототип руткита реализован в пространстве пользователя и загружается при помощи LD_PRELOAD. Для организации выполнения кода на GPU применяется OpenCL API, что требует наличия драйверов с поддержкой OpenCL. После загрузки все данные размещаются в видеопамяти, что затрудняет обнаружение руткита. Перехват содержимого памяти CPU производится через DMA. Выполнение на стороне GPU также позволяет задействовать средства GPU для выполнения сложных вычислений.


Источник: http://www.opennet.ru/opennews/art.shtml?num=42192

Ссылки
[link1] http://www.cs.columbia.edu/~mikepo/papers/gpukeylogger.eurosec13.pdf

[link2] http://arstechnica.com/security/2015/05/gpu-based-rootkit-and-keylogger-offer-superior-stealth-and-computing-power/

[link3] https://github.com/x0r1/jellyfish

[link4] https://github.com/x0r1/Demon