日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

FireEye事件新动态:APT 攻击 SolarWinds 全球供应链(详解)

發布時間:2024/1/1 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FireEye事件新动态:APT 攻击 SolarWinds 全球供应链(详解) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?聚焦源代碼安全,網羅國內外最新資訊!

編譯:奇安信代碼衛士團隊

前幾日,火眼公司表示遭某受國家黑客支持的APT組織攻擊。昨天,該公司發布調查進展稱發現了一起全球性攻擊活動,通過軟件供應鏈攻陷了公共和私營組織機構網絡。該攻擊通過對廣泛使用的 IT 基礎設施管理軟件(SolarWinds 公司生產的 Orion 網絡監控產品)實施,其中所展現的高階運營技術和資源能力和國家威脅組織一致。《華盛頓郵報》將該攻擊與疑似俄羅斯國家黑客組織 APT29聯系在一起,但火眼公司并未給出這一結論,而是更加中立地將其命名為 “UNC2452”,并將其使用的惡意軟件稱為 “SUNBURST”。如下是火眼報告聯合微軟發布的一份技術分析,奇安信代碼衛士團隊節選編譯如下。

火眼公司指出,構成這起全球性攻擊活動的攻擊之間共享某些常見元素:

  • 使用惡意的 SolarWinds 更新:在 Orion 合法軟件更新中插入惡意代碼,使得攻擊者遠程訪問受害者環境。

  • 惡意軟件指紋較少:通過有限的惡意軟件在躲避檢測時實現目的。

  • 隱秘性高:竭力觀測并融入正常的網絡活動中。

  • 高度的 OPSEC:耐心地開展偵察活動,不斷隱藏蹤跡并使用難以歸因的工具

概述

火眼公司發現了一起影響范圍廣泛的攻擊活動并將其稱之為 “UNC2452”。該攻擊活動的幕后黑手獲得對全球很多公共和私營組織機構的訪問權限。他們通過 SolarWinds 公司的IT 監控和管理軟件Orion 的惡意更新獲得對受害者的訪問權限。該活動可能早在2020年春就已啟動,且目前仍在進行中。該供應鏈攻陷后的活動包括橫向移動和數據竊取。攻擊活動源自技術強大的組織,顯示出強大的運營安全性。

SUNBURST 后門

SolarWinds.Orion.Core.BusinessLayer.dll 是由 SolarWinds 公司數字簽名的 Orion 軟件框架的一個組件,其中包含一個后門,經由 HTTP 和第三方服務器通信。火眼將該 SolarWinds Orion 插件的木馬版本稱為 “SUNBURST”。

經過最長為兩周的初始休眠期后,它會檢索并執行命令 “Jobs”,其中包含傳輸文件、執行文件、配置系統、重啟機器和禁用系統服務的能力。該惡意軟件將其網絡流量偽裝成 Orion 改進計劃(Orion Improvement Program, OIP)協議,并在合法的插件配置文件中存儲偵察結果,使其能夠融入合法的 SolarWinds 活動。該后門使用多個混淆后的攔截清單來識別作為進程、服務和驅動來運行的取證和反病毒工具。

多個木馬版更新的數字簽名時間是2020年3月至5月,之后被發布在 SolarWinds 更新網站上,包括:

  • hxxps://downloads.solarwinds[.]com/solarwinds/CatalogResources/Core/2019.4/2019.4.5220.20574/SolarWinds-Core-v2019.4.5220-Hotfix5.msp

該木馬版更新文件是一個標準的 Windows Installer Patch 文件,其中包含和更新相關的壓縮性資源,如木馬版的 SolarWinds.Orion.Core.BusinessLayer.dll 組件。更新一旦安裝,惡意 DLL 將由合法的 SolarWinds.BusinessLayerHost.exe 或 SolarWinds.BusinessLayerHostx64.exe(取決于系統高配置)加載。經過最長為兩周的休眠期后,該惡意軟件將試圖解析 avsvmcloud[.]com 的一個子域名。該 DNS 響應將返回一個指向 C2 域名的 CNAME 記錄。惡意域名的C2流量旨在模仿正常的 SolarWinds API 通信。火眼公司已在 GitHub 頁面發布已知的惡意基礎設施:https://github.com/fireeye/sunburst_countermeasures

