惡意軟體識別工具Yara ,竟被惡意程式用來作弄資安研究人員

對絕大多數資安研究人員來說,Yara 是一個非常寶貴的惡意軟體識別工具,它可建立一些規則來追蹤惡意程式,讓許多資安研究人員的作業流程可以自動化。然而,儘管 Yara 可靠又好用,但卻不應當成監控最新惡意程式變種的唯一工具。

網路上可以找到很多 Yara 的規則,從 Yara-Rules 專案本部落格文章所提供用來偵測惡意程式入侵指標 (IOC) 的 Yara 規則都有。除此之外,資安研究人員還可建立屬於自己的規則來偵測目前正在尋找的特定威脅,有時候並不會輸給網路上所提供的規則。

《延伸閱讀》透過分析Stampado 勒索病毒,改良惡意軟體辨識工具Yara

當 Yara 的某個規則被觸發時,它會產生警示來提醒研究人員採取進一步行動,包括啟動虛擬機器 (VM) 或除錯器和解譯器來查看被觀察的樣本到底試圖做些什麼,這對許多資安研究人員來說,算是家常便飯。

趨勢科技監控威脅的過程當中,有一個惡意程式的樣本 (趨勢科技命名為 JOKE_CYBERAVI) 觸發了許多條 Yara 規則。我們第一次發現這個樣本的時間是在全球標準時間 (UTC) 2017-05-11 14:33:49。當查看該執行檔的 PE 標頭時,我們看到它的時間戳記是全球標準時間 12:57:16。換句話說,我們是在該檔案產生出來後的 90 分鐘左右就發現到該檔案。全部加起來,該檔案我們總共偵測到 26 次。

圖 1:JOKE_CYBERAVI 檔案屬性。

一開始,該檔案看起來還蠻有趣的,因為它似乎內建了某些防除錯機制。這類技巧通常是惡意程式為了防止研究人員利用反向工程加以研究。

圖 2:惡意程式的部分程式碼。

當查看該檔案的 PE 資源時,我們發現到有些奇怪,它有三段資源:RT_MANIFEST、CYB 和 LOL。沒錯,有個叫做「LOL」(放聲大笑) 的資源。 繼續閱讀

趨勢科技資深威脅研究員,透過分析Stampado 勒索病毒,改良惡意軟體辨識工具Yara

Yara 是一個資安研究人員所使用的開放原始碼工具,可根據預先定義好的規則來偵測及分類惡意程式樣本。前不久,一位同事請我撰寫 Yara 規則來偵測 Stampado 勒索病毒 Ransomware (勒索軟體/綁架病毒)家族的樣本。Stampado 算是一個相對較新的勒索病毒服務 (Ransomware-as-a-Service,簡稱 RaaS) 威脅,不久前剛進入趨勢科技的監控名單。當時我手上只有幾個樣本,原本我打算在這些樣本之間找找看有沒有共同的字串,但沒有成功。後來我比對了各檔案之間的結構發現,每一個檔案末端都有一段有趣的內容,從位移 0xde000 處開始:

圖 1:Stampado 勒索病毒樣本內容以十六進位碼顯示。

檔案末端明顯列了一個電子郵件地址。我向同事詢問是否知道此事,他立即告訴我  Stampado 會提供一些使用說明給購買該套件的駭客,說明中有提到這件事:

圖 2:給  Stampado 買家的使用說明。

我判斷 Stampado 的開發者應該是在每個檔案末端多加了一個位元組,數值為 0x0d (這在 ASCII 字碼表上是返回開頭的 CR 符號),然後叫使用者利用一般的文字編輯工具在最後一行空白下方 (也就是在 CR 符號之後) 加入自己的電子郵件地址。正確來說 CR 符號並不是這樣用,因為在 DOS/Windows 系統下,如果要換行的話,正確的方式是 0x0d 0x0a (也就是 CR + LF:返回開頭並前進一行),至於從 Unix 衍生的作業系統則是只需要  LF 符號。不管怎樣, Stampado 的樣本檔案末端都會帶著一個 CR 符號,這也算是個有趣的特徵,這樣就能建立 Yara 規則來偵測這個惡意程式。 繼續閱讀