بررسیها از گرایش مهاجمان سایبری در بکارگیری بدافزارهای قابل اجرا بر روی “واحد پردازش گرافیکی” (Graphic Processing Unit – به اختصار GPU) حکایت دارد. با این حال این روش جدید نبوده و امکانپذیر بودن آن قبلاً نیز در مقالات آکادمیک مطرح شده بود.
در این گزارش که با همکاری شرکت مهندسی شبکه گستر و مرکز مدیریت راهبردی افتای ریاست جمهوری تهیه گردیده، جزئیات بدافزارهای قابل اجرا بر روی GPU ارائه شده است.
در 17 مرداد، نمونه اثباتگر (Proof-of-Concept – به اختصار PoC) این نوع از بدافزارها در یک تالار گفتگوی هکرها برای فروش قرار داده شد که به طور ضمنی گرایش مجرمان سایبری به سطح جدید و پیشرفتهای از حملات را نشان میدهد.
در یک پست کوتاه در تالار گفتگوی مذکور، شخصی پیشنهاد فروش نمونه اثباتگری را برای تکنیکی میدهد که در آن ادعا میشود با بکارگیری آن، کد مخرب از دید آن محصولات امنیتی که اقدام به پویش RAM سیستم میکنند، مخفی میماند. فروشنده در آن پست فقط توضیحات کلی از روش خود ارائه داده و اعلام کرده در این روش از بافر حافظه GPU برای ذخیره و اجرای کدهای مخرب استفاده میشود.
در این تبلیغ عنوان شده که این بدافزار، قادر به اجرا بر روی دستگاههایی با سیستمعامل Windows که نسخه 2.0 به بالا فریمورک OpenCL را پشتیبانی میکنند، میباشد. OpenCL، فریمورکی برای اجرای کد در پردازندههای مختلف از جمله GPU است. در این پست همچنین ذکر شده که نویسنده این بدافزار، کد را روی کارتهای گرافیکی زیر آزمایش کرده است:
- Intel UHD 620/630
- Radeon RX 5700
- GeForce GTX 740M/GTX 1650
این اعلان در 17 مرداد منتشر شد. حدود دو هفته بعد، در 3 شهریور، فروشنده اعلام نمود که موفق به فروش نمونه اثباتگر به حداقل یک گروه از مهاجمان شده است. وی هیچ جزئیاتی در مورد این معامله، این که چه کسی آن را خریداری کرده و چقدر بابت آن پرداخت شده، ارائه نداده است.
یکی دیگر از اعضای تالار گفتگوی مذکور با اشاره به JellyFish – یک PoC شش ساله برای روتکیت تحت Linux مبتنی بر GPU – خاطر نشان کرد که بدافزار مبتنی بر GPU قبلاً نیز وجود داشته است.
همچنین به گفته گروهی از محققان، این روش به جای اجرا در CPU، امکان اجرای باینری کد مخرب را توسط GPU در فضای حافظه فراهم میکند. ضمناً آنها وعده دادهاند که روش استفاده از این تکنیک را در آینده نزدیک نشان خواهند داد.
محققانی که روتکیت JellyFish را مورد بررسی قرار داده بودند در می 2015 اقدام به انتشار نمونههای اثباتگر از یک Keylogger و یک تروجان دسترسی از راه دور مبتنی بر GPU برای سیستمعامل Windows کرده بودند.
فروشنده بدافزار جدید هرگونه ارتباط با بدافزار JellyFish را رد کرده و ادعا نموده روش آنها کاملاً متفاوت است و به نگاشت کد در فضای کاربر (Userspace) متکی نیست.
با این که اشاره به پروژه JellyFish نشان میدهد که بدافزار مبتنی بر GPU ایده نسبتاً جدیدی است، اما زمینه این نوع از روشهای حمله حدود هشت سال پیش فراهم شده است.
در سال 2013، محققان دانشگاه کلمبیا در نیویورک در مقالهای که لینک آن در زیر قابل دسترس است، عنوان نمودند که GPUها میتوانند میزبان یک Keylogger باشند و کلیدهای فشرده شده را در حافظه خود ذخیره کنند.
http://www.cs.columbia.edu/~mikepo/papers/gpukeylogger.eurosec13.pdf
پیشتر نیز محققان در سال 2010 در مقاله زیر نشان داده بودند که نویسندگان بدافزار میتوانند از مزایای قدرت محاسباتی بالای GPU جهت بستهبندی کد با رمزگذارهای پیچیده، که بسیار سریعتر از CPU است، استفاده کنند.