作者:SharkTeam

國家級APT(Advanced Persistent Threat,高級持續性威脅)組織是有國家背景支持的頂尖駭客團夥,專門針對特定目標進行長期的持續性網路攻擊。北韓APT組織Lazarus Group就是非常活躍的一個APT團夥,其攻擊目的主要以竊取資金為主,堪稱全球金融機構的最大威脅,近年來多起加密貨幣領域的攻擊和資金竊取案件就是他們所為。

一、Lazarus Group

根據維基百科資料,Lazarus Group 成立於2007 年,隸屬於北韓人民軍總參謀部偵察總局第三局旗下的110 號研究中心,專門負責網路戰。該組織分為2 個部門,一個是大約1700 名成員的BlueNorOff(也稱為APT38),負責透過偽造SWIFT 訂單進行非法轉賬,專注於利用網路漏洞謀取經濟利益或控制系統來實施金融網路犯罪,此部門針對金融機構和加密貨幣交易所。另一個是大約1600 名成員的AndAriel,以韓國為攻擊目標。

已知Lazarus Group 最早的攻擊活動是2009 年其利用DDoS 技術來攻擊韓國政府的「特洛伊行動」。而最著名的一次是2014 年對索尼影業的攻擊,因為索尼上映關於暗殺北韓領導人金正恩的喜劇。

該組織旗下機構BlueNorOff 的一次知名攻擊是2016 年的孟加拉國銀行攻擊案,他們試圖利用SWIFT 網路從屬於孟加拉國中央銀行的紐約聯邦儲備銀行帳戶非法轉移近10 億美元。在完成了幾筆交易(2000 萬美元追蹤到斯里蘭卡,8100 萬美元追蹤到菲律賓)後,紐約聯邦儲備銀行以拼寫錯誤引起的懷疑為由阻止了其餘交易。

自2017 年以來,該組織開始對加密產業進行攻擊,並獲利至少10 億美元。

二、技戰法分析

2.1 常用攻擊手法分析

Lazarus早期多利用殭屍網路對目標進行DDos攻擊;目前主要攻擊手法轉為魚叉攻擊、水坑攻擊、供應鏈攻擊等手法,也針對不同人員採取定向社會工程學攻擊。

戰術特徵:

使用郵件魚叉攻擊和水坑攻擊

攻擊過程會利用系統破壞或勒索應用程式幹擾事件的分析

利用SMB協定漏洞或相關蠕蟲工具實現橫向移動和載重投放

攻擊銀行SWIFT系統實現資金盜取

技術特徵:

使用多種加密演算法,包括RC4,AES, Spritz等標準演算法,也使用XOR及自訂字元變換演算法

主要使用虛假構造的TLS協議,透過在SNI record中寫入白域名來Bypass IDS。也使用IRC、HTTP協議

透過破壞MBR、分區表或向磁區寫入垃圾資料而破壞系統

使用自刪除腳本

攻擊手段:

魚叉攻擊:魚叉攻擊是電腦病毒術語,是駭客攻擊方式之一。將木馬程式作為電子郵件的附件,並起上一個極具誘惑力的名稱,發送給目標電腦,誘使受害者打開附件,從而感染木馬。 Lazarus通常以郵件夾帶惡意文件作為誘餌,常見檔案格式為DOCX,後期增加了BMP格式。入侵方式主要利用惡意巨集與Office常見漏洞、0day漏洞、植入RAT的手法。

水坑攻擊:顧名思義,是在受害者必經之路設置了一個“水坑(陷阱)”,最常見的做法是,黑客分析攻擊目標的上網活動規律,尋找攻擊目標經常訪問的網站的弱點,先將此網站「攻破」並植入攻擊程式碼,一旦攻擊目標造訪網站就會「中招」。 Lazarus通常針對貧窮的或欠發達地區的小規模銀行金融機構使用水坑攻擊,這樣就可以在短時間內大規模盜取資金。 2017年,Lazarus對波蘭金融監理機構發動水坑攻擊,在網站官方網站植入惡意的JavaScript漏洞,導致波蘭多家銀行被植入惡意程式。這次攻擊感染了31 個國家的104 個組織,大多數目標是位於波蘭、智利、美國、墨西哥和巴西的金融機構。

