溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解

發(fā)布時間:2021-12-22 21:21:18 來源:億速云 閱讀:115 作者:柒染 欄目:安全技術(shù)

本篇文章給大家分享的是有關(guān)Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

背景

2018年1月31日,韓國計算機應(yīng)急響應(yīng)小組發(fā)布了一則關(guān)于Adobe Flash Player的 0day 漏洞警告,并稱早在2017年11月中旬,就有黑客利用該漏洞實施有針對性的攻擊。

2018年2月1日, Adobe官方發(fā)布了Adobe Flash Player系列產(chǎn)品的安全通告(APSA18-01),一個最新的AdobeFlash零日漏洞被發(fā)現(xiàn)針對韓國地區(qū)的人員發(fā)起攻擊,該0day漏洞編號為CVE-2018-4878。

2018年2月5日,Adobe官方發(fā)布漏洞補丁,修復(fù)CVE-2018-4878零日漏洞

在CVE-2018-4878零日漏洞的補丁真空期,360安全衛(wèi)士無需升級就能完美防御此次漏洞攻擊。在此期間,360核心安全高級威脅應(yīng)對團隊迅速反應(yīng),率先截獲了該漏洞的在野攻擊并發(fā)布分析預(yù)警。在官方發(fā)布漏洞補丁,零日漏洞得到妥善解決后,本次我們發(fā)布在野攻擊的完全分析報告,幫助大家從不同角度推知此次高級威脅攻擊的全貌。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖1

漏洞文檔攻擊流程分析

攻擊者對相關(guān)人員精心策劃了社會工程學(xué)攻擊,通過即時聊天工具和郵箱向相關(guān)人員發(fā)送包含漏洞及惡意代碼的excel誘餌文檔,誘騙受害者打開中招。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖2 誘餌文檔內(nèi)容

誘餌文檔中包含了一個ActiveX對象,該對象對應(yīng)的是一個swf文件。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解

圖3 包含在文檔中的ActiveX對象文件

打開文檔后ActiveX對象會自動播放flash內(nèi)容,允許播放后將從云端實施下一步攻擊。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖4

誘餌文檔中的flash播放后,下一步將請求遠程URL www.dylboiler.co.kr/admincenter/files/boad/4/manager.php

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解

url請求參數(shù)包含id(唯一標(biāo)識符)、fp_vs(flash版本)、os_vs(系統(tǒng)信息)

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖5

誘餌文檔中的flash將解密遠程URL地址返回的加密文件流,動態(tài)執(zhí)行包含cve-2018-4878漏洞的flash內(nèi)容。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖6

cve-2018-4878漏洞荷載所在網(wǎng)站是一個正規(guī)的韓國公司網(wǎng)站,疑似該網(wǎng)站已經(jīng)被攻擊者入侵并完全控制,攻擊者可以在網(wǎng)站上添加任意的惡意代碼。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖7

CVE-2018-4878零日漏洞分析

我們對cve-2018-4878漏洞文件流進行分析,發(fā)現(xiàn)樣本通過操作Flash的com.adobe.tvsdk包中的DRMManager對象進行攻擊。

該部分漏洞的關(guān)鍵代碼存在于method_3方法中,該方法new了一個class_8的對象,并傳給drmManager.initialize,然后將var_16置空。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖8

在class_2的構(gòu)造函數(shù)中 LocalConnection().connect會主動調(diào)用gc釋放沒有的引用的內(nèi)存,而第二次的LocalConnection().connect調(diào)用會產(chǎn)生異常,異常處理過程中又會new一個class_8的對象賦值給var_13。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖9

之后創(chuàng)建了一個定時器,定時器處理函數(shù)中,判斷var_13.a1成員的值是否被修改。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖10

如果發(fā)現(xiàn)值被修改了,則調(diào)用flash_24/25方法。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖11

在flash_25方法中又會new 一個class_7的 ByteArray對象賦值給var_17。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖12