受害者遍布全球,橫跨多個垂直行業

火眼公司在全球多個實體中檢測到了這起攻擊活動,受害者包括政府、咨詢、技術、電信和冶煉實體,遍布北美、歐洲、亞洲和中東地區。報告指出,其它國家和垂直行業也有受害者。目前,火眼公司已通知這些受影響實體。

攻陷后活動和檢測機會

報告指出,獲得初始訪問權限后,UNC2452 組織使用多種技術在橫向移動的同時偽裝其行動。它偏向于維持一個輕量的惡意軟件指紋而不是合法的憑據和遠程訪問權限來訪問受害者環境。如下將詳細闡述值得注意的技術和潛在的檢測機會。

所使用的 TEARDROP 和 BEACON 惡意軟件

報告指出,目前已恢復多個 SUNBURST 樣本,它們負責交付不同的 payload。在至少一個實例中,攻擊者部署了一個此前未出現過的內存模式的釋放器,火眼將其稱為“TEARDROP”,來部署 Cobalt Strike BEACON。

TEARDROP 是一個內存模式的釋放器,它以服務形式運行,生成一個線程并從文件 “gracious_truth.jpg” 中讀取,而該文件很可能具有一個虛假的 JPG 標頭。接著,它檢查 HKU\SOFTWARE\Microsoft\CTF 是否存在,解碼使用自定義滾動 XOR 算法的嵌入式payload,并手動在內存中加載使用自定義的類似 PE 文件格式的嵌入式 payload。TEARDROP 和之前的惡意軟件之間并不存在代碼重合。火眼研究員認為這樣做是為了執行一個定制化的 Cobalt Strike BEACON。

緩解措施:火眼公司已在 GitHub提供用于檢測 TEARDROP 的兩個YARA規則。

攻擊者主機名匹配受害者環境

威脅組織在命令和控制基礎設施上設置了主機名,以匹配在受害者環境中找到的一個合法主機名。這就導致攻擊者可以融入該環境、避開嫌疑并躲避檢測。

檢測機會

攻擊者基礎設施在 RDP SSL 證書中泄露了已配置的主機名,而該證書可從互聯網掃描數據中識別。這就為防御人員提供了檢測機會:查詢互聯網掃描數據來源中組織機構的主機名,披露可能偽裝成某組織機構的惡意 IP 地址(注意:IP 掃描歷史經常顯示在默認主機名(WIN-*)和受害者主機名之間轉換的 IP 地址)。交叉引用在互聯網掃描數據中的 IP 列表和遠程訪問日志可能會識別出環境中該組織存在的證據。有可能每個 IP 地址對應一個賬戶。

位于受害者國家的 IP 地址

攻擊者所選擇的 IP 地址也是為了躲避檢測。攻擊者主要使用僅位于受害者所在國家使用 VPS 的 IP 地址。

檢測機會

如果受陷賬戶由合法用戶以及來自不同 IP 地址的攻擊者使用,則用于遠程訪問的地理位置 IP 地址可能會出現一種不可能存在的移動速度。攻擊者為每個 VPS 提供商使用多個 IP 地址,因此一旦發現異常 ASN 的惡意登錄信息,則查看該 ASN 的所有登錄信息有助于檢測到其它惡意活動。在對用于合法遠程訪問的 ASN 的基線化和正常化時,這樣做有助于識別可疑活動。

使用不同憑據進行橫向移動

攻擊者通過受陷憑據獲得對網絡的訪問權限后,可能會使用多個不同的憑據進行橫向移動。用于橫向移動的憑據和用于遠程訪問的憑據總是不同。

檢測機會

組織機構可以勾畫出所有的登錄活動并分析源系統和賬戶之間存在一對多關系的系統。這樣會識別出以多個賬戶認證到多個系統的任何單一系統,這在正常的業務活動中是一種相對不常見的情況。

臨時的文件替換和臨時的任務修改

攻擊者使用一種臨時的文件替換技術遠程執行工具:以惡意工具替換合法工具,執行 payload,之后存儲合法的原始文件。同樣,它們通過更新現有的合法任務的方式操縱已調度任務,執行其工具,之后將已調度任務返回給原始的配置。它們定期刪除工具,如實現合法的遠程訪問后刪除后門。

