用 Polyglot 技巧偽裝惡意程式
最近,我們在 Securelist 部落格(僅有俄文版)上發布了一篇文章,揭露某針對工業企業的攻擊事件。該攻擊使用了名為 PhantomPyramid 的後門程式,我們的專家高度懷疑這是由名為 Head Mare 的攻擊組織所發動。這場攻擊手法看似老套——透過一封聲稱附有機密資訊的電子郵件,內含一個受密碼保護的壓縮檔案,密碼就直接寫在郵件內容中。
但這次有個有趣的地方:攻擊者使用了一種名為 Polyglot 的技巧,把惡意程式藏在表面上看起來完全沒問題的檔案裡。
什麼是 Polyglot 技巧?
根據 Mitre ATT&CK 攻擊技術框架的定義,Polyglot 檔案是指同時符合多種檔案格式的檔案,會根據用戶用什麼應用程式開啟它而有不同的行為。攻擊者會利用這種技術來「偽裝」惡意程式:對使用者或基本防護機制來說,它看起來可能像是普通的圖片或文件,但實際上裡頭藏有惡意程式碼。
更進一步,這些程式碼甚至可以用多種不同的程式語言撰寫,加深偽裝效果。
攻擊者會嘗試各種格式的組合。例如:
- Unit42 曾調查過一個使用 Microsoft 的說明檔格式(.chm)與 HTML 應用程式(.hta)混合的案例。
- 也有研究者發現,某張看似無害的 .jpeg 圖片,其實裡面是一個 .phar PHP 檔案。
- 而我們這次調查的攻擊案例中,則是把執行檔藏在 .zip 壓縮檔裡。
PhantomPyramid 案件中的 Polyglot 手法
攻擊者所發送的檔案副檔名是 .zip,乍看之下就是個普通的壓縮檔,用常見的解壓縮工具都能打開。但其實這個檔案是一個可執行的二進位檔案(.exe),只是檔案尾端額外加上了一段小型的 ZIP 壓縮資料。
ZIP 裡面有一個捷徑檔案,副檔名為 .pdf.lnk,會讓受害者誤以為它是一個 PDF 文件。但只要點開它,這個捷徑就會執行一段 PowerShell 腳本,不但會把惡意 ZIP 當作可執行檔啟動,還會在暫存資料夾中建立一個用來掩人耳目的假 PDF 檔案顯示給使用者。
如何保護自己和公司?
為了防止惡意程式碼執行,我們建議以下幾點保護措施:
- 為所有連上網路的電腦安裝可靠的資安防護軟體。
- 由於多數攻擊都是從社交工程或惡意郵件開始,建議在企業郵件閘道層級部署資安防護系統。
- 為了掌握最新的攻擊手法、技術和工具,建議導入我們提供的威脅情資服務(Threat Intelligence),協助提早預警與防護。
資料來源 : https://www.kaspersky.com/blog/polyglot-malware-masking-technique/53263/