社工攻擊:社會工程攻擊,是一種利用"社會工程學" 來實施的網路攻擊行為。在電腦科學中,社會工程學指的是透過與他人的合法地交流,來使其心理受到影響,做出某些動作或透露一些機密資訊的方式。這通常被認為是一種欺詐他人以收集資訊、行騙和入侵電腦系統的行為。 Lazarus擅長將社工技術運用到攻擊週期中,無論是投遞的誘餌或身分偽裝,都令受害者無法甄別,從而掉入它的陷阱中。 2020年期間,Lazarus在領英網站偽裝招募加密貨幣工作人員並發送惡意文檔,旨在獲取憑證從而盜取目標加密貨幣。 2021年,Lazarus以網路安全人員身分潛伏在Twitter中,伺機傳送嵌有惡意程式碼的工程檔案攻擊同行人員。

武器庫:

Lazarus使用的網路武器包含大量自訂工具,使用程式碼有許多相似之處。肯定地說,這些軟體來自相同的開發人員,可以說明Lazarus背後有一個具有一定規模的開發團隊。 Lazarus擁有的攻擊能力和工具包括DDoS botnets、 keyloggers、 RATs、wiper malware,使用的惡意程式碼包括Destover、Duuzer和Hangman等。

2.2典型攻擊事件分析

以下以一起典型的Lazarus針對加密產業的魚叉攻擊為例進行分析。 Lazarus透過郵件附件或連結的方式,誘導目標工作人員下載惡意壓縮包,並執行壓縮包中的惡意檔案。

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

郵件末尾的「CoinbaseJobDescription」即為惡意連結並誘導使用者點擊,一旦點擊使用者就會下載惡意壓縮包,並執行壓縮包中的惡意檔案。壓縮包分為三種情況:

釋放加密的誘餌文件和一個帶有惡意命令的LNK文件,由LNK文件下載後續載荷,後續載荷釋放文件金鑰和惡意腳本;

釋放LNK文件,LNK文件下載後續載重,後續載重釋放誘餌文件和惡意腳本;

釋放帶有巨集的OFFICE文件,由惡意巨集下載後續載重並執行。

以樣本b94a13586828f8f3474f7b89755f5e7615ff946efd510a4cca350e6e1b4af440為例進行分析。此樣本檔案名為Ledger_Nano_S&X_Security_Patch_Manual.zip,是一個zip壓縮包,檔案名稱中的LedgerNano是一款硬體錢包,用於保護加密資產,S和X是其型號。

樣本偽裝成LedgerNano的安全補丁手冊,解壓縮後會釋放一個偽裝成pdf檔案的捷徑檔案:

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

使用者雙擊該快捷方式後,會執行指令:

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

在該命令中,使用cmd靜默執行expand程序,將msiexec.exe複製到%appdata%\pat.exe路徑下,然後使用pcalua.exe開啟pat.exe,從遠端伺服器上下載msi檔案並執行。這個過程中使用了多種逃避木馬偵測的技術:

expand.exe是系統用來解壓縮壓縮包的程序,但可以用來進行檔案複製,取代敏感的copy指令;

複製並重新命名msiexec.exe,以逃避對msiexec.exe的執行偵測;

pcalua.exe是windows程式相容性助手,是系統的白名單程序,攻擊者使用該程式呼叫重新命名為pat.exe的msiexec.exe,存取遠端伺服器上的惡意msi文件,從而逃避偵測。

取得到的MSI檔案執行後,會執行內嵌的腳本:

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

該腳本為Lazarus典型的一階段腳本,其功能包括:

下載並開啟正常的PDF檔案從而迷惑受害者;

向啟動目錄釋放Edge.lnk文件,完成自啟動;lnk檔案執行的命令與樣本​​解壓縮後的lnk檔案基本上相同,也是使用pcalua.exe調用重命名後的msiexec.exe載入遠端伺服器上的msi檔案;該文件的名稱和圖示都偽裝為Edge瀏覽器,讓受害者降低警覺;

呼叫WMI指令取得進程名稱清單並進行拼接,然後檢查下列行程名稱:

「kwsprot」:金山毒霸相關進程

“npprot”:Net ProtectorAntiVirus相關進程

“fshoster”:F-Secure相關進程

如果拼接後的程序名稱中存在上述字串之一,則會使用cscript.exe執行後續腳本,否則使npprot用wscript.exe;

將選取的腳本執行程式複製到%public%目錄下;且如果進程名稱中存在kwsprot或npprot,會將用於執行腳本的程式重新命名為icb.exe,以逃避偵測;

解碼base64編碼的後續腳本,釋放到臨時資料夾下,命名為RgdASRgrsF.js

使用複製到%public%目錄下的腳本執行程序,執行RgdASRgrsF.js

RgdASRgrsF.js是Lazarus典型的二階段腳本,其功能非常簡單,生成隨機的UID後與伺服器通訊,然後循環接受伺服器的命令並執行;所執行的命令通常一些收集系統資訊的命令:

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