檢測機會

防御人員可查看 SMB 會話日志,日志顯示對合法目錄的訪問并在短時間內遵循刪除-創建-刪除-創建的模式。另外,防御人員可以監控現有的已調度任務中是否存在臨時更新,通過頻率分析識別異常的任務修改情況。也可監控任務,查看合法的 Windows 任務是否執行新的或未知的二進制。

該攻擊的攻陷后活動高度遵循運營安全性,在很多情況下,每次入侵會利用專門的基礎設施。這是火眼公司見過的最佳運營安全案例之一,它專注于躲避和利用內在信任。然而,研究員也可通過持續性防御措施檢測到這些活動。

詳細分析

SolarWinds.Orion.Core.BusinessLayer.dll 是由 SolarWinds 公司數字簽名的 Orion 軟件框架的一個組件,其中包含一個后門,經由 HTTP 和第三方服務器通信。火眼將該 SolarWinds Orion 插件的木馬版本稱為 “SUNBURST”。

獨特能力

  • 執行子域 DomainName Generation Algorithm (DGA),區分 DNS 請求

  • CNAME 響應指向惡意軟件連接的 C2 域名中

  • A 記錄響應的 IP 塊控制惡意軟件行為

  • 命令和控制流量偽裝成合法的 Orion 改進計劃(OIP)

  • 代碼使用虛假的變量名稱并輸入合法組件,隱藏在明網站中

交付和安裝

授權系統管理員通過由 SolarWinds 網站分發的數據包提取并安裝 SolarWinds Orion 更新。更新包 CORE-2019.4.5220.20574-SolarWinds-Core-v2019.4.5220-Hotfix5.msp (02af7cec58b9a5da1c542b5a32151ba1) 中包含本報告描述的 SolarWinds.Orion.Core.BusinessLayer.dll。安裝后,Orion 軟件框架執行 .NET 程序 SolarWinds.BusinessLayerHost.exe 以加載插件,包括 SolarWinds.Orion.Core.BusinessLayer.dll. 在內。該插件包含很多合法的姓名空間、類和在 Orion 框架中執行功能的例程。類 SolarWinds.Orion.Core.BusinessLayer.OrionImprovementBusinessLayer執行基于 HTTP 的后門。加載 Inventory Manager 插件時,在邏輯上不相關的例程 SolarWinds.Orion.Core.BusinessLayer.BackgroundInventory.InventoryManager.RefreshInternal 中的代碼調用后門代碼。

初始化

執行惡意的

SolarWinds.Orion.Core.BusinessLayer.OrionImprovementBusinessLayer.Initialize 方法時,樣本驗證了值 17291806236368054941的小寫的進程名稱哈希。該哈希值計算為標準的 FNV-1A 64 位哈希,并帶有計算 FNV-1A 之后的附加的異或運算 6605813339339102567。該哈希匹配名為 “solarwinds.businesslayerhost”的進程。

樣本只有在文件系統的匯編編寫事件至少是在當前時間提前12到14天時才執行;確切的閾值從某個間隔隨機選擇。由于該樣本是由合法的定期后臺任務運行的,因此會繼續檢查該時間閾值。一旦滿足該閾值,樣本就會創建命名管道 583da945-62af-10e8-4902-a8f205c72b2e 以保證在從磁盤中讀取 SolarWinds.Orion.Core.BusinessLayer.dll.config 并檢索 XML 字段 appSettings 之前,只有一個實例在運行。該 appSettings 字段的值是惡意邏輯重構為持續性配置的合法值。該樣本繼續執行的值 ReportWatcherRetry 必須是除3以外的其它值。

該樣本檢查該機器是否入域且在執行繼續前檢索域名。通過計算活躍但非回調設備的所有網絡接口 MAC 地址、域名以及注冊表值 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\MachineGuid 的 MD5 來生成 userID。MD5 計算好后,通過自定義 XOR 計劃編碼 userID。之后,從 SolarWinds.Orion.Core.BusinessLayer.dll.config 中讀取appSettings 的 ReportWatcherPostpone 值來檢索最初的合法值。執行該操作的原因是后續樣本會將位標志打包到該字段中,而必須知道初始值才能讀出位標志。之后,該樣本調用 Update 方法,而該方法是該樣本的核心事件循環。

