國(guó)家級(jí)APT(Advanced Persistent Threat,高級(jí)持續(xù)性威脅)組織是有國(guó)家背景支持的頂尖黑客團(tuán)伙,,專注于針對(duì)特定目標(biāo)進(jìn)行長(zhǎng)期的持續(xù)性網(wǎng)絡(luò)攻擊,。
奇安信旗下的高級(jí)威脅研究團(tuán)隊(duì)紅雨滴(RedDrip Team)每年會(huì)發(fā)布全球APT年報(bào)【1】、中報(bào),,對(duì)當(dāng)年各大APT團(tuán)伙的活動(dòng)進(jìn)行分析總結(jié),。
虎符智庫(kù)特約奇安信集團(tuán)旗下紅雨滴團(tuán)隊(duì),開設(shè)“起底國(guó)家級(jí)APT組織”欄目,,逐個(gè)起底全球各地區(qū)活躍的主要APT組織,。本次鎖定東南亞地區(qū)最為活躍的APT組織:OceanLotus(海蓮花)。
03
OceanLotus
OceanLotus(海蓮花)是以中國(guó)為主要攻擊目標(biāo)的APT組織,。在東南亞地區(qū)最為活躍,。
OceanLotus(海蓮花)由奇安信紅雨滴團(tuán)隊(duì)(前身為天眼實(shí)驗(yàn)室)最早披露并命名,奇安信內(nèi)部跟蹤編號(hào)為APT-Q-31,。
背景
OceanLotus(海蓮花)又名APT32,、SeaLotus等稱號(hào),,是一個(gè)據(jù)稱有東南亞背景的APT組織,其攻擊活動(dòng)最早可追溯到2012年4月,。在首次披露的攻擊活動(dòng)中,,攻擊目標(biāo)涵蓋了中國(guó)海事機(jī)構(gòu)、海域建設(shè)部門,、科研院所和航運(yùn)企業(yè),。
自2015年首次披露以來(lái),OceanLotus持續(xù)活躍至今,,后續(xù)針對(duì)中國(guó)境內(nèi)的攻擊活動(dòng)擴(kuò)展到幾乎所有重要機(jī)構(gòu),,包括政府部門、科研院所,、境內(nèi)高校和金融投資機(jī)構(gòu),。
根據(jù)各安全廠商機(jī)構(gòu)對(duì)該組織活動(dòng)的拼圖式揭露,OceanLotus除針對(duì)中國(guó)發(fā)起攻擊之外,,其攻擊所涉及的國(guó)家地區(qū)分布非常廣泛,,包括越南周邊國(guó)家(如柬埔寨,、泰國(guó),、老撾等)和歐洲地區(qū),該組織的攻擊目標(biāo)還包括越南的異見人士,、人權(quán)代表,、媒體、環(huán)保組織等,。
OceanLotus的攻擊不局限于國(guó)家級(jí)網(wǎng)絡(luò)間諜活動(dòng),,也延伸至商業(yè)情報(bào)竊取,比如汽車制造行業(yè),。2019年,,豐田、現(xiàn)代,、寶馬等跨國(guó)汽車企業(yè)被報(bào)道遭到OceanLotus攻擊,,導(dǎo)致數(shù)據(jù)泄露。
另外,,OceanLotus被觀察到進(jìn)行加密貨幣挖礦,。2020年7月至8月,該組織在針對(duì)法國(guó)和越南私營(yíng)部門以及政府機(jī)構(gòu)的攻擊中,,將門羅幣礦機(jī)程序部署在受害主機(jī)上,。
攻擊特點(diǎn)手段、工具
OceanLotus擁有非常高的社會(huì)工程學(xué)技巧,,常用魚叉攻擊和水坑攻擊,,在近年來(lái)的攻擊活動(dòng)中還采用了供應(yīng)鏈攻擊手法對(duì)高價(jià)值目標(biāo)進(jìn)行滲透,。OceanLotus的攻擊武器覆蓋多平臺(tái),已知具有針對(duì)Windows和Mac OS系統(tǒng)的攻擊工具,,疑似具備針對(duì)Android和Linux平臺(tái)的惡意軟件,,該組織擅長(zhǎng)結(jié)合公開的商業(yè)或開源工具實(shí)施攻擊活動(dòng),比如Cobalt Strike,,Mimikatz,。
隨著攻擊活動(dòng)不斷被安全廠商曝光,OceanLotus也在不斷升級(jí)自己的攻擊手法,,通過白利用,、多階段加載、代碼混淆加密等手段加強(qiáng)隱蔽性,,規(guī)避檢測(cè)與追蹤,。
從過往OceanLotus攻擊活動(dòng)中,總結(jié)出該組織具有以下特點(diǎn):
精通目標(biāo)國(guó)家語(yǔ)言,,熟悉目標(biāo)國(guó)家時(shí)事新聞熱點(diǎn)以及政府組織結(jié)構(gòu),,能夠制作出極具迷惑性的攻擊誘餌;
能夠組織長(zhǎng)周期大規(guī)模的攻擊活動(dòng),,綜合使用魚叉攻擊,、水坑攻擊、社工攻擊,、供應(yīng)鏈攻擊等多種手法入侵高價(jià)值目標(biāo),,一旦獲得一臺(tái)機(jī)器的控制權(quán),便會(huì)掃描整個(gè)內(nèi)網(wǎng)并橫向移動(dòng)以擴(kuò)大感染面,,OceanLotus在入侵和橫向移動(dòng)過程中具備利用0day/Nday漏洞的能力,;
不斷增強(qiáng)惡意代碼隱蔽性以規(guī)避檢測(cè),常用的手法包括利用系統(tǒng)白名單程序,、應(yīng)用軟件DLL劫持(白加黑),、多階段加載、代碼混淆加密,;
為了隱藏真實(shí)身份,,經(jīng)常變換下載服務(wù)器和C2服務(wù)器的域名和IP,而且大多數(shù)域名為了抵抗溯源都開啟了Whois域名隱藏,,使得分析人員很難知道惡意域名背后的注冊(cè)者,,還曾在歷史攻擊活動(dòng)中使用DGA(域名生成算法)進(jìn)一步逃避檢測(cè)追蹤。
?。ㄒ唬┕羰侄?/p>
1. 魚叉攻擊
OceanLotus制作的魚叉郵件大都具有非常本土化的郵件主題,,貼合目標(biāo)國(guó)家的時(shí)事熱點(diǎn),迷惑性極強(qiáng),并且使用的攻擊誘餌類型多樣,。
在歷次攻擊活動(dòng)中出現(xiàn)過以下類型攻擊誘餌:
?。?) 攜帶惡意宏或漏洞利用的Office文檔;
?。?) 使用word程序圖標(biāo)進(jìn)行偽裝的可執(zhí)行文件,;
(3) 合法可執(zhí)行文件加惡意DLL(白加黑)誘餌,;
?。?) Chm文件誘餌;
?。?) Lnk文件誘餌,;
(5) Hta文件誘餌,;
?。?) 攜帶CVE-2018-20250漏洞的WinRAR壓縮包;
?。?) SFX自解壓文件,。
圖1 OceanLotus通過魚叉郵件的攻擊鏈【2】
2. 水坑攻擊
OceanLotus采用兩種手段制作水坑:攻陷合法網(wǎng)站植入惡意Javascript代碼,或者搭建偽裝為合法網(wǎng)站的惡意網(wǎng)站,。OceanLotus通過水坑網(wǎng)站除了直接向目標(biāo)系統(tǒng)投遞惡意軟件,,還結(jié)合社會(huì)工程學(xué)手段制作釣魚頁(yè)面竊取攻擊目標(biāo)的郵箱賬號(hào)。
3. 社工攻擊
社會(huì)工程學(xué)也是OceanLotus常用的攻擊手段,。該組織曾在Facebook等平臺(tái)上偽造身份為活動(dòng)家和商業(yè)實(shí)體的角色,。為了使這些虛構(gòu)人物或者組織顯得更真實(shí)可信,,OceanLotus會(huì)在多個(gè)互聯(lián)網(wǎng)服務(wù)平臺(tái)上偽造相關(guān)信息,。該組織在互聯(lián)網(wǎng)上創(chuàng)建的一些社交頁(yè)面用來(lái)吸引特定關(guān)注者,以便后續(xù)進(jìn)行定向的網(wǎng)絡(luò)釣魚或者下發(fā)惡意軟件,。
4. 供應(yīng)鏈攻擊
在最近幾年的攻擊活動(dòng)中,,OceanLotus開始采用供應(yīng)鏈攻擊方式,向攻擊目標(biāo)組織機(jī)構(gòu)的IT服務(wù)商發(fā)起攻擊,,通過感染上游IT服務(wù)商,,并借助網(wǎng)絡(luò)邊界設(shè)備(如VPN)的漏洞進(jìn)入攻擊目標(biāo)的內(nèi)網(wǎng)。
?。ǘ┦褂霉ぞ呒凹夹g(shù)特征
OceanLotus使用的網(wǎng)絡(luò)武器包括制作水坑網(wǎng)站的Javascript惡意代碼框架,、針對(duì)Windows和Mac OS系統(tǒng)的惡意軟件。
此外,,安全廠商還披露了與OceanLotus組織存在關(guān)聯(lián)的Android和Linux平臺(tái)惡意軟件,。
1. 水坑網(wǎng)站Javascript惡意代碼框架
OceanLotus通過植入的Javascript惡意代碼追蹤網(wǎng)站訪問者,并收集訪問者設(shè)備信息,然后對(duì)目標(biāo)人員采取對(duì)應(yīng)攻擊行動(dòng),。
Javascript代碼具有如下特征:
?。?) 多階段加載,植入第一階段Javascript代碼負(fù)責(zé)檢測(cè)運(yùn)行環(huán)境,,并根據(jù)檢測(cè)結(jié)果決定是否從C2獲取第二階段Javascript代碼,;
(2) 第二階段Javascript為開源項(xiàng)目fingerprintjs2的修改版,,作用是收集訪問設(shè)備的信息并加密傳遞給第二階段C2,;
(3) 根據(jù)收集的用戶設(shè)備信息判斷是否屬于攻擊目標(biāo),,只向攻擊目標(biāo)下發(fā)Javascript攻擊代碼實(shí)施后續(xù)攻擊行為,。
圖2 OceanLotus利用水坑攻擊收集設(shè)備信息并下發(fā)后續(xù)payload【3】
2. Windows平臺(tái)
OceanLotus針對(duì)Windows系統(tǒng)的攻擊工具包括Denis木馬、Remy木馬,、Cobalt Strike木馬以及KerrDown下載器,,其中由Cobalt Strike生成的木馬最常見。
除此之外OceanLotus還使用Powershell腳本和公開工具(如Mimikatz,、nbtscan)進(jìn)行內(nèi)網(wǎng)滲透和橫向移動(dòng),。
OceanLotus在Windows平臺(tái)的攻擊活動(dòng)具有如下特征:
(1) 多階段加載
惡意代碼從植入目標(biāo)系統(tǒng)到最終遠(yuǎn)控運(yùn)行,,通常會(huì)經(jīng)歷多階段加載,,后續(xù)載荷獲取方式包括:從當(dāng)前載荷自身數(shù)據(jù)提取、讀取其他文件數(shù)據(jù)以及從C2服務(wù)器下載,。
?。?) 代碼混淆加密
為了避免檢測(cè)分析,OceanLotus惡意代碼在每個(gè)階段的載荷基本都會(huì)經(jīng)過加密處理,,使用的加密算法包括各類XOR加密和對(duì)稱加密(比如RC4,、AES)。OceanLotus還曾使用過圖片隱寫技術(shù)隱藏后續(xù)載荷,,具體做法是將后續(xù)載荷的加密數(shù)據(jù)存放在png類型圖片像素的最低有效位,。從2019年開始,OceanLotus植入目標(biāo)系統(tǒng)的后門出現(xiàn)定制化特點(diǎn),,即后續(xù)載荷需要用與目標(biāo)主機(jī)某個(gè)特征標(biāo)識(shí)(比如主機(jī)名,、IP地址或者M(jìn)AC地址)的hash值作為密鑰才能成功解密,該方法不僅增強(qiáng)了惡意軟件的隱蔽性,,也極大阻礙了安全人員對(duì)其攻擊行為的分析與追蹤,。
除了加密,OceanLotus還經(jīng)常使用各種代碼混淆手段對(duì)抗靜態(tài)分析,。此外,,OceanLotus有時(shí)也會(huì)在惡意程序文件末尾中填充大量無(wú)效數(shù)據(jù),增加文件尺寸,干擾一些安全軟件的檢測(cè)分析,。
?。?) 白利用
OceanLotus會(huì)使用一系列白利用手法繞過殺毒軟件檢測(cè),曾使用過Windows系統(tǒng)白名單程序odbcconf,、msbuild執(zhí)行惡意軟件,。該組織使用最多的白利用手法是DLL劫持(白加黑),即可執(zhí)行文件都是帶有數(shù)字簽名的正常應(yīng)用程序,,而與之相關(guān)的DLL文件被替換為了惡意DLL,。
(4) 遠(yuǎn)控后門與C2服務(wù)器通信方式除了常規(guī)的TCP協(xié)議,,還使用過DNS隧道和ICMP協(xié)議,。
(5) 遠(yuǎn)控后門既有直接連接C2服務(wù)器類型,,也有創(chuàng)建命名管道等待連接和監(jiān)聽端口等待連接類型,。
3. Mac OS平臺(tái)
OceanLotus針對(duì)Mac OS平臺(tái)的后門功能為收集操作系統(tǒng)信息上傳C2服務(wù)器和接收?qǐng)?zhí)行C2指令。后門通常由植入惡意軟件中的dropper組件釋放,,dropper還負(fù)責(zé)建立持久化,,以及修改后門程序文件時(shí)間戳增加其隱蔽性。與Windows平臺(tái)類似,,Mac OS平臺(tái)的后門借助加密隱藏關(guān)鍵字符串,。此外,Mac OS平臺(tái)后門在后續(xù)改進(jìn)升級(jí)過程中還具備了反調(diào)試和反沙箱功能,。
4. Android平臺(tái)
2020年,,卡巴斯基披露了一類通過安卓應(yīng)用商店(比如Google Play)分發(fā)的木馬應(yīng)用,由于該類安卓木馬在代碼特征上與OceanLotus MacOS后門有一些相似之處,,并且使用的C2服務(wù)器與OceanLotus Windows后門存在重疊,,故這類安卓木馬被認(rèn)為是OceanLotus的Android平臺(tái)后門。
此類安卓木馬將經(jīng)過AES加密后的惡意載荷嵌入應(yīng)用之中(比如放置在應(yīng)用資源文件夾下),。惡意載荷的manifest清單文件中不包含任何權(quán)限申請(qǐng),,權(quán)限獲取通過調(diào)用未在官方文檔記錄中的Android API實(shí)現(xiàn),。
圖3 安卓后門PhantomLance與OceanLotus的關(guān)聯(lián)【4】
5. Linux平臺(tái)
2021年披露的Linux平臺(tái)后門RotaJakiro(雙頭龍)因與OceanLotus的Mac OS后門樣本在代碼特征上有諸多相似之處,,被認(rèn)為與OceanLotus相關(guān)。
RotaJakiro采用了動(dòng)態(tài)生成的AES加密常量表,,雙層加密的通信協(xié)議等技術(shù)對(duì)抗安全人員的二進(jìn)制和網(wǎng)絡(luò)流量分析,。該后門在運(yùn)行時(shí)會(huì)根據(jù)當(dāng)前用戶是否為root用戶執(zhí)行不同的持久化、進(jìn)程守護(hù)以及單一實(shí)例策略,,使用AES和rotate的組合算法解密敏感數(shù)據(jù),。
知名攻擊事件
(一)OceanLotus首次曝光
2015年,OceanLotus對(duì)中國(guó)政府,、科研院所,、海事機(jī)構(gòu)、海域建設(shè),、航運(yùn)企業(yè)等重要領(lǐng)域?qū)嵤┑牟婚g斷攻擊被曝光【5】,,使該組織首次為世人所知。
該組織主要通過魚叉攻擊和水坑攻擊等方法,,配合多種社會(huì)工程學(xué)手段進(jìn)行滲透,,向境內(nèi)特定目標(biāo)人群傳播特種木馬程序,秘密控制部分政府人員,、外包商和行業(yè)專家的電腦系統(tǒng),,竊取系統(tǒng)中相關(guān)領(lǐng)域的機(jī)密資料。
2014年2月以后,,OceanLotus進(jìn)入攻擊活躍期,,并于2014年5月發(fā)動(dòng)了最大規(guī)模的一輪魚叉攻擊,大量受害者因打開帶毒的郵件附件而感染特種木馬,。在2014年5月,、9月,以及2015年1月,,該組織又對(duì)多個(gè)政府機(jī)構(gòu),、科研院所和涉外企業(yè)的網(wǎng)站進(jìn)行篡改和掛馬,發(fā)動(dòng)了多輪次,、有針對(duì)性的水坑攻擊,。
(二)Cobalt Kitty行動(dòng)
2017年安全廠商cybereason披露了OceanLotus針對(duì)跨國(guó)企業(yè)的商業(yè)機(jī)密竊取行動(dòng)“Cobalt Kitty”【6】,。
OceanLotus通過向公司高層管理人員投遞魚叉釣魚郵件,,入侵了副總裁、高級(jí)主管和運(yùn)營(yíng)部門其他關(guān)鍵人員的計(jì)算機(jī),,共攻陷了40 多臺(tái) PC 和服務(wù)器,,包括域控服務(wù)器、文件服務(wù)器,、Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器,。
在此次攻擊活動(dòng)中,OceanLotus利用對(duì)微軟,、谷歌和卡巴斯基應(yīng)用程序的DLL劫持啟動(dòng)后門,,并使用了以微軟Outlook為C2通信信道的新型后門。
?。ㄈ┐笠?guī)模數(shù)字監(jiān)控和攻擊
2017年5月,,安全公司Volexity發(fā)現(xiàn),,OceanLotus發(fā)動(dòng)了針對(duì)ASEAN(東南亞國(guó)家聯(lián)盟)、周邊國(guó)家(柬埔寨,、中國(guó),、老撾、菲律賓)以及越南境內(nèi)人權(quán)組織,、新聞媒體,、民主團(tuán)體組織的大規(guī)模網(wǎng)絡(luò)攻擊活動(dòng)【7】,超過100個(gè)組織或個(gè)體網(wǎng)站被攻陷,。
OceanLotus在攻陷網(wǎng)站網(wǎng)頁(yè)中植入惡意Javascript代碼,,對(duì)特定組織和個(gè)人展開定向攻擊,結(jié)合社交工程學(xué)手段在攻擊目標(biāo)的系統(tǒng)中安裝惡意軟件或者竊取目標(biāo)的郵箱賬號(hào),。
在此次攻擊中,,OceanLotus創(chuàng)建了大量模擬合法網(wǎng)絡(luò)服務(wù)提供商(比如Akamai、百度,、Cloudfare,、Google)的域名,使用的基礎(chǔ)設(shè)施橫跨多個(gè)托管服務(wù)提供商和國(guó)家,。
?。ㄋ模┽槍?duì)東南亞的水坑攻擊
2018年11月,ESET披露了OceanLotus新一輪水坑攻擊【3】,。這輪水坑攻擊至少起始于2018年9月,,披露時(shí)已確定被攻陷的網(wǎng)站有21個(gè),涉及柬埔寨國(guó)防部,、柬埔寨外交與國(guó)際合作部以及越南新聞和博客網(wǎng)站,。
在此次水坑攻擊中,OceanLotus開始使用非對(duì)稱密碼進(jìn)行AES會(huì)話密鑰的交換,,會(huì)話密鑰用來(lái)加密與C2服務(wù)器的通信數(shù)據(jù),,從而避免最終載荷被安全防護(hù)產(chǎn)品截取。此外,,攻擊者還將HTTP協(xié)議切換為WebSocket協(xié)議進(jìn)一步隱藏通信數(shù)據(jù),。
(五)PhantomLance攻擊行動(dòng)
2020年卡巴斯基發(fā)現(xiàn)了一類通過安卓應(yīng)用商店分發(fā)的木馬應(yīng)用,,稱之為“ PhantomLance”攻擊行動(dòng)【4】,,認(rèn)為該攻擊行動(dòng)與OceanLotus有關(guān)。Bitdefender發(fā)現(xiàn)這個(gè)針對(duì)Android平臺(tái)的攻擊行動(dòng)可追溯至2014年【8】,。
在幾乎所有惡意軟件部署案例中,,攻擊者都試圖通過創(chuàng)建僅包含虛假的最終用戶許可協(xié)議(EULA)的Github帳戶來(lái)構(gòu)建虛假的開發(fā)人員資料。攻擊者采用如下手段在應(yīng)用商店發(fā)布惡意安卓應(yīng)用:上傳到應(yīng)用商店的初始版本不包含任何惡意載荷或用于釋放惡意載荷的代碼,,從而繞過應(yīng)用商店的檢測(cè),,再通過后續(xù)版本更新向應(yīng)用中加入惡意載荷和代碼以釋放并執(zhí)行這些惡意載荷,如圖4所示,。
在這些惡意應(yīng)用中,,除了常見的誘餌應(yīng)用程序(例如Flash插件、清理程序和更新程序)外,,還有一些專門針對(duì)越南地區(qū)的應(yīng)用程序,,可以看出越南屬于木馬應(yīng)用的目標(biāo)投放區(qū)域。
圖4 利用版本更新植入惡意代碼【4】
?。┙柚鷤卧炀W(wǎng)站的水坑攻擊
2020年,,Volexity披露OceanLotus建立運(yùn)營(yíng)了多個(gè)偽造為維權(quán)、新聞和反腐敗主題的網(wǎng)站,,并借此向特定的網(wǎng)站訪問者發(fā)起水坑攻擊【9】,。該組織還運(yùn)營(yíng)了與偽造網(wǎng)站相關(guān)的Facebook賬戶,用以提高網(wǎng)站的可信度,。根據(jù)偽造網(wǎng)站的主題內(nèi)容可以判斷這些攻擊活動(dòng)的目標(biāo)區(qū)域包括越南及其周邊國(guó)家,。
在披露之后,F(xiàn)acebook采取行動(dòng)禁用了與偽造網(wǎng)站相關(guān)的Facebook賬戶,,并將攻擊活動(dòng)關(guān)聯(lián)到越南一家名為CyberOne的IT公司【10】,。
總結(jié)
總體而言,OceanLotus的攻擊目標(biāo)集中在越南周邊國(guó)家和越南本土的人權(quán),、環(huán)保和新聞媒體等組織機(jī)構(gòu),。
該組織發(fā)動(dòng)的攻擊活動(dòng)周期長(zhǎng)、攻擊使用的基礎(chǔ)設(shè)施數(shù)量多分布廣,、攻擊的針對(duì)性和手法復(fù)雜度很高,,可以看出該組織背后強(qiáng)大的國(guó)家政府支持。
自曝光以來(lái),,OceanLotus一直處于活躍狀態(tài),,不斷升級(jí)改進(jìn)攻擊手段以對(duì)抗分析與追蹤,而且將中國(guó)作為主要攻擊目標(biāo)之一,,值得我們高度重視,。