天天看點

針對資訊竊取惡意軟體AZORult的相關分析

 AZORult是一種資訊竊取的惡意軟體,随着時間的推移已經發展成為一種多層功能的軟體,我們知道達爾文的自然選擇進化理論已有150多年的曆史,但進化也可能由于人工選擇的結果(也稱為選擇性育種)。在我們的資訊安全領域,同樣的生物學原理适用于惡意軟體的進化。攻擊者經常檢查他們攻擊性工具的具體特征與其生存能力的相關性,并通過“基因工程”惡意軟體來改善其功能。在接下來的文章中,我們将介紹一個資訊竊取惡意軟體的特性。每一層隐藏的功能的都是其“飼養者”精心挑選的,以提高其在野外生存的可能性。

  分析攻擊

  上周,我們阻止了一個客戶網站的攻擊。這是一個名為“Quotation Request – EP”的經典惡意郵件。它是從一家非洲能源公司的電子郵件帳戶發出的,它含有惡意附件。它是一個包含兩個檔案的RAR存檔 – 一個文本檔案和一個帶有DDE對象的Microsoft Word文檔。一旦打開,它會從受感染的網站下載下傳一個MSI檔案:

針對資訊竊取惡意軟體AZORult的相關分析

  該檔案是使用名為msi2exe工具從正常可執行檔案建立的安裝程式,它将“普通”惡意Windows可執行檔案作為安裝程式進行包裝。這隻是衆多隐藏這段惡意代碼手段的第一層。為了擷取和分析可執行檔案,我将使用7-Zip提取它,将MSI作為歸檔檔案打開:

針對資訊竊取惡意軟體AZORult的相關分析

  在我們分析發現,罪魁禍首是名為Binary._D7D112F049BA1A655B5D9A1D0702DEE5的資源,這是一個包含在MSI中的正常Windows可執行檔案。在使用PEStudio仔細檢視檔案時,我們發現情況并非如此:

針對資訊竊取惡意軟體AZORult的相關分析

  事實證明,這是一個編譯的AutoIt腳本 – 另一層包裝實際的payload。用Exe2Aut可以将其反編譯可執行檔案。但是,反編譯的腳本仍然是混淆的:

針對資訊竊取惡意軟體AZORult的相關分析

  結果發現,混淆并不是太複雜,主要依賴于單個字元串混淆函數。我們寫了一個用于反混淆的Python腳本,可以點選以下連結擷取:https://github.com/MinervaLabsResearch/BlogPosts/blob/master/ObfuscatedAutoItDecrypter/AutoIt_dec.py現在可以檢視腳本并重命名變量:

針對資訊竊取惡意軟體AZORult的相關分析

  看看這個混淆的腳本,現在很清楚看到,在AutoIt中運用了一個經典process hollowing技術:

  惡意軟體建立原始程序的第二個暫停執行個體:

針對資訊竊取惡意軟體AZORult的相關分析

  它配置設定可寫,可執行的

記憶體

針對資訊竊取惡意軟體AZORult的相關分析

  該腳本将它希望執行的payload寫入遠端程序:

針對資訊竊取惡意軟體AZORult的相關分析

  在攻擊的下一階段位于遠端程序的

之後,惡意軟體将主線程的狀态設定為運作注入的代碼并恢複程序的執行:

針對資訊竊取惡意軟體AZORult的相關分析

  注入的payload本身使用與字元串相同的例程進行混淆,是以在執行我們的反混淆腳本之後,可以直接觀察它:

針對資訊竊取惡意軟體AZORult的相關分析

  第一對位元組4D和5A是ASCII字元串MZ – Windows可執行檔案開頭的魔術字元串。這是一個強有力的訓示,表明注入的緩沖區是另一個payload(!),并且使用另一個Python腳本轉儲它,事實證明确實如此。盡管頭部分損壞,但仍有可能使用PEstudio仔細檢視二進制檔案。令人驚訝的是,事實證明,攻擊者并不認為到目前為止使用的所有不同技術都已足夠,是以又用UPX壓縮了檔案,使其更加隐藏:

針對資訊竊取惡意軟體AZORult的相關分析

  由于PE已損壞,是以無法自行執行,但無需這樣做。即使在UPX壓縮形式下,我們也發現了這樣一個事實的證據,即這是隐藏payload的最後一層,并沒有修複它的結構。使用十六進制編輯器觀察檔案顯示了多個字元串,表明其目标是竊取存儲在浏覽器中的密碼:

針對資訊竊取惡意軟體AZORult的相關分析

  快速Google搜尋驗證了這是用于竊取存儲在Google Chrome中的憑據的常見SQL查詢的一部分:

針對資訊竊取惡意軟體AZORult的相關分析

  嗅嗅惡意軟體的網絡活動證明了惡意軟體的功能,因為它首先向C2

伺服器

發出指令,然後接收到竊取密碼的指令并将其發送回去

針對資訊竊取惡意軟體AZORult的相關分析
針對資訊竊取惡意軟體AZORult的相關分析

  在更深入的探索之後,研究團隊追蹤了一位創造幾乎相同paylaod的作者。這使我們能夠将注入的payload作為非損壞的二進制檔案,驗證我們的分析結論。例如,現在我們能夠觀察到相同的SQL查詢,以提取存儲在Google Chrome中的密碼以及其他類似的技術:

針對資訊竊取惡意軟體AZORult的相關分析

  正如我們的友好惡意軟體研究社群指出的那樣,這個payload最終被證明是AZORult——一個衆所周知的竊取資訊的惡意軟體,它至少從2016年開始在不同的論壇上出售。

  實踐中的人工選擇

針對資訊竊取惡意軟體AZORult的相關分析

  這個活動中包裝的AZORult惡意軟體采用了六種技術來逃避檢測,展示了它的建立者如何通過反複嘗試和錯誤的方式選擇“繁殖”它們:

  使用RAR歸檔

  該檔案在發送時作為壓縮檔案存檔進行打包,試圖克服對“危險”檔案類型附件的靜态掃描和限制。

  多個圖層

  使用多個圖層隐藏最終的資訊竊取功能可能會欺騙一些安全産品,使其看起來不夠“deep enough”,而其他安全産品則無法了解每個圖層的上下文。

 使用MSI檔案來釋放payload

  令人驚訝的是,許多機器學習防病毒解決方案忽略了這種檔案類型。但是,有些供應商在後期檢測到該檔案,因為二進制payload被儲存到臨時檔案夾中,但在其他情況下,它可能不那麼簡單并且可能會被忽略。

  AutoIt

  使用非正常腳本語言進行模糊處理和編譯,會生成一個二進制檔案,與傳統的C C ++可執行檔案明顯不同。在檔案中尋找模式的産品本身會發現更難以檢測到惡意軟體。

  注入代碼

  這種惡意軟體會在記憶體中解密其有效内容,并且僅在使用了幾層迷惑技巧之後。

  DDE

  攻擊者不再依賴舊的VBA宏,而是利用了DDE的“feature” ——允許他們将有效載荷嵌入不太可疑的docx格式,因為宏隻能以doc或docm格式使用。

  我們能夠追蹤之前的嘗試,從相同的參與者展示他們經過的人工選擇過程,提煉他們最新的最終幸存者。例如,早期的變體選擇了SCR擴充而不是MSI。在另一種情況下,傳遞機制是不同的,并且依賴于一個連結來直接從受損的網站下載下傳受感染的docx檔案。

  IOC

  URLs

  hxxp://ipool[.]by/bitrix/css/8/DOC71574662-QUOTATION[.]doc

  hxxp://ipool[.]by/bitrix/css/8/aksu[.]msi

  hxxp://www[.]sckm[.]Krakow[.]pl/aksu[.]msi

  hxxp://aksuperstore[.]com/fh8nzhme/gate[.]php

  Files (SHA-256)Analyzed DDE docx:

  ac342e80cbdff7680b5b7790cc799e2f05be60e241c23b95262383fd694f5a7a

  Analyzed MSI Installer:

  e7a842f67813a47bece678a1a5848b4722f737498303fafc7786de9a81d53d06

  Unzipped executable:

  717db128de25eec80523b36bfaf506f5421b0072795f518177a5e84d1dde2ef7

  Decompiled obfuscated AutoIt:

  31f807ddfc479e40d4d646ff859d05ab29848d21dee021fa7b8523d2d9de5edd

  Deobfuscated AutoIt:

  b074be8b1078c66106844b6363ff19226a6f94ce0d1d4dd55077cc30dd7819c5

  Similar DDE document downloaded directly from a compromised website:

  dc3fac021fae581bf086db6b49f698f0adc80ebe7ca7a28e80c785673065a127

  The builder (Trojanized):

  329030c400932d06642f9dbc5be71c59588f02d27d9f3823afa75df93407027b

  Similar MSI installers:

  efa6af034648f8e08098ea56445ccab1af67376ca45723735602f9bdd59e5b5d

  9d7a10fa3e5fd2250e717d359fcff881d9591e0fe17795bab7aac747e8514247

  dc3fac021fae581bf086db6b49f698f0adc80ebe7ca7a28e80c785673065a127 

原文釋出時間為:2018-05-29

本文作者:Gal Bitensky

本文來自雲栖社群合作夥伴“

IT168

”,了解相關資訊可以關注“

”。

繼續閱讀