DGA 和塊列表

后門判斷使用 DGA 的 C2 服務器,以構建并解析 avsvmcloud[.]com 的子域。Update 方法負責初始化加密幫助器以生成這些隨季節的 C2 子域。這些子域和如下其中之一進行拼接,以創建用于解析的主機名稱:

  • .appsync-api.eu-west-1[.]avsvmcloud[.]com

  • .appsync-api.us-west-2[.]avsvmcloud[.]com

  • .appsync-api.us-east-1[.]avsvmcloud[.]com

  • .appsync-api.us-east-2[.]avsvmcloud[.]com

獲取進程名稱、服務名稱和驅動路徑列表,并通過 FNV-la + XOR 算法哈希每個值以及對照硬編碼塊列表進行檢查。分析過程已經暴力逆向了這些哈希,顯示這些例程正在掃描分析工具和反病毒引擎組件。如果塊列表進程發現 Update 例程存在,則樣本將繼續在塊列表通過之前嘗試執行該例程。將塊列表的注冊表項 HKLM\SYSTEM\CurrentControlSet\services\<service_name>\Start 設置為值4(已禁用)阻止塊列表。服務列表中的某些條目如果位于系統上,則從生成的值來看,可能會影響 DGA 算法。隨后將已停止服務的列表打包到樣本配置文件的 appSettings 條目的 ReportWatcherPostpone 密鑰中。如果將任意服務轉換為禁用,則 Update 方法退出并稍后重試。該樣本通過 WMI 查詢語句 Select * From Win32_SystemDriver 檢索驅動列表。如果看到任意塊列表驅動,則 Update 方法退出并重試。如果通過所有的塊列表測試,則樣本嘗試解析 api.solarwinds.com,測試網絡連接情況。

網絡命令和控制 (C2)

如果所有的塊列表和連接檢查都通過,則該樣本開始通過 DGA 在 while 循環中生成域名。該樣本將在域名生成過程中延遲隨機的時間間隔;該間隔可能是隨機值,范圍是1到3分鐘、30分鐘到120分鐘,或者在出錯條件下將達到420分鐘到540分鐘你(9小時)。所生成域名的 DNS A 記錄將對照硬編碼的 IP 地址塊列表(控制惡意軟件的行為)進行檢查。如下范圍的記錄將終止該惡意軟件并將配置密鑰 ReportWatcherRetry 更新位阻止進一步執行的值:

  • 10.0.0.0/8

  • 172.16.0.0/12

  • 192.168.0.0/16

  • 224.0.0.0/3

  • fc00:: - fe00::

  • fec0:: - ffc0::

  • ff00:: - ff00::

  • 20.140.0.0/15

  • 96.31.172.0/24

  • 131.228.12.0/22

  • 144.86.226.0/24

一旦在 CNAME DNS 響應中成功檢索到域名,則樣本將生成一個新的執行線程,調用 HttpHelper.Initialize 方法。該方法負責所有的 C2 通信和分派。HTTP 線程開始時會延遲由 SetTime 命令控制的可配置時間。在調出之間將存在最低1分鐘的延遲。當請求數據時,該惡意軟件將使用 HTTP GET 或 HEAD 請求,而當將 C2 輸出數據發送給服務器時,惡意軟件將使用 HTTP PUT 或 HTTP POST 請求。當 payload 小于10000字節時,使用 PUT 方法,否則使用 POST 方法。If-None-Match HTTP 標頭保存了先前計算出的 userID 的 XOR 編碼表示并附加了具有相同長度的隨即字節數組。

