近日,知名網(wǎng)絡(luò)安全公司FireEye和軟件廠商SolarWinds先后被(同一)APT組織入侵,不但導(dǎo)致FireEye的紅隊工具“核泄露”,同時還通過SolarWinds軟件供應(yīng)鏈影響全球數(shù)萬大型企業(yè)(包括FireEye),超過九成財富500強企業(yè)安裝了木馬化軟件,在全球掀起軒然大波。
由于“日爆攻擊”(SUNBURST)采用了前所未見的全新攻擊方法和技術(shù),企業(yè)界和網(wǎng)絡(luò)安全界正密切關(guān)注、跟蹤和分析此次攻擊相關(guān)的技術(shù)、戰(zhàn)術(shù)和程序(TTP)。
以下,是網(wǎng)絡(luò)安全公司Picus Labs用MITER ATT&CK框架映射了SolarWinds事件中攻擊者使用的策略、技術(shù)和流程,以了解其攻擊方法、漏洞影響和緩解方法,研究發(fā)現(xiàn)攻擊者動用了超過20個ATT&CK戰(zhàn)術(shù),以下對其中十種重要戰(zhàn)術(shù)進(jìn)行分析。
主要發(fā)現(xiàn)
這是一場全球性的攻擊活動,始于2020年3月,目前正在進(jìn)行中;
攻擊活動有可能影響全球成千上萬的公共和私人組織;
攻擊始于軟件供應(yīng)鏈攻擊;
威脅參與者對SolarWinds Orion Platform軟件的一個組件進(jìn)行了木馬化,該木馬組件被FireEye稱為SUNBURST(日爆攻擊);
該軟件的木馬版本是通過其自動更新機制分發(fā)的;
攻擊者大量使用各種防御規(guī)避技術(shù),例如偽裝、代碼簽名、混淆的文件或信息、刪除主機上的indicator,以及虛擬化/沙盒規(guī)避;
攻擊者利用了十種不同的MITER ATT&CK戰(zhàn)術(shù),包括橫向移動、命令和控制以及數(shù)據(jù)泄露;
攻擊中使用的技術(shù)表明攻擊者擁有高超技能。
針對SolarWinds的攻擊中使用的戰(zhàn)術(shù),技術(shù)和程序(映射到MITER ATT&CK框架)本次分析使用MITER ATT&CK 8.1框架。所引用的攻擊策略和技術(shù),請參閱企業(yè)版ATT&CK 8.1(https://attack.mitre.org/techniques/enterprise/)。
01
資源開發(fā)
T1587.001開發(fā)功能:惡意軟件
攻擊者會在攻擊受害者之前開發(fā)惡意軟件和惡意軟件組件,例如有效載荷、投放程序(dropper)、后門和入侵后期工具。攻擊者可能會從頭開發(fā)全新的惡意軟件,也可以使用公開可用的工具。
在SolarWinds事件中,攻擊者將其惡意載荷嵌入到SolarWinds Orion Platform軟件的合法組件——DLL庫SolarWinds.Orion.Core.BusinessLayer.dll。FireEye將該DLL文件的后門版本命名為SUNBURST。所述SUNBURST后門提供不同的有效載荷,例如,以前從未見過的內(nèi)存專用Dropper(FireEye稱之為TEARDROP)。該dropper能夠部署臭名昭著的后期攻擊工具Cobalt Strike Beacon。顯然,攻擊者在FireEye漏洞中使用了Beacon,并偷走了FireEye的Red Team工具(其中包括Beacon)。
T1583.003獲取基礎(chǔ)結(jié)構(gòu):虛擬專用服務(wù)器
在這種MITER ATT&CK技術(shù)中,攻擊者為攻擊活動租用了虛擬專用服務(wù)器(VPS)。根據(jù)FireEye的研究,攻擊者利用VPS使用與受害者同一國家的IP地址。FireEye在nGitHub上提供了兩個Yara規(guī)則來檢測TEARDROP。
02
初始訪問
T1195.002供應(yīng)鏈攻擊:入侵軟件供應(yīng)鏈
在軟件供應(yīng)鏈攻擊技術(shù)中,攻擊者可以在最終用戶獲取軟件之前對其進(jìn)行多種修改,包括:
源代碼
源代碼存儲庫(公共或私有)
開源依賴的源代碼
開發(fā)和分發(fā)系統(tǒng)
更新機制
開發(fā)環(huán)境
編譯后的發(fā)行版本
在SolarWinds Orion漏洞中,攻擊者通過將惡意代碼嵌入到SolarWinds庫文件SolarWinds.Orion.Core.BusinessLayer.dll中,向后攻擊了Orion Platform軟件的三個版本:2019.4 HF 5、2020.2(暫無熱修復(fù)補?。┖?020.2 HF 1。尚不清楚攻擊者如何篡改此文件。根據(jù)微軟的研究,攻擊者可能已經(jīng)入侵和篡改了開發(fā)或分發(fā)系統(tǒng)以嵌入式惡意代碼。另一個說法是,攻擊者可能使用泄漏的FTP憑據(jù)將惡意DLL文件上傳到SolarWinds的源代碼存儲庫中。
包含惡意DLL后門文件的SolarWinds Orion Platform軟件更新文件是通過其自動更新機制分發(fā)的。
作為對策,請檢查以下位置是否存在篡改的SolarWinds.Orion.Core.BusinessLayer.dll文件:%PROGRAMFILES%SolarWindsOrion%WINDIR%System32configsystemprofileAppDataLocalassemblytmp<random>
如果該DLL具有以下SHA256哈希值之一,則它是被篡改的惡意版本:
32519b85c0b422e4656de6e6c41878e95fd95026267daab4215ee59c107d6c77
dab758bf98d9b36fa057a66cd0284737abf89857b73ca89280267ee7caf62f3b
eb6fab5a2964c5817fb239a7a5079cabca0a00464fb3e07155f28b0a57a2c0ed
c09040d35630d75dfef0f804f320f8b3d16a481071076918e9b236a321c1ea77
ac1b2b89e60707a20e9eb1ca480bc3410ead40643b386d624c5d21b47c02917c
019085a76ba7126fff22770d71bd901c325fc68ac55aa743327984e89f4b0134
ce77d116a074dab7a22a0fd4f2c1ab475f16eec42e1ded3c0b0aa8211fe858d6
a25cadd48d70f6ea0c4a241d99c5241269e6faccb4054e62d16784640f8e53bc
然后,使用最新的防病毒產(chǎn)品掃描上述文件夾,并運行EDR以檢測被惡意篡改的SolarWinds文件及其(潛在)異常行為。
03
執(zhí)行
T1569.002系統(tǒng)服務(wù):服務(wù)執(zhí)行
在該MITER ATT&CK技術(shù)中,對手將惡意軟件作為Windows服務(wù)執(zhí)行。在安裝SolarWinds應(yīng)用程序或更新的過程中,被篡改的DLL文件由合法SolarWinds.BusinessLayerHost.exe或SolarWinds.BusinessLayerHostx64.exe加載并作為Windows服務(wù)安裝。
04
駐留
T1543.003創(chuàng)建或修改系統(tǒng):Windows服務(wù)
作為駐留(持久性)的一部分,攻擊者可以創(chuàng)建或更改Windows服務(wù)以重復(fù)執(zhí)行惡意有效負(fù)載。Windows啟動時,惡意代碼將作為服務(wù)啟動。修改后的DLL加載的TEARDROP惡意軟件將作為服務(wù)在后臺運行。
05
特權(quán)提升
T1078有效賬戶
使用這種MITER ATT&CK技術(shù)攻擊者可以獲取并濫用合法憑據(jù)來獲得初始訪問權(quán)、駐留、特權(quán)提升、防御逃避或橫向移動。攻擊者在此攻擊活動中使用多個有效帳戶進(jìn)行橫向移動。
06
防御逃避
T1553.002破壞信任控制:代碼簽名
要想繞過應(yīng)用控制技術(shù),攻擊者通過創(chuàng)建、獲取或竊取代碼簽名材料來幫惡意軟件獲取有效的簽名。
在SolarWinds事件中,攻擊者破壞了SolarWinds的數(shù)字證書。
請移除受損的SolarWinds證書:
“Signer”:“Solarwinds Worldwide LLC”
“SignerHash”:“47d92d49e6f7f296260da1af355f941eb25360c4”
T1036.005偽裝:匹配合法名稱或位置
作為一種防御規(guī)避技術(shù),對手可以通過合法和可信的方式更改其惡意工件的功能。這些功能的一些示例包括代碼簽名、惡意軟件文件的名稱和位置,任務(wù)和服務(wù)的名稱。偽裝后,攻擊者的惡意工件(如惡意軟件文件)對用戶和安全控件而言都是合法的。
根據(jù)FireEye的報告,SolarWinds漏洞的攻擊者使用在受害者環(huán)境中找到的合法主機名作為其Command and Control(C2)基礎(chǔ)結(jié)構(gòu)上的主機名,以避免被檢測到。此外,該惡意軟件將其C2流量偽裝成Orion Improvement Program(OIP)協(xié)議。
T1036.003偽裝:重命名系統(tǒng)工具程序
為了避免基于名稱的檢測,對手可以重命名系統(tǒng)工具程序。此外,攻擊者用其替換合法的實用程序,執(zhí)行其有效負(fù)載,然后恢復(fù)合法的原始文件。
T1036.004偽裝:偽裝任務(wù)或服務(wù)
對手將任務(wù)/服務(wù)的名稱偽裝成合法任務(wù)/服務(wù)的名稱,以使其看起來是良性的,從而逃避了檢測。攻擊者常使用與Windows Task Scheduler(在Linux和Windows中)中運行的合法Windows和Linux系統(tǒng)服務(wù)名稱類似或一致的服務(wù)。
T1497.003虛擬化/沙盒逃避:基于時間的逃避
攻擊者采用各種基于時間的規(guī)避方法,例如在初始執(zhí)行時延遲惡意軟件的功能,以避免虛擬化和分析環(huán)境。在Solarwinds事件中,攻擊者在安裝后延遲兩周內(nèi)才啟動命令和控制通信。
T1027.003文件或信息混淆:隱寫術(shù)
在這種MITER ATT&CK技術(shù)中,攻擊者將數(shù)據(jù)隱藏在數(shù)字媒體中,例如圖像、音頻、視頻和文本來逃避檢測。SolarWinds漏洞中使用的TEARDROP惡意軟件從文件gracious_truth.jpg中讀取了惡意負(fù)載。
T1070.004主機指標(biāo)移除:文件刪除
攻擊者刪除其惡意文件以清除痕跡,并最大程度地清除攻擊痕跡,以逃避檢測和檢查。遠(yuǎn)程訪問后,攻擊者會刪除其惡意文件,包括后門。
07
發(fā)現(xiàn)
T1057流程發(fā)現(xiàn)
攻擊者獲取有關(guān)系統(tǒng)上正在運行的進(jìn)程的信息,以了解網(wǎng)絡(luò)內(nèi)系統(tǒng)上運行的常見軟件和應(yīng)用程序。攻擊者獲得流程清單以確定后續(xù)行動的流程。
T1012查詢注冊表
攻擊者查詢Windows注冊表以獲取有關(guān)系統(tǒng),配置和已安裝軟件的信息。攻擊者通過查詢HKEY_LOCAL_MACHINESOFTWAREMicrosoftCryptography密鑰中的MachineGuid值來獲取加密計算機GUID,以為每個受害者生成唯一的用戶ID。
08
橫向移動
T1021遠(yuǎn)程服務(wù)
在這種MITER ATT&CK技術(shù)中,對手使用有效賬戶登錄遠(yuǎn)程服務(wù),例如遠(yuǎn)程桌面協(xié)議(RDP)、SSH和VNC。攻擊者使用有效帳戶和合法的遠(yuǎn)程訪問在目標(biāo)網(wǎng)絡(luò)中橫向移動。
09
命令與控制
T1071.001應(yīng)用層協(xié)議:Web協(xié)議
根據(jù)該技術(shù),攻擊者使用應(yīng)用程序?qū)樱↙7)協(xié)議進(jìn)行通信,并將“命令與控制”流量與現(xiàn)有的Web流量混合在一起,以避免檢測和網(wǎng)絡(luò)過濾。SolarWinds漏洞中使用的惡意軟件利用了:
請求數(shù)據(jù)時的HTTP GET或HEAD請求
發(fā)送數(shù)據(jù)時的HTTP PUT或HTTP POST請求。
惡意DLL會調(diào)用avsvmcloud.com的遠(yuǎn)程網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)。阻止該域名并檢查網(wǎng)絡(luò)連接日志。
T1568.002動態(tài)解析:域名生成算法
攻擊者使用動態(tài)域名生成算法(DGAs)動態(tài)生成C2域名,而不是依靠靜態(tài)IP地址或域名列表。此攻擊活動中使用的后門使用DGA來確定其C2服務(wù)器。
10
滲透
T1041通過C2通道滲透。這種MITRE ATT&CK技術(shù)中,攻擊者通過在現(xiàn)有的C2通道來竊取數(shù)據(jù)。當(dāng)收集的數(shù)據(jù)被分發(fā)到C2服務(wù)器時,攻擊者會使用HTTP PUT或HTTP POST請求。如果有效載荷大于10000個字節(jié)將使用POST方法。否則,將使用PUT方法。