Lazarus 組織開(kāi)始在攻擊中應(yīng)用反取證技術(shù)
大約一年前開(kāi)始,在韓國(guó)國(guó)防、衛(wèi)星、軟件和媒體出版等多個(gè)行業(yè)的公司中都發(fā)現(xiàn)了 Lazarus 組織的身影。本文旨在通過(guò) Lazarus 組織入侵的組織,總結(jié)該犯罪團(tuán)伙所使用的反取證技術(shù)。

概述
反取證技術(shù)是攻擊者旨在篡改證據(jù),試圖提高犯罪現(xiàn)場(chǎng)取證調(diào)查難度而應(yīng)用的一類(lèi)技術(shù)。反取證技術(shù)通常要達(dá)成以下目標(biāo):
- ?規(guī)避檢測(cè)并阻礙信息收集
 - 增加取證分析的難度
 - 禁用或使數(shù)字取證工具失靈
 - 阻止、繞過(guò)或刪除日志以隱藏痕跡?
 
反取證技術(shù)的分類(lèi)多種多樣,本文使用 Marcus Roger 博士提出的分類(lèi)標(biāo)準(zhǔn)(數(shù)據(jù)隱藏、數(shù)據(jù)清除、痕跡混淆、針對(duì)數(shù)字取證的攻擊、物理攻擊)來(lái)進(jìn)行分析。具體來(lái)說(shuō),Lazarus 組織使用了數(shù)據(jù)隱藏、數(shù)據(jù)清除與痕跡混淆三種技術(shù)。
數(shù)據(jù)隱藏
數(shù)據(jù)隱藏是指使數(shù)據(jù)難以被發(fā)現(xiàn),主要包括混淆、加密、隱寫(xiě)術(shù)與其他形式的手段。
加密
Lazarus 組織在加載程序、可執(zhí)行文件與配置文件中都應(yīng)用了加密操作:
- 加載程序:解密加密的 PE 文件并加載到內(nèi)存中
 - 可執(zhí)行文件:由加載程序加載后解密配置文件與 C&C 服務(wù)器通信
 - 配置文件:存儲(chǔ)加密的 C&C 服務(wù)器信息
 

后門(mén)執(zhí)行過(guò)程
Lazarus 組織通過(guò)加密方式傳輸帶有 C&C 服務(wù)器信息的配置文件和與 C&C 服務(wù)器通信的 PE 可執(zhí)行文件。加密文件在被加載程序加密到內(nèi)存后運(yùn)行,再?gòu)?C&C 服務(wù)器接收其他文件執(zhí)行惡意行為。
其他數(shù)據(jù)隱藏方式
Lazarus 組織經(jīng)常使用系統(tǒng)文件夾作為藏身之處,也會(huì)模仿普通文件的名稱(chēng)來(lái)進(jìn)行隱藏。攻擊者通過(guò)在系統(tǒng)中創(chuàng)建類(lèi)似的文件夾,或?qū)阂廛浖窝b成默認(rèn)隱藏的系統(tǒng)文件中的普通文件。常用的目錄如下:
- C:\ProgramData\
 - C:\ProgramData\Microsoft\
 - C:\Windows\System32\
 

創(chuàng)建類(lèi)似文件夾
C:\ProgramData 文件夾是默認(rèn)隱藏的系統(tǒng)文件夾。在此文件夾內(nèi)創(chuàng)建一個(gè)名稱(chēng)與默認(rèn)文件夾相似的文件夾作為惡意軟件隱藏位置,或者將惡意軟件偽裝成默認(rèn)文件夾內(nèi)的類(lèi)似文件。

模仿默認(rèn)文件名
數(shù)據(jù)清除
數(shù)據(jù)清除是指永久刪除特定文件或整個(gè)文件系統(tǒng)。在刪除文件外,還可以抹去所有使用痕跡。
文件清除
Lazarus 會(huì)刪除惡意軟件與惡意軟件執(zhí)行時(shí)出現(xiàn)的各種文件,手段是數(shù)據(jù)覆蓋或者直接刪除文件,部分甚至?xí)趧h除前更改文件名。數(shù)據(jù)被覆蓋后,就很難再找到原始文件內(nèi)容,使得分析人員在文件恢復(fù)與數(shù)據(jù)取證的過(guò)程變得異常困難。

惡意軟件刪除
Lazarus 也會(huì)清除應(yīng)用程序執(zhí)行時(shí)預(yù)讀取文件,全面消除惡意軟件執(zhí)行的痕跡。