所有的 HTTP POST 和 PUT 請求中均存在一個 JSON payload 并包含密鑰 “userId”、“sessionId” 和 “steps”。”steps” 字段包含具有如下密鑰的對象清單:“Timestamp”、 “Index”、 “EventType”、 “EventName”、 “DurationMs”、 “Succeeded” 和 “Message”。JSON 密鑰 “EventType” 被硬編碼到值 “Orion” 中,而 “EventName” 被硬編碼到 “EventManager” 中。發送給服務器的惡意軟件響應信息通過 DEFLATE 壓縮并用 single-byte-XOR 編碼,之后在 “steps” 數據中的 ”Message” 字段中分開。每個 “Message” 值都分別用 Base64 編碼。數組 “steps” 中并非所有的對象都體現在惡意軟件信息中—— “Timestamp” 字段中的一個整數必須設置 0x2 位以提示 “Message” 字段中的內容用于惡意軟件信息中。位 0x2清楚地位于時間戳字段的 Step 對象包含隨機數據,當匯編惡意軟件響應時,隨機數據被丟棄。

隱寫術

在所觀測到的流量中,這些 HTTP 響應主體試圖看似和 .NET 匯編相關的非惡意 XML,但實際上命令數據在很多 GUID 和 HEX 字符串之間傳播。使用如下正則表達式 "\{[0-9a-f-]{36}\}"|"[0-9a-f]{32}"|"[0-9a-f]{16}" 搜索 HEX 字符串,從 HTTP 響應主體中提取命令。命令數據在偽裝成 GUID 和 HEX 字符串中的多個字符串中傳播。響應中的所有已匹配子字符串過濾非 HEX 字符、連接在一起并通過 HEX 進行解碼。第一個 DWORD 值顯示了該信息的真實大小,直接跟在信息之后,之后是可選的其它垃圾字節。所提取的信息是使用該信息第一個字節解碼的單字節 XOR,之后通過 DEFLATE 解壓。第一個字符是一個 ASCII 整數,映射到 JobEngine enum,具有可選的其它由空格字符定界的命令參數。

之后根據如下所述的命令值將命令分派到 JobExecutionEngine。

緩解措施

SolarWinds 建議所有客戶立即更新至 Orion Platform 版本2020.2.1 HF 1。此外,SolarWinds 還發布了其它緩解措施:https://www.solarwinds.com/securityadvisory。

如果用戶無法采用 SolarWinds 提供的建議,則可采取如下臨時i環節技術,檢查環境中可能存在木馬化的 SolarWinds 軟件風險。如在環境中發現攻擊者活動,則建議開展全面調查,涉及并執行相應的緩解措施。

  • 確保已隔離/處理 SolarWinds 服務器,并開展進一步的審計和調查活動。其中應包括攔截源自 SolarWinds 服務器的所有互聯網出口

  • 如 SolarWinds 基礎設施未隔離,則考慮采取如下措施:

  • 限制從 SolarWinds 服務器到端點的連接范圍,尤其是哪些被視作 Tier 0 / crown jewel 的資產

  • 限制在 SolarWinds 服務器上具有本地管理員權限的賬戶范圍

  • 通過 SolarWinds 軟件攔截來自服務器或其它端點的互聯網出口。

  • (至少)考慮更改能夠訪問 SolarWinds 服務器/基礎設施的賬戶密碼。根據進一步的審計/調查,可能需要其它的修復措施。

  • 如使用 SolarWinds 管理網絡基礎設施,則考慮審計網絡設備配置,查看是否存在異常/未授權修改。注意,這種措施是因 SolarWinds 功能而推出的主動措施,并非基于調查結果。

受支持的命令如下:

推薦閱讀

FireEye 紅隊失竊工具大揭秘之:分析復現 Confluence路徑穿越漏洞 (CVE-2019-3398)

FireEye 紅隊失竊工具大揭秘之:分析復現 Atlassian RCE (CVE-2019-11580)

請君入甕:火眼自稱遭某 APT 國家黑客組織攻擊

原文鏈接

https://www.bleepingcomputer.com/news/security/sophos-fixes-sql-injection-vulnerability-in-their-cyberoam-os/

題圖:Pixabay License

本文由奇安信代碼衛士編譯,不代表奇安信觀點。轉載請注明“轉自奇安信代碼衛士 https://codesafe.qianxin.com”。

奇安信代碼衛士 (codesafe)

國內首個專注于軟件開發安全的

產品線。

? ??覺得不錯,就點個?“在看” 或 "贊” 吧~

總結

以上是生活随笔為你收集整理的FireEye事件新动态:APT 攻击 SolarWinds 全球供应链(详解)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。