var_17是個ByteArray對象,通過修改ByteArray對象的Length可以完成任意內(nèi)存讀寫,該處的漏洞利用技巧和hacking team的flash exploit技巧類似,相關(guān)代碼已經(jīng)開源就不再詳述。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖13

進一步我們對該漏洞進行調(diào)試分析,將var_13 = newclass_8();代碼注釋掉將會觸發(fā)空指針訪問崩潰。

eax=6906d8e9 ebx=00000000 ecx=00000000edx=00000000 esi=08055d28 edi=0685b020eip=6850e148 esp=024fd5c0 ebp=024fd5f0iopl=0         nv up ei pl nz ac po nccs=001b ss=0023  ds=0023  es=0023 fs=003b  gs=0000             efl=00210212Flash42_28_0_0_137!DllUnregisterServer+0x14ecda:6850e148 8b4904          mov     ecx,dword ptr [ecx+4]ds:0023:00000004=????????

回溯發(fā)現(xiàn)地址數(shù)據(jù)來自esi+0c位置 

6850e142 8b4e0c          mov     ecx,dword ptr [esi+0Ch]6850e145 8b4908          mov     ecx,dword ptr [ecx+8]6850e148 8b4904          mov     ecx,dword ptr [ecx+4] 0:005> dd 066e4100066e4100 066e4f60 00000000 00000000 00000000066e4110 00000000 00000000 00000000 00000000

由于這里我們已經(jīng)把var_13創(chuàng)建代碼注釋了,說明還有其他對象被錯誤的釋放了,LocalConnection().connect會主動調(diào)用gc釋放沒有的引用的內(nèi)存,所以這里我們再把這部分注釋,并在 6850e1428b4e0c          mov     ecx,dword ptr [esi+0Ch] 處設(shè)置斷點,觀察被釋放的數(shù)據(jù)內(nèi)容。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖14

斷點命中后,可以發(fā)現(xiàn)數(shù)據(jù)其實是class_8對象的內(nèi)容,也就是var_16的內(nèi)存。

eax=67c1d8e9 ebx=00000000 ecx=0607b2e0edx=00000000 esi=04785d28 edi=0626b020eip=670be148 esp=022fcfc0 ebp=022fcff0iopl=0         nv up ei pl nz ac po nccs=001b ss=0023  ds=0023  es=0023 fs=003b  gs=0000             efl=00200212Flash42_28_0_0_137!DllUnregisterServer+0x14ecda:670be148 8b4904          mov     ecx,dword ptr [ecx+4]ds:0023:0607b2e4=060ba4c0 0:005> dd 0618e1000618e100 67c51a88 00000002 0607b2e0 07d980400618e110 00001111 00002222 00003333 000044440618e120 00005555 00006666 00007777 000088880618e130 00009999 0000aaaa 00001111 00002222

最終分析確認(rèn)cve-2018-4878零日漏洞是drmManager.initialize沒有正確的處理所持有的對象導(dǎo)致UAF漏洞。

Shellcode攻擊流程分析

接下來,漏洞觸發(fā)執(zhí)行的shellcode會通過進程名,判斷用戶是否安裝了AhnLab、ViRobot APT Shield和360三款中韓常用的安全軟件,以采取不同的方案進行攻擊。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖15

l  三款安全軟件,任意一款存在的環(huán)境

直接調(diào)用wininet系列函數(shù)下載http://www.1588-2040.co.kr/conf/product_old.jpg所對應(yīng)的惡意荷載執(zhí)行。

l  未安裝三款安全軟件,或可能存在其他未知安全軟件的環(huán)境

創(chuàng)建cmd進程,針對cmd進程通過遠程線程注入代碼的方式下載http://www.1588-2040.co.kr/conf/product.jpg所對應(yīng)的惡意荷載執(zhí)行。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖16

l  兩款韓國安全軟件共存的環(huán)境

Shellcode將會直接退出,不做任何操作。

Shellcode所下載的惡意荷載地址所在網(wǎng)站,同樣是一個正規(guī)的韓國公司網(wǎng)站,疑似該網(wǎng)站也已被攻擊者入侵并完全控制,用于放置最終的惡意荷載。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖17