預(yù)讀取文件刪除
在初始訪問(wèn)或橫向平移時(shí),Lazarus 組織可能會(huì)利用應(yīng)用程序的 0-day 漏洞進(jìn)行攻擊。由漏洞攻擊產(chǎn)生的錯(cuò)誤報(bào)告與內(nèi)存 Dump 文件,也會(huì)被攻擊者一并刪除。

漏洞攻擊痕跡刪除
痕跡混淆
痕跡混淆是指混淆那些取證過(guò)程中可能揭示惡意行為的情況,達(dá)成隱藏的目的。例如日志的修改、刪除、插入不正確的信息等都是干擾分析和痕跡混淆的例子。
時(shí)間戳更改
Lazarus 幾乎會(huì)刪除所有的文件與日志,但仍然會(huì)將后門(mén)類(lèi)惡意軟件留在失陷主機(jī)。為了保證后門(mén)在失陷主機(jī)上長(zhǎng)期存在不被發(fā)現(xiàn),Lazarus 組織會(huì)修改惡意軟件創(chuàng)建時(shí)間戳來(lái)進(jìn)行隱藏。
廠商經(jīng)常會(huì)跟蹤事件發(fā)生前后的創(chuàng)建、修改、刪除、訪問(wèn)文件,更改時(shí)間戳的動(dòng)機(jī)應(yīng)該是為了逃避時(shí)間線分析。時(shí)間戳被篡改后,分析過(guò)程中就可能會(huì)被遺漏,引導(dǎo)分析人員誤入歧途。

時(shí)間戳比較

時(shí)間戳比較
在失陷主機(jī)上發(fā)現(xiàn)的惡意軟件時(shí)間戳,與系統(tǒng)上其他文件的時(shí)間戳完全一致。
NTFS 文件系統(tǒng)上 $STANDARD_INFORMATION?屬性和 $FILE_NAME?屬性有四個(gè)時(shí)間戳:文件創(chuàng)建、修改、訪問(wèn)與屬性修改。Windows 文件屬性中顯示的時(shí)間戳是來(lái)自 $STANDARD_INFORMATION的時(shí)間戳。
- $STANDARD_INFORMATION:默認(rèn)存在于所有文件中的屬性,包含文件的基本信息,如時(shí)間戳、所有者和安全等。
 - $FILE_NAME:默認(rèn)存在于所有文件中的屬性,包含文件名和文件的各種其他附加數(shù)據(jù),其目的是保存文件名。
 
經(jīng)過(guò)分析,發(fā)現(xiàn)默認(rèn)系統(tǒng)文件 notepad.exe 與惡意軟件 DapowSyncProvider.dll 的 $STANDARD_INFORMATION時(shí)間戳完全一致。

時(shí)間戳比較
近期在失陷主機(jī)上發(fā)現(xiàn)的篡改時(shí)間戳的樣本如下所示:

篡改時(shí)間戳
Lazarus 對(duì)時(shí)間戳的修改可以歸納為以下幾點(diǎn):
- 并非所有惡意軟件都要修改時(shí)間戳
 - 時(shí)間戳并非修改為任意值,而是與默認(rèn)系統(tǒng)文件相同
 - 同一事件中可修改也可不修改,修改時(shí)間戳應(yīng)該是可選項(xiàng)
 - 默認(rèn)系統(tǒng)文件也是可選的,相同的惡意軟件會(huì)存在不同的時(shí)間戳
 
不僅是 Lazarus,修改時(shí)間戳的技術(shù)也被其他各個(gè) APT 組織所廣泛使用:

使用同類(lèi)技術(shù)的 APT 組織
結(jié)論
在 Lazarus 組織攻擊時(shí),會(huì)使用各種各樣的反取證技術(shù)。一方面可以逃避安全產(chǎn)品的檢測(cè),另一方面也可以阻礙安全人員的分析。攻擊者全面清除了文件與日志,幾乎完全消除了執(zhí)行痕跡來(lái)阻礙數(shù)據(jù)取證,顯示出攻擊者的細(xì)致。
在調(diào)查和分析事件時(shí),必須考慮攻擊者使用反取證技術(shù)的可能性。也需要對(duì)相關(guān)方法與技術(shù)進(jìn)行持續(xù)研究,以確保即使在攻擊者應(yīng)用反取證技術(shù)時(shí)也可以跟蹤惡意軟件。















 
 
 







 
 
 
 