A jelek szerint hamarosan megérkezhet a számítógépes kártevők új generációja. A rosszindulatú programok eddig tipikusan processzoron futó alkalmazások voltak, bár nem hallatlan a hardverek beépített vezérlőszoftvereiben való elhelyezésük sem. Egy a spekulációk szerint az amerikai hírszerzéshez köthető csoport merevlemezek firmwarében rejtett el ilyen típusú kártevőket. Ami az alap ötletnél sokkal meglepőbb, hogy az Equation Group munkásságát 2015 februárjában leleplezett Kaspersky szerint a csoport 14 éven keresztül (!) repült a radar alatt. Persze ebben kritikus szerepe volt annak is, hogy a hackelt vezérlőszoftverekkel csak specifikus célpontokat próbáltak támadni.
Videokártya rossz kezekben
Az elmúlt nagyjából egy évtizedben hatalmas technikai áttörések történtek a grafikus vezérlők terén, például a korábbi nagyrészt szekvenciális működést mára felváltotta a masszívan párhuzamos feldolgozás. A következő nagy áttörés az volt, mikor az NVIDIA CUDA, AMD Stream és OpenCL programozási felületeknek köszönhetően lehetővé vált a grafikus processzorokat általános matematikai számításokra is befogni. Ez az átlagos felhasználók számára a hétköznapokban nem sokat számít, már ha nem gamerek, kódolnak sok videót, vagy élnek fotószerkesztésből. Ha kőkemény matekozásról van szó, akkor a grafikus processzorok kíméletlenül helyben hagyják CPU-kat.
Természetesen az általános célú GPU-használat gyorsan megihlette a rosszfiúkat és biztonsági kutatókat, több potenciálisan működőképes módszert is kitaláltak a GPGPU jóindulatával való visszaélésre. Az elméletből mára gyakorlat lett: nemrég két teljesen a grafikus hardveren futó kártevő is elérhetővé vált, forráskóddal együtt. Ezek nem bűnözők által készített szoftverek, hanem biztonsági kutatók által oktatási célból nyilvánosságra hozott, konkrét és működőképes proof-of-concept kódok.
Rootkit és keylogger
A Jellyfish névre hallgató szoftver egy kezdetleges rootkit, a Demon pedig egy teljes értékű keylogger. Mindkettő alkalmazás OpenCL-ben íródott, elviekben az összes OpenCL-kompatibilis AMD és NVIDIA grafikus kártyán futnak, plusz kerülőúton Intel grafikus lapkákon is bevethetőek. Mindkét alkalmazás linuxos, a windowsos és Mac OS X-es verziók a cikk írásakor még nem voltak elérhetőek.
A fejlesztők szerint rendkívül veszélyesek lehetnek a grafikus kártyán futó kártevők, mivel a jelenlegi vírusirtók nem képesek ezeket detektálni. Egyrészt nem a processzoron futnak, másrészt pedig a rendszermemóriát közvetlen hozzáféréssel (DMA) olvassák be. Példának okáért egy klasszikus vírusirtónak fogalma sincs arról, hogy a grafikus kártyán futó malware a processzort kikerülve, közvetlen memória-hozzáférés használatával épp billentyűleütéseket olvas ki a RAM-ból…
További problémát jelent, hogy jelenleg nincsenek a piacon GPU-n futó kártevők elemzésére használható eszközök, plusz „jó esetben” a kártevők csak a dedikált grafikus memória áramtalanításával irthatóak ki a grafikus kártyáról. A számítógép melegindításakor a kártevők bennmaradhatnak a videomemóriában.
Végszóként érdemes leszögezni, hogy a nemrég elérhetővé vált kódok miatt egyelőre nincs ok a pánikra. Remélhetően a működőképes implementációknak köszönhetően az operációs rendszerek és biztonsági szoftverek készítői időt nyernek a védelmi stratégiák előzetes kidolgozására, idejekorán elkészülnek a munkájukhoz nélkülözhetetlenné váló új elemzői eszközökkel.
(Nyitókép: cpradi)