注意事項
Microsoft Defender 入口網站中的漏洞管理區塊現已移至暴露管理區。 透過這項變更,您現在可以在統一的地點管理安全暴露資料與漏洞資料,以強化現有的漏洞管理功能。 深入了解。
這些變更對於預覽用戶來說很重要, (Microsoft Defender 全面偵測回應 + 適用於身分識別的 Microsoft Defender預覽選項) 。
Log4Shell 漏洞是 Apache Log4j 2 日誌函式庫中發現的遠端程式碼執行 (RCE) 漏洞。 由於 Apache Log4j 2 被許多軟體應用和線上服務廣泛使用,因此對全球企業來說,這是一個複雜且高風險的狀況。 (CVE-2021-44228、 CVE-2021-45046 稱為「Log4Shell」,) 引入了一種新的攻擊途徑,攻擊者可利用它來擷取資料並在組織中部署勒索軟體。
注意事項
請參閱部落格《 防止、偵測及搜尋 Log4j 2 漏洞利用指南》及Microsoft 安全回應中心 ,獲取漏洞的指引與技術資訊,以及保護貴組織的產品特定緩解建議。
發現、監控與緩解能力概述
Defender 弱點管理提供以下功能,協助您識別、監控並減輕組織對 Log4Shell 漏洞的暴露:
- 發現:偵測暴露裝置,無論是適用於端點的 Microsoft Defender 上線裝置,或是已被發現但尚未上線的裝置,都是基於磁碟上偵測到的脆弱軟體與易受攻擊檔案。
- 威脅感知: 一個整合的視角,用來評估你的組織暴露情況。 此檢視顯示你在裝置層級和軟體層級的暴露情況,並提供漏洞檔案的詳細資訊,例如最後一次被發現的時間、最後執行時間以及最後一次在開放埠口下執行的時間。 您可以利用這些資訊來優先排序修復行動。 與暴露裝置相關的資料可能要等長達 24 小時才會出現在儀表板上。
- 緩解措施: 採取緩解措施以降低暴露風險。
- 進階狩獵: 使用進階搜尋功能,回傳磁碟上識別出的易受攻擊 log4j 檔案的詳細資料。
注意事項
這些功能支援 Windows 10 & Windows 11、Windows Server、Linux 和 macOS。
Linux 支援需要適用於端點的 Microsoft Defender Linux 用戶端版本 101.52.57 (30.121092.15257.0) 或更新版本。
macOS 支援需要 適用於端點的 Microsoft Defender macOS 用戶端版本為 20.121111.15416.0 或更新版本。
欲了解更多支援版本,請參閱 支援作業系統平台與能力。
暴露裝置發現
Microsoft Defender 入口網站內建的 Defender 弱點管理功能,以及啟用 Log4j 偵測功能,將協助你發現暴露於 Log4Shell 漏洞的裝置。
內建裝置會利用現有的 Defender 弱點管理功能進行評估,這些功能能發現有漏洞的軟體與檔案。
對於已發現但尚未上線的裝置偵測,必須啟用 Log4j 偵測。 這會像裝置偵測主動探測你的網路一樣啟動探測。 探測包括多個已接入端點 (Windows 10+及Windows Server 2019+裝置) ,且僅在子網內探測,以偵測脆弱且遠端暴露於 CVE-2021-44228 的裝置。
啟用 Log4 偵測:
進入 設定>裝置發現>發現設定。
選擇 啟用 Log4j2 偵測 (CVE-2021-44228) 。
選取 [儲存]。
運行這些探針會觸發標準的Log4j流量,且不會對被探測的裝置或探測裝置造成任何有害影響。 探測本身是透過向發現的裝置發送多個 HTTP 請求,目標為常見的網頁應用埠 (例如——80,8000,8080,443,8443) 與網址。 請求包含帶有 JNDI 有效載荷的 HTTP 標頭,該有效載荷會觸發被探測機器的 DNS 請求。
例如,User-Agent: ${jndi:dns://192.168.1.3:5353/MDEDiscoveryUser-Agent},其中 192.168.1.3 是探測機器的 IP。
注意事項
啟用 Log4j2 偵測也意味著內建設備將使用自我探測來偵測本地漏洞。
軟體與檔案偵測漏洞
Defender 弱點管理提供多層偵測,幫助您發現:
易受攻擊的軟體:發現基於已安裝的應用程式 Common Platform Enumerations (CPE) ,這些應用程式已知易受 Log4j 遠端程式碼執行影響。
易受攻擊的檔案: 同時評估記憶體中的檔案與檔案系統中的檔案。 這些檔案可以是帶有已知易受攻擊版本的 Log4j 核心 jar 檔案,或是包含易受攻擊 jndi 查詢類別或易受攻擊 log4j-core 檔案的 Uber-JAR 檔案。 具體來說,它:
- 透過檢查 JAR 檔案並搜尋以下檔案,判斷 JAR 檔案是否包含易受攻擊的 Log4j 檔案:\META-INF\maven\org.apache.logging.log4j\log4j-core\pom.properties — 若存在此檔案,則讀取並解壓 Log4j 版本。
- 在 JAR 檔案中搜尋包含字串「/log4j/core/lookup/JndiLookup.class」的路徑,搜尋 JndiLookup.class 檔案——若存在 JndiLookup.class 檔案,Defender 弱點管理會判斷該 JAR 是否包含 pom.properties 定義版本的 Log4j 檔案。
- 透過搜尋包含以下任一字串的路徑,搜尋嵌入巢狀 JAR 中的任何有漏洞的 Log4j 核心 JAR 檔案:
- lib/log4j-core-
- WEB-INF/lib/log4j-core-
- App-INF/lib/log4j-core-
下表說明支援的搜尋功能平台與版本:
| 功能 | 檔案類型 | Windows 10+, Server2019+ |
伺服器 2012R2, Server2016 |
伺服器 2008R2 | Linux + macOS |
|---|---|---|---|---|---|
| 記憶中的搜尋 | Log4j核心 | 是 | 是的[1] | - | 是 |
| Uber-JARs | 是 | 是的[1] | - | 是 | |
| 搜尋磁碟上的所有檔案 | Log4j核心 | 是 | 是的[1] | 是 | - |
| Uber-JARs | 是 | 是的[1] | - | - |
(1) 功能在 Windows Server 2012 R2 和 2016 安裝時KB5005292可用。
了解您的 Log4Shell 暴露與緩解選項
在 Microsoft Defender 入口網站中,請執行以下其中一項:
- 如果您是 Microsoft Defender 全面偵測回應 + 適用於身分識別的 Microsoft Defender 預覽版客戶,請選擇暴露管理>漏洞管理>漏洞。
- 如果你是現有客戶,請選擇端 點>漏洞管理>弱點。
選擇 CVE-2021-44228。
選擇 開啟漏洞頁面。
Log4Shell 漏洞緩解
可透過在預設設定下阻止 Log4j 版本 2.10 至 2.14.1 進行 JNDI 查詢來緩解 log4Shell 漏洞。 為了建立這項緩解措施,請參考 威脅意識儀表板:
選擇 查看漏洞詳情。
選擇 緩解選項。
你可以選擇對所有暴露裝置套用緩解措施,或選擇特定的內建裝置。 要完成流程並在裝置上套用緩解措施,請選擇 「建立緩解行動」。
緩解狀況
緩解狀態顯示是否已對裝置實施停用 JDNI 查詢的解決方法。 您可以在「暴露裝置」分頁查看每台受影響裝置的緩解狀態。 這有助於根據設備的緩解狀態,優先處理緩解和/或修補。
下表列出可能的緩解狀態:
| 緩解狀況 | 描述 |
|---|---|
| 已應用的變通方法 |
Windows:LOG4J_FORMAT_MSG_NO_LOOKUPS環境變數是在最新裝置重啟前觀察到的。 Linux + macOS:所有執行中的程序的環境變數都有 LOG4J_FORMAT_MSG_NO_LOOKUPS=true。 |
| 待重啟的解決方法 | LOG4J_FORMAT_MSG_NO_LOOKUPS 環境變數已設定,但未偵測到後續重啟。 |
| 未應用 |
Windows:LOG4J_FORMAT_MSG_NO_LOOKUPS環境變數沒有被觀察到。 Linux + macOS:並非所有執行中的程序環境變數都有 LOG4J_FORMAT_MSG_NO_LOOKUPS=true,且裝置上沒有施加緩解措施。 |
| 部分緩解 | Linux + macOS:雖然裝置已採取緩解措施,但並非所有執行中的程序環境變數皆為 LOG4J_FORMAT_MSG_NO_LOOKUPS=true。 |
| 不適用 | 那些裝置有漏洞檔案,但不在緩解版本範圍內。 |
| Unknown | 目前尚無法確定緩解狀況。 |
注意事項
裝置更新的緩解狀態可能需要數小時才能反映出來。
針對 Log4Shell 漏洞所適用的還原緩解措施
若需撤銷緩解措施,請遵循以下步驟:
For Windows:
開啟提升權限的命令提示字元視窗。
執行下列命令:
[Environment]::SetEnvironmentVariable("LOG4J\_FORMAT\_MSG\_NO\_LOOKUPS", $null,[EnvironmentVariableTarget]::Machine)
這個變更會在裝置重新啟動後生效。
針對 Linux:
打開檔案 /etc/environment 並刪除該行 LOG4J_FORMAT_MSG_NO_LOOKUPS=true
刪除 /etc/systemd/system.conf.d/log4j_disable_jndi_lookups.conf 檔案
刪除檔案 /etc/systemd/user.conf.d/log4j_disable_jndi_lookups.conf
這個變更會在裝置重新啟動後生效。
macOS 版本:
移除檔案設定。以下資料夾中的LOG4J_FORMAT_MSG_NO_LOOKUPS.plist:
- /圖書館/啟動守護靈/
- /Library/LaunchAgents/
- /Users/[username]/Library/LaunchAgents/ - 適用於所有使用者
這個變更會在裝置重新啟動後生效。
Apache Log4j 安全建議
若要查看與 Apache log4j 相關的有效安全建議,請從漏洞詳情頁面選擇 安全建議 標籤。 在這個範例中,如果你選擇 Update Apache Log4j ,你會看到另一個包含更多資訊的飛出:
選擇 「請求修復」 以建立修復請求。
探索 Microsoft Defender 入口網站中的漏洞
一旦發現暴露的裝置、檔案和軟體,相關資訊會透過以下 Microsoft Defender 入口網站的體驗傳達:
軟體清查
在軟體清單頁面,搜尋 CVE-2021-44228 ,以了解 Log4j 軟體安裝及暴露的詳細資訊:
弱點
在漏洞或弱點頁面,搜尋 CVE-2021-44228 以查看 Log4Shell 漏洞的相關資訊:
使用進階狩獵
您可以使用以下進階搜尋查詢來識別裝置上已安裝軟體的漏洞:
DeviceTvmSoftwareVulnerabilities
| where CveId in ("CVE-2021-44228", "CVE-2021-45046")
您可以使用以下進階搜尋查詢,找出裝置上已安裝軟體的漏洞,從磁碟中擷取檔案層級的發現:
DeviceTvmSoftwareEvidenceBeta
| mv-expand DiskPaths
| where DiskPaths contains "log4j"
| project DeviceId, SoftwareName, SoftwareVendor, SoftwareVersion, DiskPaths