
最近的公開研究表明,與FIN7有重疊的威脅團體已經發生了轉變,新的威脅團體涉及與REVIL、DARKSIDE、BLACKMATTER和ALPHV勒索軟件相關的定向勒索行動。隨着上述觀點的提出,Mandiant將發布與FIN7演變相關的研究,這些研究自從2019年Mahalo FIN7發布後還從未公開過。
通過對所掌握歷史入侵事件和近期入侵事件的關聯分析,Mandiant於2022年1月將8個以前未分類的攻擊團伙合併到了FIN7。本文還強調了FIN7活動在這段時間內的顯著變化,包括使用新型惡意軟件、編入新的初始入侵向量,以及在盈利策略方面可能發生的轉變。
自2017年首次披露關於FIN7的威脅報告和公開研究以來,作者發布了多篇與FIN7行動相關的博文,並且在Mandiant Advantage上提供了更詳細的內容。這篇博文將重點討論最新的FIN7入侵行動,以及所用到的溯源方法。
圖1:FIN7從2020到2021年的活動
LOADOUT是一個經過混淆的VBScript下載器,它能夠從被感染的系統中獲取大量信息,並將信息發送到命令與控制(C2)服務器。C2服務器響應LOADOUT的請求,然後向被感染的系統投送GRIFFON,這是一個基於JavaScript的下載器,能夠使用HTTP或DNS獲取JavaScript模塊並在內存中執行。
毫無疑問,FIN7十分鐘愛PowerShell。FIN7在其攻擊行動中使用了許多編程語言來編寫他們的惡意軟件,然而在涉及到與系統的互動時,精心構建的PowerShell加載器和獨特的PowerShell命令是FIN7的首選工具。
圖2:2019年以來FIN7的PowerShell執行模式
圖3:2021年以來FIN7的PowerShell執行模式
圖2和圖3命令行被用於啟動管理員共享文件夾中的腳本和安裝Windows服務,其獨特之處在於所使用的參數-noni -nop -exe bypass -f。自2019年以來,FIN7在通過CARBANAK等惡意軟件與受害者系統進行互動時使用了此類命令行參數。此後,作者在分析POWERPLANT的感染過程時,發現一些獨特的PowerShell命令發生了改變。
2019年以來,在不同入侵事件中共同出現過的執行模式揭露了多種以-ex bypass -f或-ex bypass -file為參數的PowerShell命令行。雖然這些執行模式看上去比較簡短,但在FIN7相關的威脅活動之外,這些組合在全球的出現率極低。例如,第一種命令行出現了2800多次,均與FIN7引發的事件有關。第二種命令行早在2019年就在10個不同的受害者中出現過近250次,最終也都指向了FIN7。
圖4:2019年以來FIN7的PowerShell執行模式
圖5:2020年以來FIN7的PowerShell執行模式
圖6:2021年以來FIN7的PowerShell執行模式
隨着對FIN7入侵行動理解的加深,作者整合了他們的分析工作,並開始將多個可疑的未分類團體合併到FIN7中。作為這一舉措的一部分,作者在其為客戶提供的2021年防禦託管及快速響應僱傭服務中,增加了與FIN7識別相關的新任務。
FIN7選擇的目標組織廣泛分布在許多的行業,包括軟件業、諮詢業、金融服務、醫療設備、雲服務、媒體、食品與飲料、運輸業,以及公用事業。自2020年以來,作者在他們的客戶群體中發現了十多起與FIN7相關的入侵事件。下面的使用案例介紹了在2021年Mandiant託管防禦僱傭中的FIN7所使用的技術。
(1)FIN7入侵實例
為了在這次入侵行動中獲得初始訪問權,FIN7使用了遭到泄露的遠程桌面協議(RDP)憑據,在兩個不同的時間登錄到目標服務器,並啟動了兩個類似的Windows進程鏈(圖7)。
圖7:兩條FIN7進程事件鏈
圖8:LOADOUT作為信標發送的系統調查信息
TERMITE是一個受密碼保護的shellcode加載器,至少有七個不同的威脅集團使用它來加載BEACON、METASPLOIT和BUGHATCH的shellcode。在這裡,FIN7使用TERMITE來加載和執行Cobalt Strike BEACON的shellcode Stager。
在通過BEACON進行第二階段的入侵後,FIN7開始使用內置的Windows命令以及POWERSPLOIT和Kerberoasting的PowerShell模塊進行進一步的枚舉。
在使用RDP和BEACON進行初步偵察後,FIN7使用經過混淆的加載器將定製的PowerShell後門POWERPLANT載入受害者系統中,並展開第三階段的入侵:
隨後,FIN7嘗試竊取憑據並進一步攻擊受害者的環境,但成功率有限,因為客戶能夠利用託管型防禦與響應(服務)來進行應急響應與快速補救。
本次入侵事件的一個側面凸顯了網絡犯罪技術溯源中的挑戰:在FIN7入侵受害者系統的兩天之間,FIN12也在同一個受害者系統中活動了數小時,並且使用了同一個RDP賬戶。但FIN12所使用的基礎措施和技術與FIN7大不相同,他們試圖使用WEIRDLOOP內存投放器來安裝BEACON,直到受害者開展補救工作。
最初的混淆機制非常基礎,但能夠有效地規避靜態檢測,其做法是將惡意代碼與隨機的垃圾代碼穿插在一起(圖10)。LOADOUT在數月的行動中大獲成功,AV檢測引擎隨即改善了對該下載器的覆蓋率。為了在發送消息時繞過檢測,LOADOUT開發者通過簡單地在字符串中插入「FUCKAV」,將信標中疑似會被檢測的特徵拆分開。
圖9:LOADOUT作為信標發送的系統調查信息
圖10:混淆LOADOUT
事實上,開發者正確地定位到了被用於檢測的字符串。通過對信標的分析,作者發現有一個新開發中的LOADOUT變體(MD5:485b2a920f3b5ae7cfad93a4120ec20d)在提交到VirusTotal後,只有一個反病毒引擎能夠將其檢測出來(圖11)。兩個小時後,又有一個新版本(MD5: 012e7b4d6b5cb8d46771852c66c71d6d)被提交,這次他們通過自定義的混淆機制處理了違規的PowerShell命令(圖12)。
圖11:混淆前的PowerShell命令
圖12:PowerShell命令混淆
5個月後,這個新的改進版的LOADOUT出現了。它經過重構,增加了多層混淆,包括穿插聖經詩句作為填充文本,以及通過自定義機制進行的字符串混淆(圖13)。
圖13:LOADOUT自定義的字符串混淆
FIN7利用多種方法進入受害者網絡,包括網絡釣魚、攻擊第三方系統、Atera代理安裝包、GoToAssist和RDP。在最近的一個案例中,FIN7入侵了一個銷售數字產品的網站,並修改了多個下載鏈接,使之指向用於託管木馬的Amazon S3存儲桶,其中包含一個Atera代理安裝包。這個遠程管理工具之後將被用來把POWERPLANT部署到受害者的系統中。這是Mandiant第一次觀察到FIN7利用供應鏈攻擊的情況。FIN7久經考驗的CARBANAK和DICELOADER(也被稱為Lizar)惡意軟件仍在使用,然而FIN7在最近的入侵中更傾向於使用POWERPLANT後門。
對POWERPLANT的研究表明,它是一個強大且龐大的後門框架,並且其實際擁有的能力取決於C2服務器所提供的模塊。POWERPLANT後門的代碼中包含內部版本標識符。表1展示了從「0.012」版本到「0.028」版本之間已經被發現的樣本。
表1:POWERPLANT樣本
POWERPLANT樣本MD5
版本
5a6bbcc1e44d3a612222df5238f5e7a8
0.012
0291df4f7303775225c4044c8f054360
0.016
3803c82c1b2e28e3e6cca3ca73e6cce7
0.019
d1d8902b499b5938404f8cece2918d3d
0.021(TLS1)
833ae560a2347d5daf05d1f670a40c54
0.021b(SVC)
edb1f62230123abf88231fc1a7190b60
0.021c(SVC)
bce9b919fa97e2429d14f255acfb18b4
0.022
b637d33dbb951e7ad7fa198cbc9f78bc
0.025
2cbb015d4c579e464d157faa16994f86
0.028
這些內部版本號的增長的速度表明,FIN7正在積極開發POWERPLANT(圖14)。在一次行動中,FIN7在目標系統上部署了功能經過微調的新版POWERPLANT。行動中的FIN7在十分鐘內使用了兩個版本的POWERPLANT,分別為「0.023」和「0.025」。每個版本的功能都大體類似,較新版本通常有方案上的改進和功能的新增。
圖14:POWERPLANT版本號
Mandiant還從POWERPLANT控制器中恢復了服務器端部分的代碼組件。部分組件中的線索暗示了惡意軟件開發者所具有的防範意識。兩個例子可以表明FIN7已經意識到研究人員在調查他們的基礎設施,並根據用戶名等特徵封禁了一部分的主機。
圖15:POWERPLANT服務器設置中的功能片斷
圖16:POWERPLANT服務器設置中的功能片斷
圖17:POWERPLANT服務器配置中的功能片斷
圖18:使用PowerShell編寫的FIN7 EASYLOOK變體中的VM檢查
圖19:使用JavaScript編寫的FIN7 EASYLOOK第一個變體中的VM檢查
表2:BOATLAUNCH PE導出表所含的DLL名稱
BOATLAUNCH位數
DLL名稱
32-bit
amsi32_kill.dll
64-bit
amsi64_kill.dll
作者在深入調查後還發現存在使用BIRDWATCH的情況,以及FIN7和疑似FIN7的團體(如UNC3381)所使用的BIRDWATCH變種。BIRDWATCH是一個基於.NET的下載器,它通過HTTP獲取有效載荷,將它們寫入磁盤並執行。BIRDWATCH還會上傳從目標系統中取得的偵察信息,其中包括運行的進程、安裝的軟件、網絡配置、瀏覽器信息和活動目錄數據。
BIRDWATCH通常被統稱為「JssLoader」。然而,BIRDWATCH存在多種變體,作者將其作為獨立的代碼家族進行跟蹤。BIRDWATCH的一個變體是CROWVIEW,儘管同樣基於.NET,但它與原型BIRDWATCH在代碼上差異明顯,因此被單獨歸為一類。與BIRDWATCH不同的是,CROWVIEW可以容納一個內嵌的有效載荷,可以自我刪除,支持額外的參數,並且所存儲的配置也稍有差異。
FIN7會使用不同的編程語言中實現了類似或完全相同的功能,這一現象在過去幾年觀察到的各種代碼家族中反覆出現。與EASYLOOK類似,BIRDWATCH和CROWVIEW存在JScript和PowerShell的變體,除此以外還有使用C++實現的獨立版本。這些代碼重用與重疊的數據,與在基礎設施和技術方面的分析相結合,有助於在合併多個未分類團體時進行技術溯源。
在第一個例子中,BIOS(基本輸入輸出系統)序列號收集功能在POWERPLANT和CROWVIEW代碼家族中均有出現。
圖20:FIN7相關的C#版CROWVIEW代碼片段,這是BIRDWATCH的一個變體
圖21:FIN7相關的PowerShell版POWERPLANT代碼片段
圖22:FOWLGAZE("JssLoader")的JSON數據收集格式片段
圖23:EASYLOOK(偵察模塊)的數據收集代碼片段
最後一個代碼重用的例子是「theAnswer」的使用,它是一個變量,在CROWVIEW和POWERPLANT對C2服務器發送POST請求的功能中出現,如圖24和圖25所示。
圖24:FIN7相關的C#版CROWVIEW和BIRDWATCH(JssLoader)代碼片段
圖25:FIN7相關的PowerShell版POWERPLANT代碼片段
2021年10月,Mandiant觀察到一個主要針對美國組織的活動,攻擊者向受害者組織郵寄名為「BadUSB」的惡意USB設備。這一活動的歸屬被劃分到未分類團體UNC3319里,作者懷疑該團體與FIN7有關聯,但置信度不高。
圖26:UNC3381以Quickbooks為主題的網絡釣魚郵件
Mandiant在2020年發布了結論情報,其中概述了FIN7在盈利入侵行為中可能發生轉型的證據,證明其從(竊取)支付卡數據轉向了勒索行動。儘管與以前相比,FIN7的行動有了很大的改變,但截至本報告發布時,Mandiant還未能將任何直接部署的勒索軟件關聯到FIN7上。然而,FIN7成員從事勒索軟件行動已經被證實,證據包括入侵數據、代碼使用、成員擁有的基礎設施和可信的第三方來源。
圖27: FIN7使用的代碼簽名證書,也用於簽名認證多個DARKSIDE勒索軟件樣本
表3:使用代碼證書籤名的文件
文件MD5
備註
ab29b9e225a05bd17e919e1d0587289e
DNS BEACON
1c3b19163a3b15b39ae00bbe131b499a
DARKSIDE
230a681ebbcdba7ae2175f159394d044
DARKSIDE
bf41fc54f96d0106d34f1c48827006e4
DARKSIDE
c4da0137cbb99626fd44da707ae1bca8
DARKSIDE
28e9581ab34297b6e5f817f93281ffac
FIN7 BEACON
38786bc9de1f447d0187607eaae63f11
FIN7 BEACON
6fba605c2a02fc62e6ff1fb8e932a935
FIN7 BEAKDROP
儘管美國司法部在2018年起訴了FIN7的成員,並在2021年宣布了相關的判決,但FIN7的一些成員仍然活躍,並隨着時間的推移繼續發展犯罪行動。在整個演變過程中,FIN7加快了行動的節奏,擴大了目標範圍,甚至可能與地下網絡犯罪中的其他勒索軟件行動產生聯繫。
指標
備註
0c6b41d25214f04abf9770a7bdfcee5d
BOATLAUNCH 32bit
21f153810b82852074f0f0f19c0b3208
BOATLAUNCH 64bit
02699f95f8568f52a00c6d0551be2de5
POWERPLANT
0291df4f7303775225c4044c8f054360
POWERPLANT
0fde02d159c4cd5bf721410ea9e72ee2
POWERPLANT
2cbb015d4c579e464d157faa16994f86
POWERPLANT
3803c82c1b2e28e3e6cca3ca73e6cce7
POWERPLANT
5a6bbcc1e44d3a612222df5238f5e7a8
POWERPLANT
833ae560a2347d5daf05d1f670a40c54
POWERPLANT
b637d33dbb951e7ad7fa198cbc9f78bc
POWERPLANT
bce9b919fa97e2429d14f255acfb18b4
POWERPLANT
d1d8902b499b5938404f8cece2918d3d
POWERPLANT
edb1f62230123abf88231fc1a7190b60
POWERPLANT
findoutcredit[.]com
POWERPLANT C2
againcome[.]com
POWERPLANT C2
modestoobgyn[.]com
POWERPLANT C2
myshortbio[.]com
POWERPLANT C2
estetictrance[.]com
POWERPLANT C2
internethabit[.]com
POWERPLANT C2
bestsecure2020[.]com
POWERPLANT C2
chyprediction[.]com
POWERPLANT C2
d405909fd2fd021372444b7b36a3b806
POWERTRASH Cryptor & CARBANAK Payload
122cb55f1352b9a1aeafc83a85bfb165
CROWVIEW (BIRDWATCH/JssLoader Variant)
domenuscdm[.]com
CROWVIEW/LOADOUT C2
936b142d1045802c810e86553b332d2d
LOADOUT
23e1725769e99341bc9af48a0df64151
LOADOUT
4d56a1ca28d9427c440ec41b4969caa2
LOADOUT
50260f97ac2365cf0071e7c798b9edda
LOADOUT
spontaneousance[.]com
LOADOUT C2
fashionableeder[.]com
LOADOUT C2
incongruousance[.]com
LOADOUT C2
electroncador[.]com
LOADOUT C2
6fba605c2a02fc62e6ff1fb8e932a935
BEAKDROP
49ac220edf6d48680f763465c4c2771e
BEACON
astara20[.]com
BEACON C2
coincidencious[.]com
BEACON C2
52f5fcaf4260cb70e8d8c6076dcd0157
Trojanized installer containing Atera Agent
78c828b515e676cc0d021e229318aeb6
WINGNIGHT
70bf088f2815a61ad2b1cc9d6e119a7f
WINGNIGHT
4961aec62fac8beeafffa5bfc841fab8
FLYHIGH
Mandiant安全驗證操作:VID
名稱
A150-527
Command and Control - FIN7, BATELEUR, Check-in
A150-528
Command and Control - FIN7, GRIFFON, Check-in
A151-165
Command and Control - FIN7, GRIFFON, DNS Query #1
A151-166
Command and Control - FIN7, GRIFFON, DNS Query #2
A104-585
Host CLI - FIN7, Local Javascript Execution via WMI and Mshta
A150-546
Malicious File Transfer - FIN7, CARBANAK, Download, Variant #1
A150-548
Malicious File Transfer - FIN7, CARBANAK, Download, Variant #3
A150-710
Malicious File Transfer - FIN7, DICELOADER, Download, Variant #1
A150-549
Malicious File Transfer - FIN7, DRIFTPIN, Download, Variant #1
A150-550
Malicious File Transfer - FIN7, DRIFTPIN, Download, Variant #2
A151-168
Malicious File Transfer - FIN7, GRIFFON, Download, JavaScript Variant
A150-553
Malicious File Transfer - FIN7, GRIFFON, Download, Variant #1
A150-554
Malicious File Transfer - FIN7, GRIFFON, Download, Variant #2
A150-555
Malicious File Transfer - FIN7, GRIFFON, Download, Variant #3
A150-572
Malicious File Transfer - FIN7, SUPERSOFT, Download, Variant #1
A150-729
Malicious File Transfer - FIN7, TAKEOUT, Download, Variant #1
A150-730
Malicious File Transfer - FIN7, TAKEOUT, Download, Variant #2
A150-731
Malicious File Transfer - FIN7, TAKEOUT, Download, Variant #3
A150-585
Phishing Email - Malicious Attachment, FIN7, BATELEUR DOC Lure
A150-586
Phishing Email - Malicious Attachment, FIN7, GRIFFON DOCM Lure
A151-167
Phishing Email - Malicious Attachment, FIN7, GRIFFON, Windows 11 Themed Lure
A150-587
Phishing Email - Malicious Attachment, FIN7, Tracking Pixel
A150-590
Protected Theater - FIN7, BATELEUR, Execution
A151-044
Protected Theater - FIN7, CARBANAK, Execution
A150-366
Protected Theater - FIN7, CULTSWAP, Execution
A150-591
Protected Theater - FIN7, GRIFFON, Execution
A151-170
Protected Theater - FIN7, GRIFFON, Execution, JavaScript Variant
A151-169
Protected Theater - FIN7, GRIFFON, Execution, Word Document Variant
FIN7相關的MITRE ATT&CK映射:
執行T1059:命令和腳本解釋器
T1059.001:PowerShell
T1059.003:Windows命令提示符
T1059.005:Visual Basic
T1059.007:JavaScript
T1204.001:惡意鏈接
T1204.002:惡意文件
T1569.002:服務執行
T1195.002:攻擊軟件供應鏈
T1199:信任關係
T1566.001:魚叉式網絡釣魚附件
T1566.002:魚叉式網絡釣魚鏈接
T1491.002:外部損壞
資源開發T1583.003:虛擬專用服務器
T1588.003:代碼簽名證書
T1588.004:數字證書
T1608.003:安裝數字證書
T1608.005:鏈接目標
防禦規避編輯|張逸鳴
審校|何雙澤、金矢
本文為CNTIC編譯整理,不代表本公眾號觀點,轉載請保留出處與鏈接。聯繫信息進入公眾號後點擊「關於我們」可見。