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