從 PyLoose 惡意程式學無檔案(fileless)攻擊手法

一般來說,我們這種小白很難想像惡意程式只有在記憶體中執行,而且連個可執行檔、腳本(script)都找不到的情況。

PyLoose 這個挖礦惡意軟體蠻有趣的,它就是只有在記憶體中執行,沒留下腳本的經典例子。

稍微解說一下它怎麼做到的,真的很有趣:

  1. 透過 Jupyter notebook (受害者可能不小心開放這個服務,剛好給有心人士抓到)植入 Python 程式碼
  2. 第 1 段的 Python 程式碼會使用 system call 呼叫 1 個稱為 memfd 的 Linux 系統 API, 這個 memfd 可以想像是一個指向記憶體的 file descriptor
  3. 把 Python 的惡意程式碼(也就是挖礦)寫入第 2 步拿到的 memfd
  4. os.execlp() 執行這個 memfd (裡面有 Python 挖礦程式碼)
  5. 收拾犯罪現場,打完收工

也就這幾個步驟,就把 Python 程式注入到記憶體中,還只留下非常少數的證據(還是可以藉由可疑的 process id 發現),真的很狂!

這種 fileless 的作法優點是增加被偵測到的難度,也提高鑑識難度,因為程式碼在記憶體裡面,要調查事件就得做記憶體鑑識,在不關機的情況下將記憶體內容整份輸出⋯⋯。

等等,我這不是在教各位做壞事!乖小孩不要亂學亂用喔!

總之,以上就是 PyLoose 的攻擊手法介紹,看完之後記得檢查自己有沒有把 Jupyter Notebook (或類似可以執行 Python 程式碼的服務)設為開放喔,不然就傻傻替人數錢囉~!

PyLoose: Python-based fileless malware targets cloud workloads to deliver cryptominer

FOLLOW US

對抗久坐職業傷害

研究指出每天增加 2 小時坐著的時間,會增加大腸癌、心臟疾病、肺癌的風險,也造成肩頸、腰背疼痛等常見問題。

然而對抗這些問題,卻只需要工作時定期休息跟伸展身體即可!

你想輕鬆改變現狀嗎?試試看我們的 PomodoRoll 番茄鐘吧! PomodoRoll 番茄鐘會根據你所設定的專注時間,定期建議你 1 項辦公族適用的伸展運動,幫助你打敗久坐所帶來的傷害!

贊助我們的創作

看完這篇文章了嗎? 休息一下,喝杯咖啡吧!

如果你覺得 MyApollo 有讓你獲得實用的資訊,希望能看到更多的技術分享,邀請你贊助我們一杯咖啡,讓我們有更多的動力與精力繼續提供高品質的文章,感謝你的支持!