На сервере github появились два проекта, использующие неожиданную уязвимость – возможность исполнения шпионящих за компьютером программ при помощи видеопроцессора. Уязвимость была впервые описана в исследовательской работе 2013 года под названием "Печатать можно, спрятаться нельзя: кейлогер на основе GPU".
В работе исследователи описали принципиальную возможность изготовления программы, отслеживающей и записывающей нажатия клавиш при помощи GPU. Программа не использует типичные приёмы руткитов для встраивания в ядро системы. Вместо этого при помощи видеокарты информация о нажатиях собирается напрямую через DMA (прямой доступ к памяти).
И вот, пожалуйста – проекты Jellyfish rootkit и Demon keylogger доказывают на деле возможность такого подхода. Никак не модифицируя ядро системы, они работают за счёт видеокарты. Вот что пишет создатель проекта под ником x0r1:
Jellyfish – работающий под Linux руткит в стадии «proof of concept» (доказательство возможности работы), использующий технику LD_PRELOAD из Jynx (CPU), а также OpenCL API, разраотанный Khronos group (GPU). В данный момент код работает с видеокартами AMD и NVIDIA. Кроме этого AMDAPPSDK также поддерживает и Intel.
До этого зловреды, использующие GPU, попадались разве что среди программ, тайно майнящих биткоины на видеокарте компьютера. И конечно, они не работали целиком на GPU, а использовали его только для непосредственных расчётов.
Автор: SLY_G