至此攻擊已經完成,駭客可以在使用者電腦上獲得他所需的檔案或密碼等敏感資訊。透過對Lazarus可以發現,目前其攻擊的目標產業包括政府、軍隊、金融、核工業、化學、醫療、航空航太、娛樂媒體和加密貨幣,從2017年開始加密貨幣產業的比重明顯增大。

三、洗錢模式分析

目前已明確統計到的Lazarus攻擊加密領域的安全事件和損失如下:

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

超過30億美元的資金在網路攻擊中被Lazarus盜取,據悉,Lazarus 駭客組織背後有著北韓戰略利益的支撐,為北韓的核彈、彈道飛彈計畫提供資金。為此,美國宣布懸賞500萬美元,對Lazarus駭客組織進行製裁。美國財政部也已將相關地址添加到OFAC特別指定國民(SDN)名單中,禁止美國個人、實體和相關地址進行交易,以確保國家資助的集團無法兌現這些資金,以此進行製裁。以太坊開發商Virgil Griffith因幫助北韓使用虛擬貨幣逃避制裁而被判處五年零三個月的監禁,今年OFAC 也制裁了三名與Lazarus Group 相關人員,其中兩名被制裁者Cheng Hung Man 和Wu Huihui 是為Lazarus 提供加密貨幣交易便利的場外交易(OTC) 交易員,而第三人Sim Hyon Sop 提供了其他財務支持。

儘管如此,Lazarus已完成了超10億美元的資產轉移和清洗,他們的洗錢模式分析如下。以AtomicWallet事件為例,移除駭客設定的技術幹擾因素後(大量的假代幣轉帳交易+多重位址分帳),可以得到駭客的資金轉移模式:

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

圖:Atomic Wallet 受害者1資金轉移視圖

受害者1地址0xb02d...c6072向黑客地址0x3916...6340轉移304.36 ETH,經由中間地址0x0159...7b70進行8次分帳後,歸集至地址0x69ca...5324。此後將歸集資金轉移至地址0x514c...58f67,目前資金仍在該地址中,地址ETH餘額為692.74 ETH(價值127萬美元)。

起底朝鮮駭客組織Lazarus Group的攻擊手法及洗錢模式

圖:Atomic Wallet 受害者2資金轉移視圖

受害者2地址0x0b45...d662向黑客地址0xf0f7...79b3轉移126.6萬USDT,黑客將其分成三筆,其中兩筆轉移至Uniswap,轉賬總額為126.6萬USDT;另一筆向地址0x49ce. ..80fb進行轉移,轉移金額為672.71ETH。受害者2向黑客地址0x0d5a...08c2轉移2.2萬USDT,該黑客通過中間地址0xec13...02d6等進行多次分賬,直接或間接將資金歸集至地址0x3c2e...94a8。

這種洗錢模式與先前的RoninNetwork、Harmony攻擊事件中的洗錢模式高度一致,均包含三個步驟:

被竊資金整理兌換:發動攻擊後整理原始被竊代幣,透過dex等方式將多種代幣swap成ETH。這是規避資金凍結的常用方式。

被竊資金歸集:將整理好的ETH歸集到數個一次性錢包地址。 Ronin事件中駭客一共用了9個這樣的位址,Harmony使用了14個,Atomic Wallet事件使用了近30個位址。

被竊資金轉出:使用歸集地址透過Tornado.Cash將錢洗出。這便完成了全部的資金轉移過程。

除了具備相同的洗錢步驟,在洗錢的細節上也有高度的一致性:

攻擊者非常有耐心,均使用了長達一週的時間進行洗錢操作,均在事件發生幾天後開始後續洗錢動作。

洗錢流程中均採用了自動化交易,大部分資金歸集的動作交易筆數多,時間間隔小,模式統一。

透過分析,我們認為Lazarus的洗錢模式通常如下:

(1)多帳號分帳、小額多筆轉移資產,提高追蹤難度。

(2)開始製造大量假幣交易,提高追蹤難度。以Atomic Wallet事件為例,27個中間地址中有23個帳戶均為假幣轉移地址,近期在對Stake.com的事件分析中也發現採用類似技術,但之前的Ronin Network、Harmony事件並沒有這種幹擾技術,說明Lazarus的洗錢技術也在升級。

(3)更多的採用鏈上方式(如Tonado Cash)進行混幣,早期的事件中Lazarus 經常使用中心化交易所獲得啟動資金或進行後續的OTC,但近期越來越少的使用中心化交易所,甚至可以認為是可以的避免使用中心化交易所,這與近期的幾起制裁事件應該有關。