新Linux惡意軟件利用顯卡進(jìn)行隱藏
某開發(fā)團(tuán)隊(duì)針對Linux系統(tǒng)創(chuàng)建了rootkit惡意軟件,區(qū)別于之前利用CPU隱藏,這一軟件可以利用顯卡的處理能力和內(nèi)存來保持隱藏。
這一惡意軟件名為Jellyfish,它是一種概念證明,旨在展示完全在GPU(圖形處理單元)運(yùn)行惡意軟件是可行的選擇。這是因?yàn)閷S蔑@卡有其自己的處理器和RAM。根據(jù)Jellyfish開發(fā)人員表示,這種威脅可能比傳統(tǒng)惡意程序更加為先,目前,尚無工具可以分析GPU惡意軟件。
據(jù)悉,這一惡意軟件可以通過DMA(直接存儲(chǔ)器訪問)窺探主機(jī)的主存儲(chǔ)器,大多數(shù)其他程序都在使用該存儲(chǔ)器。這個(gè)功能允許硬件組件可以讀取主系統(tǒng)內(nèi)存,而不需要通過CPU,讓這種操作更難以被檢測。
此外,Jellyfish開發(fā)者稱,即使在系統(tǒng)關(guān)機(jī)后,惡意GPU內(nèi)存仍然存在。
該惡意軟件代碼使用了Kronos Group開發(fā)的OpenCL API,Kronos Group是由CPU供應(yīng)商和其他公司組成的聯(lián)盟,旨在開發(fā)開放標(biāo)準(zhǔn)。為了可以使用,OpenCL驅(qū)動(dòng)程序需要安裝在目標(biāo)系統(tǒng)中。
Jellyfish目前可用于AMD和Nvidia顯卡,而英特爾顯卡也是通過AMD APP SDK獲得支持,這個(gè)軟件開發(fā)工具包允許GPU被用于加速應(yīng)用程序。GPU的數(shù)學(xué)運(yùn)算能力有望超過CPU,這也是為什么有些惡意程序已經(jīng)在利用其計(jì)算能力的原因。然而,這些惡意程序并沒有像Jellyfish一樣完全在GPU運(yùn)行。
該rootkit開發(fā)人員警告說,Jellyfish仍然處于開發(fā)過程中,它并不完整,甚至存在缺陷。該代碼旨在用于教育目的。這些開發(fā)人員還創(chuàng)建了一個(gè)獨(dú)立的基于GPU的鍵盤記錄器,被稱為Demon,靈感來自于2013年學(xué)術(shù)研究論文《你可以輸入,但你不能隱藏:一種隱形的基于GPU的鍵盤記錄器》。
用戶也許目前還不需要擔(dān)心攻擊者利用基于GPU的惡意軟件,但像Jellyfish和Demon這樣的概念證明可能激發(fā)未來的發(fā)展。惡意攻擊者采用研究人員設(shè)計(jì)的攻擊方式只是時(shí)間問題。