[译] APT分析报告:03.OpBlueRaven揭露APT组织Fin7/Carbanak(上)Tirion恶意软件
這是作者新開的一個專欄,主要翻譯國外知名的安全廠商APT報告文章,了解它們的安全技術(shù),學習它們溯源APT組織的方法,希望對您有所幫助。前文分享了釣魚郵件網(wǎng)址混淆URL逃避檢測,這篇文章將介紹APT組織Fin7 / Carbanak的Tirion惡意軟件,包括OpBlueRaven行動。
- 原文標題:OpBlueRaven: Unveiling Fin7/Carbanak - Part I : Tirion
- 原文鏈接:https://threatintel.blog/OPBlueRaven-Part1/
- 作者時間:YUSUF ARSLAN POLAT 2020-07-31
- 文章來源:threatintel.blog、PRODAFT SARL、INVICTUS
文章目錄
- 一.Fin7簡介
- 二.關(guān)于Fin7和Carbanak
- 三.Carbanak后門
- 1.鍵盤記錄插件
- 2.過程監(jiān)控器插件
- 四.Tirion Loader(Carbanak后門的未來)
- 1.文件結(jié)構(gòu)
- 2.Readme.txt
- 3.Loader組件
- 4.PswInfoGrabber
- 五.OpBlueRaven | 第一部分結(jié)尾
一.Fin7簡介
FIN7組織的攻擊目標是金融機構(gòu)(尤其美國金融公司),以釣魚郵件為主要攻擊渠道。常見攻擊手法包括:
- 使用精密的魚叉式網(wǎng)絡(luò)釣魚郵箱,來說服目標對象下載附件,然后透過附件讓其公司網(wǎng)絡(luò)遭到惡意軟件的感染
- 擅長使用非PE文件進行攻擊,在攻擊過程中很少有PE文件落地
- 主要的攻擊載荷都是基于js腳本和powershell腳本進行,這在一定程度上躲避安全軟件的查殺
- 在FIN7所使用的惡意軟件中,最常見的是Carbanak惡意軟件的特制版本,已在對銀行的多次攻擊中使用過
常規(guī)攻擊流程如下圖所示,攻擊者以釣魚郵件為進入渠道,在惡意文檔中嵌入vbs腳本,vbs腳本運行后解密后門程序?qū)懭胱员碇?#xff0c;同時將調(diào)用后門程序的腳本以ads隱藏在磁盤文件中。在后門運行后,使用DNS TXT做為C&C通信方式。
在郵件附件文檔中,使用了惡意宏代碼,不同釣魚文檔的界面大體如下,值的一提的是使用漢堡圖片做為誘餌文檔時的攻擊目標是一家國外的食品公司。遭到FIN7入侵的公司包括Chipotle、Chilli’s和Arby’s等知名品牌,該組織被認為已入侵數(shù)千個業(yè)務(wù)據(jù)點,并且已竊取數(shù)百萬個信用卡號碼。
隨著技術(shù)深入,該組織部署了新的戰(zhàn)術(shù)(類似于BadUSB)。Securityaffairs網(wǎng)站發(fā)現(xiàn)FIN7通過美國郵政服務(wù)(USPS)給目標企業(yè)的人力資源、信息技術(shù)或執(zhí)行管理部門的員工郵寄包裹,包含USB設(shè)備、禮品卡等。當員工將USB設(shè)備插入計算機時,會注入命令以下載并執(zhí)行以GRIFFON跟蹤的JavaScript后門。
這樣的包裹被發(fā)送給多家企業(yè),包括零售業(yè)、餐飲、酒店。武器化的USB設(shè)備模仿用戶擊鍵特征,啟動PowerShell命令從遠程服務(wù)器檢索惡意軟件。專家們觀察到惡意代碼聯(lián)絡(luò)域名與IP地址位于俄羅斯。
該USB設(shè)備使用Arduino微控制器ATMEGA32U4,并編程模擬USB鍵盤。由于PC默認情況下信任鍵盤USB設(shè)備,一旦插入,鍵盤模擬器就會自動插入惡意命令。然后Powershell腳本運行第三階段JavaScript,收集系統(tǒng)信息并刪除其他惡意軟件。根據(jù)FBI的警告,一旦收集到目標的信息,FIN7組織就開始橫向移動以獲取管理權(quán)限。在收集到的信息發(fā)送到C&C服務(wù)器之后。主JS代碼會進入一個無限循環(huán),在每個循環(huán)迭代中睡眠2分鐘,然后從命令和控件獲取一個新命令。
總之,一旦USB控制器芯片被重新編程用于其他用途(如模擬USB鍵盤),這些設(shè)備就可以被用來發(fā)動攻擊,并在用戶不知情的情況下感染他們的計算機。再加上這些設(shè)備非常便宜,任何人都可以隨時使用,這也意味著攻擊者更深入地利用這些技術(shù)和設(shè)備只是時間問題。
參考資料:
- https://www.freebuf.com/articles/network/137612.html
- https://www.freebuf.com/news/231861.html
- https://www.freebuf.com/news/153032.html
- https://securityaffairs.co/wordpress/100661/cyber-crime/fin7-usb-teddy-bears-attacks.html
- https://www.fireeye.com/blog/threat-research/2017/03/fin7_spear_phishing.html
二.關(guān)于Fin7和Carbanak
本文旨在為讀者提供有關(guān)PRODAFT(瑞士)&INVICTUS(歐洲)威脅情報(PTI)團隊針對不同威脅參與者的最新操作的詳細信息,并發(fā)現(xiàn)與臭名昭著的Fin7 APT組織相關(guān)。在文章中,所有信息都源自威脅參與者的一次OPSEC故障,我們將嘗試逐步擴展主題,在不斷發(fā)現(xiàn)的基礎(chǔ)上擴大范圍。
在2020年5月至7月之間,PRODAFT威脅情報團隊的四名成員進行了BlueRaven行動。案例研究源于發(fā)現(xiàn)一組看似不重要的輕微OpSec故障。當然,后來發(fā)現(xiàn)這些威脅因素與臭名昭著的Fin7 / Carbanak威脅因素有關(guān)聯(lián)。
PTI的OP(PTI’s OP)源于攻擊者一方的OPSEC故障。與先前發(fā)現(xiàn)和發(fā)布的數(shù)據(jù)不同,使此OP如此與眾不同的是,我們設(shè)法發(fā)現(xiàn)了大量有關(guān)攻擊者工具集的未發(fā)布信息,這些信息揭示了攻擊者的TTP。
Carbanak Group / Fin7于2014年首次被發(fā)現(xiàn),是世界上最著名的APT組之一,并且是最早曝光的APT組之一。該組織被認為在全球范圍內(nèi)造成超過9億美元的損失。我們的OP結(jié)果發(fā)現(xiàn)了有關(guān)這些威脅參與者的以下關(guān)鍵信息:
- 獲得Fin7中某些攻擊者的真實身份
- 有關(guān)Fin7的工具和攻擊方法的詳細證據(jù)已經(jīng)被發(fā)現(xiàn)
- Fin7和REvil勒索軟件組(將在后面的階段中詳細介紹)之間的關(guān)系已經(jīng)被發(fā)現(xiàn)
撰寫此報告旨在提高認識并協(xié)助網(wǎng)絡(luò)安全專家進行分析。當然,PRODAFT的一些發(fā)現(xiàn)已被刪除。因此,授權(quán)機構(gòu)可以與PRODAFT或INVICTUS聯(lián)系以進行進一步的披露。
每篇文章都將討論操作的特定方面,不僅僅包括攻擊方法、組織和攻擊者的身份。我們的團隊還設(shè)法竊聽攻擊者之間的各種對話,這些對話中的大多數(shù)也將在整個系列中發(fā)布。
三.Carbanak后門
Carbanak Backdoor是我們小組獲得的第一批發(fā)現(xiàn)之一。當前版本的Carbanak后門程序(該團隊中最知名的工具,即Carbanak組的名字)是引起我們團隊關(guān)注的第一個工具。 根據(jù)PE文件標題在2019年11月編譯的“3.7.5”版本是后門命令和控制服務(wù)器最新檢測到的版本。下面的屏幕快照提供了“3.7.5”版Carbanak后門管理面板的屏幕截圖。
我們將獲得的最新版本與2017年Virustotal中的“命令管理器”版本進行了比較,并對此工具進行了評估。下圖反映了上述兩個版本反編譯獲得的源代碼之間的差異。圖中僅列出了兩個版本之間的源代碼,左列屬于2017年上傳到Virustotal的文件,右列屬于我們團隊獲得的“3.7.5”版本。藍線表示不同的文件,而綠線表示新文件。
通過對命令和控制服務(wù)器軟件的檢查,可以看出,GUI界面對插件進行了基本更改,以創(chuàng)建更詳細的錯誤日志,并添加了新的語言編碼。
確定了2019年編譯的6個版本的惡意軟件“命令管理器”工具。下圖給出了檢測到的版本的時間戳。
在舊版本的Bot.dll中,它是在受害設(shè)備上運行的惡意軟件的組件,在反匯編中檢測到981個函數(shù),而在同一軟件的新版本中檢測到706個函數(shù)。使用Diaphora二進制比較工具,有607個函數(shù)獲得最佳匹配分數(shù),而有43個函數(shù)獲得部分匹配。此外,與Virustotal中的舊版本相比,新的bot文件的文件大小小于50kb。在檢查新的bot文件時,可以看到,舊版本中除基本函數(shù)以外的函數(shù)都是作為插件實現(xiàn)的。這些新插件可以執(zhí)行諸如按鍵記錄、過程監(jiān)視之類的操作,并且可以通過反射加載方法無文件執(zhí)行。 結(jié)果,惡意軟件的文件大小減小了,從而為鑒識基于簽名的安全軟件解決方案留下了更少的痕跡。
- hd.plug
- hd64.plug
- hvnc.plug
- hvnc64.plug
- keylog.dll
- keylog64.dll
- procmon.dll
- procmon64.dll
- rdpwrap.dll
- switcher.dll
- switcher64.dll
- vnc.plug
- vnc64.plug
在本小節(jié)中,將檢查先前發(fā)現(xiàn)的文件中“not”的一些插件。由于這些是工具包中前所未有的函數(shù),因此,我們認為以下內(nèi)容對于進一步分析該組織的TTP至關(guān)重要。
1.鍵盤記錄插件
“keylog.dll”插件使用RegisterRawInputDevices API捕獲用戶擊鍵。為了確定在哪個上下文中使用了擊鍵,前臺進程的“可執(zhí)行文件路徑(Executable File Path)”、“ Windows文本(Windows Text)”和時間戳(Timestamp)信息將與擊鍵一起記錄下來。
鍵盤記錄插件使用Windows GDI + API將收集的數(shù)據(jù)轉(zhuǎn)換為Bitmap,并將其寫入用戶%TEMP%目錄,名為“ SA45E91.tmp”的文件夾中。下圖顯示了惡意軟件用來存儲數(shù)據(jù)的函數(shù)。
下圖給出了所獲得日志示例的屏幕截圖。
2.過程監(jiān)控器插件
該插件可以跟蹤在目標系統(tǒng)中運行的進程,并用于獲取有關(guān)所需進程的開始和終止時間的信息。下圖給出了收集有關(guān)正在運行進程的信息的函數(shù)屏幕快照。
四.Tirion Loader(Carbanak后門的未來)
Fin7組織的新加載程序工具是名為Tirion的惡意軟件,該軟件被認為是替代Carbanak后門程序而開發(fā)的。它包含許多功能,用于信息收集、代碼執(zhí)行、偵察和橫向移動。與上一節(jié)中檢查過的最新版本的Carbanak后門程序一樣,該惡意軟件執(zhí)行的許多功能已作為獨立的插件開發(fā),使用反射性加載方法將它們加載到目標系統(tǒng)中并以無文件方式執(zhí)行。公開數(shù)據(jù)顯示,Carbanak后門的開發(fā)目前已停止,并且同一團隊正在Tirion Loader上進行開發(fā)和測試。攻擊者之間的通信日志表明,此新工具旨在替代Carbanak后門。
Tirion惡意軟件的功能如下:
- 信息收集(Information Gathering)
- 截屏(Taking Screenshot)
- 列出運行進程(List Running Processes)
- 命令/代碼執(zhí)行(Command / Code execution)
- 進程遷移(Process Migration)
- Mimikatz執(zhí)行(Mimikatz Execution)
- 密碼獲取(Password Grabbing)
- 激活目錄及網(wǎng)絡(luò)偵聽(Active Directory and Network Recon)
檢測到的最新Tirion Loader版本屬于“2020年6月28日23:24:03”編譯的版本“1.6.4”。下圖顯示了攻擊者可以在機器人設(shè)備上執(zhí)行的操作。“1.0”版本是最早檢測到的版本,被認為是最早使用的版本,已在“2020年3月5日20:29:53”上進行了編譯。
攻擊者編寫的“readme.txt”文件中清楚地說明了惡意軟件的基本組件。
相關(guān)翻譯如下,該系統(tǒng)包含3個組件:
- 服務(wù)器(Server)
- 客戶端(Client)
- 加載器(Loader)
這些組件的相關(guān)性如下,加載器定期連接到服務(wù)器,客戶端通過永久連接連接到服務(wù)器。加載器執(zhí)行來自服務(wù)器的命令并向服務(wù)器發(fā)送響應。通過客戶端,用戶通過服務(wù)器向加載器發(fā)出命令;接收到來自加載器的響應后,服務(wù)器將其傳輸?shù)絚l。
1.文件結(jié)構(gòu)
惡意軟件的文件組織如下:
2.Readme.txt
“readme.txt”文件中某些重要項目的英文翻譯說明如下,該文件指示從惡意軟件的第一版本到“1.6.3”版本的更改,并包含構(gòu)建說明。(省略俄語原文)
3.Loader組件
該惡意軟件的這一組件將在受害系統(tǒng)上運行,大小約為9kb,并從服務(wù)器運行命令。當攻擊者想要在受害者的設(shè)備上運行某個功能時,包含該功能的相關(guān)插件文件會以反射方式加載到受害者的設(shè)備上,并以無文件方式執(zhí)行。
服務(wù)器和加載器之間的網(wǎng)絡(luò)流量使用在構(gòu)建階段確定的密鑰進行加密。下圖包含相關(guān)的加密算法。
4.PswInfoGrabber
它是一個DLL文件,負責從目標系統(tǒng)中竊取和報告敏感信息,尤其是瀏覽器和郵件密碼。確定攻擊者也獨立于Tirion Loader使用了此工具。在下圖中,包含由惡意軟件收集的日志的屏幕截圖。
五.OpBlueRaven | 第一部分結(jié)尾
在這些系列的第一版中,我們希望通過將PTI發(fā)現(xiàn)的最新Carbanak工具包與可公開訪問的較舊版本進行比較,以介紹我們的分析報告。
在下一篇文章中,我們還將通過提供攻擊者之間實際對話的參考來更深入地研究攻擊者的TTP。除此之外,我們還將提供直接從威脅參與者的計算機獲取的屏幕截圖。
最后希望這篇文章對您有所幫助,中秋節(jié)和國慶節(jié)快樂。某人照顧好自己喔!
前文分享:
- [譯] APT分析報告:01.Linux系統(tǒng)下針對性的APT攻擊概述
- [譯] APT分析報告:02.釣魚郵件網(wǎng)址混淆URL逃避檢測
2020年8月18新開的“娜璋AI安全之家”,主要圍繞Python大數(shù)據(jù)分析、網(wǎng)絡(luò)空間安全、逆向分析、APT分析報告、人工智能、Web滲透及攻防技術(shù)進行講解,同時分享CCF、SCI、南核北核論文的算法實現(xiàn)。娜璋之家會更加系統(tǒng),并重構(gòu)作者的所有文章,從零講解Python和安全,寫了近十年文章,真心想把自己所學所感所做分享出來,還請各位多多指教,真誠邀請您的關(guān)注!謝謝。
(By:Eastmount 2020-10-04 星期天 晚上12點寫于武漢 http://blog.csdn.net/eastmount/ )
附錄:YARA簽名
import "pe" rule apt_Fin7_Tirion_plugins {meta:author = "Yusuf A. POLAT"description = "Tirion Loader's plugins. It is used by Fin7 group. Need manual verification"version = "1.0"date = "2020-07-22" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "fdc0ec0cc895f5b0440d942c0ab60eedeb6e6dca64a93cecb6f1685c0a7b99ae"strings:$a1 = "ReflectiveLoader" ascii$a2 = "plg.dll" fullword asciicondition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 15000 and (pe.exports("?ReflectiveLoader@@YA_KPEAX@Z") orpe.exports("?ReflectiveLoader@@YGKPAX@Z")) }rule apt_Fin7_Tirion_PswInfoGrabber {meta:author = "Yusuf A. POLAT"description = "Tirion Loader's PswInfoGrabber plugin. It is used by Fin7 group."version = "1.0"date = "2020-07-22" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "e7d89d1f23c2c31e2cd188042436ce6d83dac571a5f30e76cbbcdfaf51e30ad9"strings:$a1 = "IE/Edge Grabber Begin" fullword ascii$a2 = "Mail Grabber Begin" fullword ascii$a3 = "PswInfoGrabber" ascii$a4 = "Chrome Login Profile: '"$a5 = "[LOGIN]:[HOST]:"condition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 150KB }rule apt_Fin7_Tirion_loader {meta:author = "Yusuf A. POLAT"description = "Tirion Loader's loader component. It is used by Fin7 group."version = "1.0"date = "2020-07-22" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "e7d89d1f23c2c31e2cd188042436ce6d83dac571a5f30e76cbbcdfaf51e30ad9"strings:$a1 = "HOST_PORTS" fullword ascii$a2 = "KEY_PASSWORD" fullword ascii$a3 = "HOSTS_CONNECT" ascii$a4 = "SystemFunction036"$a5 = "ReflectiveLoader"condition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 15KB }rule apt_Fin7_Carbanak_keylogplugin {meta:author = "Yusuf A. POLAT"description = "Carbanak backdoor's keylogger plugin. It is used by Fin7 group"version = "1.0"date = "2020-07-21" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "db486e0cb94cf2bbe38173b7ce0eb02731ad9a435a04899a03d57b06cecddc4d"strings:$a1 = "SA45E91.tmp" fullword ascii$a2 = "%02d.%02d.%04d %02d:%02d" fullword ascii$a3 = "Event time:" fullword ascii$a4 = "MY_CLASS" fullword ascii$a5 = "RegisterRawInputDevices" fullword ascii condition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 15000 }rule apt_Fin7_Carbanak_procmonplugin {meta:author = "Yusuf A. POLAT"description = "Carbanak backdoor's process monitoring plugin. It is used by Fin7 group"version = "1.0"date = "2020-07-21" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "3bf8610241a808e85e6ebaac2bb92ba4ae92c3ec1a6e56e21937efec71ea5425"strings:$a1 = "[%02d.%02d.%04d %02d:%02d:%02d]" fullword ascii$a2 = "%s open %s" fullword ascii$a3 = "added monitoring %s" fullword ascii$a4 = "pm.dll" fullword ascii$a5 = "CreateToolhelp32Snapshot" fullword ascii condition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 10000 }rule apt_Fin7_Carbanak_hdplugin {meta:author = "Yusuf A. POLAT"description = "Carbanak backdoor's hidden desktop plugin. It is used by Fin7 group"version = "1.0"date = "2020-07-21" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "39b545c7cd26258a9e45923053a5a64c9461470c3d7bfce3be1c776b287e8a95"strings:$a1 = "hd%s%s" fullword ascii$a2 = "Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced" fullword ascii$a3 = "StartHDServer" fullword ascii$a4 = "SetThreadDesktop" fullword asciicondition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 15000 }rule apt_Fin7_Carbanak_hvncplugin {meta:author = "Yusuf A. POLAT"description = "Carbanak backdoor's hvnc plugin. It is used by Fin7 group"version = "1.0"date = "2020-07-21" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "40ce820df679b59476f5d277350dca43e3b3f8cac7ec47ad638371aaa646c315"strings:$a1 = "VncStartServer" fullword ascii$a2 = "VncStopServer" fullword ascii$a3 = "RFB 003.008" fullword ascii$a4 = "-nomerge -noframemerging" fullword ascii$a5 = "--no-sandbox --allow-no-sandbox-job --disable-3d-apis --disable-gpu --disable-d3d11" fullword widecondition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 300000 }rule apt_Fin7_Carbanak_vncplugin {meta:author = "Yusuf A. POLAT"description = "Carbanak backdoor's vnc plugin. It is used by Fin7 group"version = "1.0"date = "2020-07-21" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "ecf3679f659c5a1393b4a8b7d7cca615c33c21ab525952f8417c2a828697116a"strings:$a1 = "VncStartServer" fullword ascii$a2 = "VncStopServer" fullword ascii$a3 = "ReflectiveLoader" fullword ascii$a4 = "IDR_VNC_DLL" fullword asciicondition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 400000 }rule apt_Fin7_Carbanak_rdpplugin {meta:author = "Yusuf A. POLAT"description = "Carbanak backdoor's rdp plugin. It is used by Fin7 group"version = "1.0"date = "2020-07-21" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "0d3f1696aae8472145400d6858b1c44ba7532362be5850dae2edbd4a40f36aa5"strings:$a1 = "sdbinst.exe" fullword ascii$a2 = "-q -n \"UAC\"" fullword ascii$a3 = "-q -u \"%s\"" fullword ascii$a4 = "test.txt" fullword ascii$a5 = "install" fullword ascii$a6 = "uninstall" fullword asciicondition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 400000 }rule apt_Fin7_Carbanak_switcherplugin {meta:author = "Yusuf A. POLAT"description = "Carbanak backdoor's switcher plugin. It is used by Fin7 group"version = "1.0"date = "2020-07-21" reference = "https://threatintelligence.blog/"copyright = "PRODAFT"SHA256 = "d470da028679ca8038b062f9f629d89a994c79d1afc4862104611bb36326d0c8"strings:$a1 = "iiGI1E05.tmp" fullword ascii$a2 = "oCh4246.tmp" fullword ascii$a3 = "inf_start" fullword ascii$a4 = "Shell_TrayWnd" fullword ascii$a5 = "ReadDirectoryChangesW" fullword ascii$a6 = "CreateToolhelp32Snapshot" fullword asciicondition:uint16(0) == 0x5A4D and (all of ($a*)) and filesize < 15000 }總結(jié)
以上是生活随笔為你收集整理的[译] APT分析报告:03.OpBlueRaven揭露APT组织Fin7/Carbanak(上)Tirion恶意软件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Python从零到壹] 三.语法基础之
- 下一篇: [译] APT分析报告:04.Krake