惡意荷載分析

最終執(zhí)行的惡意荷載會分為兩個階段的程序,第一個階段是Dropper荷載釋放程序,第二個階段是利用網(wǎng)絡(luò)云盤進行C&C控制的后門程序。

荷載釋放程序(Dropper)

程序從資源中加載名為JOK的資源,資源的內(nèi)容為實際執(zhí)行的Shellcode,程序新啟動wscript.exe,通過遠程線程的方式將shellcode注入到wscript進程中執(zhí)行,最終Shellcode會從內(nèi)存中解密釋放PE文件,自行加載節(jié)區(qū)重定位在內(nèi)存中執(zhí)行最終的后門程序。

 Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖18

值得注意的是,此次程序的PDB路徑,與2017年11月思科報告的Group 123 組織的ROKRAT木馬(http://blog.talosintelligence.com/2018/01/korea-in-crosshairs.html?m=1)存在關(guān)聯(lián)。

l d:\HighSchool\version13\2ndBD\T+M\T+M\Result\DocPrint.pdbl D:\HighSchool\version13\First-Dragon(VS2015)\Sample\Release\DogCall.pdb

同時,程序的執(zhí)行流程和技術(shù)細節(jié)也與思科報告中的dropper程序一致,疑似是同一系列的ROKRAT木馬程序。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖19

網(wǎng)盤后門程序(Cloud Drive RAT)

該程序使用公共網(wǎng)盤作為C&C服務(wù)器,用來存儲截屏信息或者進行插件下載;相對于傳統(tǒng)的CC服務(wù)器,使用公共網(wǎng)盤提高了流量識別的難度,因為網(wǎng)盤類網(wǎng)址均為可信的白域名。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖20

使用的云盤信息如下:

程序中出現(xiàn)的URL  對應(yīng)網(wǎng)盤  
api.box.com  Box
content.dropboxapi.com  DropBox
api.pcloud.com  pCloud
cloud-api.yandex.net  Yandex

程序主要流程分析

程序首先生成了一個8字節(jié)的隨機字符串,用來作為本次通訊的標(biāo)識,該字符串在隨后的上傳和CC命令執(zhí)行都有涉及

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖21

隨后對操作系統(tǒng)版本和當(dāng)前執(zhí)行和環(huán)境進行檢查

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖22

收集計算機、用戶名、BIOS信息

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖23

嘗試加載下列DLL,嘗試獲取VMwareTools版本號和BIOS版本信息,進而判斷是不是處于沙箱環(huán)境或者調(diào)試中

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖24

l  沙箱環(huán)境列表

Dll名稱  對應(yīng)沙箱或調(diào)試環(huán)境  
SbieDll.dll  Sandboxie  
dbghelp.dll  Microsoft debugging tools
api_log.dll  GFI SandBox
dir_watch.dll  GFI SandBox

在判斷沙箱環(huán)境之后,程序開始創(chuàng)建工作線程,執(zhí)行相應(yīng)的功能。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖25

該后門程序使用公共云盤進行數(shù)據(jù)中轉(zhuǎn),程序中內(nèi)置了4種云盤,分別是box,dropbox,pcloud, yandex,此次截獲的樣本使用的為pcloud網(wǎng)盤。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖26

程序通過GDI API來實現(xiàn)截取受害機器屏幕的功能,并將圖片保存在temp目錄下,命名方式為隨機產(chǎn)生的表示序號+當(dāng)前截圖的序號

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖27

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖28

隨后,程序會讀取圖片數(shù)據(jù),并刪除temp目錄下的圖片,將之前收集到的環(huán)境信息和圖片數(shù)據(jù)一起上傳到云盤中。

 Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖29

 l  上傳的數(shù)據(jù)格式

偏移地址  長度  信息  
0  8隨機生成的標(biāo)識數(shù)據(jù)
10  2系統(tǒng)版本信息
12  64受害機器名
76  64用戶名
140  256當(dāng)前進程路徑
396  128BIOS信息
524  1沙箱環(huán)境信息
525  1判斷是否Windows目錄可寫
526  40Vmtools版本信息
566  39主板,BIOS型號
605  7字符disable
1119  4截屏圖片的大小
1123  不固定圖片數(shù)據(jù)

程序會循環(huán)向網(wǎng)盤請求名為 def_ + 隨機標(biāo)示的文件,通過對該文件進行解析,獲取云端的C&C指令進行攻擊。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖30

l  云控C&C命令列表

指令序號  功能  
1  從指定的網(wǎng)址中獲取數(shù)據(jù)到內(nèi)存中,作為Shellcode內(nèi)存執(zhí)行
2  從指定的網(wǎng)址中獲取數(shù)據(jù)到內(nèi)存中,作為Shellcode內(nèi)存執(zhí)行
3  獲取新的網(wǎng)盤Token,下載文件ADI.bin,作為Shellcode內(nèi)存執(zhí)行
4  獲取新的網(wǎng)盤Token,下載文件DDI.bin,作為Shellcode內(nèi)存執(zhí)行
5  從指定的網(wǎng)址中獲取數(shù)據(jù)到內(nèi)存中,保存文件%temp%/setup.exe執(zhí)行
6  從指定的網(wǎng)址中獲取數(shù)據(jù)到內(nèi)存中,保存文件%temp%/setup.exe執(zhí)行
7  獲取新的網(wǎng)盤Token,下載文件ADX.enc,保存文件%temp%/setup.exe執(zhí)行
8  獲取新的網(wǎng)盤Token,下載文件DDX.enc,保存文件%temp%/setup.exe執(zhí)行
9  獲取新的網(wǎng)盤Token,下載文件ERSP.enc,保存文件%temp%/setup.exe執(zhí)行

在完成命令解析后,程序還會調(diào)用網(wǎng)盤的刪除API將對應(yīng)的指令文件刪除

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖31

我們推測在實際的攻擊過程中,攻擊者會收集截圖等信息后,選取其中有價值的目標(biāo),再上傳定制的指令文件到網(wǎng)盤中進行攻擊。

攻擊信息溯源

通過對程序的逆向分析,我們發(fā)現(xiàn)了網(wǎng)盤的Token權(quán)限并沒有被嚴(yán)格限制,通過該Token可以獲得網(wǎng)盤的注冊信息和保存在網(wǎng)盤中的內(nèi)容,從中我們定位到了攻擊者的網(wǎng)盤注冊郵箱為cheseolum@naver.com,注冊時間為2017年12月11日,與韓國響應(yīng)中心公告的11月開始攻擊的時間相近。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖32

在1月31日攻擊正式對外曝光后,仍然有大量新的中招者向該云盤上傳信息,在獲取到的截屏信息中,我們發(fā)現(xiàn)了大量的病毒檢測沙箱和樣本分析人員。從截屏信息中判斷,大部分分析人員在根據(jù)https://github.com/brianwrf/CVE-2017-4878-Samples 中的樣本在進行病毒分析。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖33

在截圖排查中,我們還意外發(fā)現(xiàn)了疑似國內(nèi)安全從業(yè)者的電腦桌面截屏,可能是其在下載分析樣本時不慎中招。

Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解
圖34

通過分析我們可以發(fā)現(xiàn)此次攻擊是通過精心策劃的,攻擊周期長達三個月以上,攻擊者通過入侵兩個正規(guī)公司網(wǎng)站放置惡意荷載,使用正常的云盤服務(wù)作為C&C基礎(chǔ)設(shè)施,不計成本利用零日漏洞,開發(fā)精巧的攻擊方案。在攻擊過程中所使用的大量資源,都表明這不是個人和一般團隊能夠?qū)嵤┑?,這是一起典型的APT攻擊。隨著漏洞信息逐漸公開,相關(guān)單位和普通用戶都需提高安全防范意識,及時更新Flash版本,并開啟安全軟件防御可能出現(xiàn)的漏洞威脅。

以上就是Adobe Flash零日漏洞在野攻擊完全分析報告怎么理解,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI