KeyFrame內部研究專用

Black Hat USA 2025 | I'm in Your Logs Now, Deceiving Your Analysts and Blinding Your EDR

Black Hat·3月20日週五·40 min英文

三句話摘要

攻擊者可透過 Windows ETW 事件偽造機制,繞過 EDR 監控、淹沒告警上限,使 Microsoft Defender for Endpoint 等雲端 EDR 系統完全致盲。 ETW 事件偽造與 buffer 洪水攻擊讓雲端 EDR 的遙測可信度從根本動搖,攻擊者只需一般使用者權限即可讓 Defender for Endpoint 等系統長達 24 小時甚至持續致盲,而防禦方目前只能被動偵測異常模式、等待廠商逐一修補。 任何使用者皆可對已存在的 ETW provider 注冊並發送事件:Windows ETW 的設計允許同一 GUID 被多個 process 同時注冊,ETW kernel 不記錄事件由哪個 process 發出,只記錄 PID(且為真實觸發 activity 的 PID,不可偽造),因此偽造事件在 EDR 眼中與真實事件無異。

重點整理

重點
  • 1

    任何使用者皆可對已存在的 ETW provider 注冊並發送事件:Windows ETW 的設計允許同一 GUID 被多個 process 同時注冊,ETW kernel 不記錄事件由哪個 process 發出,只記錄 PID(且為真實觸發 activity 的 PID,不可偽造),因此偽造事件在 EDR 眼中與真實事件無異。

  • 2

    雲端 EDR 的事件上限設計反而成為攻擊面:Defender for Endpoint 對多數 ETW provider 設有全域上限(如 LDAP 每 24 小時 1,000 筆),攻擊者可預先刷爆配額,讓後續真實攻擊行為的事件被靜默丟棄,不送往雲端分析引擎。

  • 3

    Buffer pool 洪水攻擊可持續致盲 EDR 直到重開機:ETW trace session 的 buffer pool 一旦被填滿,ETW kernel 會通知所有訂閱該 provider 的 session 暫停接收,包含 EDR 的 real-time session,且此狀態持續到機器重開機,效果比 24 小時配額刷爆更持久。

  • 4

    偽造告警可操縱 Conditional Access 政策,將正當使用者或裝置踢出網路:藉由發出大量假性惡意軟體或風險告警,可人為拉高使用者或裝置的風險評分,觸發 Intune / Azure AD Conditional Access 策略,讓合法使用者被封鎖,製造混亂或轉移 SOC 分析師注意力。

實用技巧與重點

乾貨
  • 全域上限(Global cap):Defender for Endpoint LDAP provider 設定為每台機器每 24 小時 1,000 筆唯一事件,超過部分不上傳
  • 本地上限(Local cap):相同 process、相同查詢參數於 24 小時內只記錄一次(first-seen 機制)
  • Buffer pool 存放於 non-paged kernel memory,可用 `logman` 查詢設定值
  • Trace session 上限:單台機器最多 64 個 trace session,可被惡意佔滿以阻擋 EDR 新增 session
  • 可偽造的 provider 範例:LDAP client、Microsoft Anti-malware Service、Windows Defender ETW provider、TCP/IP provider
  • 工具名稱
  • `ETW Explorer`:瀏覽與搜尋 ETW manifest 的工具
  • `ETW Top`(作者自製):監控 ETW provider 事件遺失狀況的 CLI 工具
  • `Bamboozle EDR`(作者自製):一鍵偽造 ETW 事件、刷爆 capping、模擬攻擊工具(BloodHound/SharpHound LDAP 查詢等)
  • 程式語言:作者以 Go 語言撰寫 PoC,使用 Windows native syscall 直接呼叫 ETW API 以控制 header(keywords、level 等)
  • 通報結果:Microsoft MSRC 確認問題,評估為「不需立即修補」;August 7 發布的更新僅修補 anti-malware provider 單一項目
  • Defender for Endpoint 依賴的 ETW provider 數量:超過 100 個(作者回報的清單),Microsoft 僅修補 1 個

結論

結論

ETW 事件偽造與 buffer 洪水攻擊讓雲端 EDR 的遙測可信度從根本動搖,攻擊者只需一般使用者權限即可讓 Defender for Endpoint 等系統長達 24 小時甚至持續致盲,而防禦方目前只能被動偵測異常模式、等待廠商逐一修補。

完整解析

詳細

Event Tracing for Windows(ETW)是 Windows 內建的高效能遙測框架,設計初衷是效能監控與除錯,而非資安。現代雲端 EDR 廠商(包含 Microsoft Defender for Endpoint 與 CrowdStrike)大量仰賴 ETW 取代傳統 kernel callback,原因在於 ETW 更穩定、可動態調整訂閱 provider、不需注入每個 process,且提供原生的 buffer 機制降低事件遺失率。這使得 ETW 成為端點遙測的核心命脈——也因此成為高價值的攻擊目標。

Falcon Force 的 Olaf 在研究過程中發現,ETW 的安全模型存在根本性弱點:任何具有適當 Windows 權限(通常是一般使用者即可)的 process,都能向已存在的 ETW provider GUID 注冊並取得 handle,進而向該 provider 已連接的所有 trace session 發送自訂事件。由於 ETW kernel 不記錄「是哪個 process 發出這個事件」,只記錄事件內容中的 PID(且該 PID 是實際發起 activity 的 process,並非注冊 provider 的 process),偽造事件與真實事件在 EDR 眼中毫無差異。作者以 Go 撰寫 PoC,透過 Windows native API 繞過第三方套件的 header 限制,成功讓偽造的 LDAP 查詢事件出現在 Defender for Endpoint 的雲端告警介面。

進一步分析 Defender for Endpoint 的設定檔後,作者發現其對每個 ETW provider 都設有「全域上限」(global cap,例如 LDAP provider 每 24 小時 1,000 筆)與「first-seen 本地上限」(相同 process 相同查詢 24 小時只記一次)。攻擊者可在執行真實攻擊前,先以垃圾事件刷爆該配額,讓後續真實的惡意 LDAP 查詢或 anti-malware 偵測事件永遠無法上傳雲端,SOC 分析師因此對攻擊行為渾然不知。實驗驗證:發送超過 1,000 筆事件後,雲端確實只顯示 1,000 筆,後續的「canary」測試 process 事件完全消失。除了配額刷爆,作者還發現 ETW 的 buffer pool 機制同樣可被濫用——若攻擊者開啟一個 trace session 但不連接 consumer,持續向 provider 噴射事件填滿 buffer,ETW kernel 會通知所有訂閱該 provider 的 session(包含 EDR 的 real-time session)停止接收,效果持續到機器重開機為止,比 24 小時重置的配額攻擊更具持久性。

在進攻應用上,作者還展示了更具破壞力的場景:透過偽造大量 anti-malware 偵測事件(使用真實惡意軟體名稱與偵測 ID,但指向不存在的假檔案),可人為製造告警洪水,讓 SOC 分析師陷入假性恐慌;搭配 Azure AD Conditional Access 與 Intune 合規政策,甚至可將合法使用者或裝置的風險評分推高至被封鎖門檻,強制踢出企業網路。防禦方目前能做的相當有限:監控事件數量的異常峰值後驟降(spike-then-nothing 模式)可作為偵測指標;調整部分 ETW provider 的安全描述符(Security Descriptor)也許能限制非特權注冊,但風險不明。Microsoft 的回應是在 August 7 的更新中僅修補 anti-malware 單一 provider,其餘超過百個 MDE 依賴的 provider 仍處於可被偽造的狀態。

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「Web2 安全」的內容

SANS Stormcast Tuesday, August 25th, 2026: DOUBLECUP PNG; WebAudio Fingerprinting; Expired Domains; Android; Car
7 min
Web2 安全英文PODCAST8月25日

SANS Stormcast Tuesday, August 25th, 2026: DOUBLECUP PNG; WebAudio Fingerprinting; Expired Domains; Android; Car

SANS Stormcast

  • PNG 容器攻擊的簡易性設計:Double Cup 不依賴複雜的 Exif 或隱寫技術,只用 PNG 副檔名和檔頭來偽裝,核心是利用 findstr 指令的常見可用性讓執行變得無需額外工具。
  • Web Audio API 的隱密指紋識別:音訊於增益零的無聲狀態下播放,使用者完全無感,但錄製波形足以建立裝置特徵,在瀏覽器原生功能層面難以區分是反詐欺還是過度追蹤。
  • 域名過期引發的串聯漏洞:DMARC 報告端點使用過期域名是常見疏漏,允許攻擊者透過簡單的域名註冊取得他人的 SPF/DKIM 錯誤報告,進而收集目標系統配置情報。
Risky Bulletin: Expired credit cards can be used for malicious transactions
5 min
Web2 安全英文PODCAST8月24日

Risky Bulletin: Expired credit cards can be used for malicious transactions

Risky Business

  • 支付安全的非對稱風險:Visa卡利用未加密的卡片資料與NFC通訊,攻擊者可藉由中間人技術竄改過期日期進行交易,但MasterCard、美運卡與Discover的防護更完善,顯示不同發卡機構的安全架構存在明顯差異。
  • 國家級駭客活動的連鎖延伸:北韓Lazarus集團在2月單一事件已累積100名受害者,涵蓋大學、警察部門、媒體與醫療機構,伊朗駭客則針對基礎建設如電力系統發動破壞性攻擊,反映地緣政治在網路戰爭中的升溫。
  • AI加速漏洞生態的雙面刃:AI工具催生近2萬份漏洞概念驗證代碼發布,但同時也導致大量失效漏洞代碼氾濫,增加資安團隊甄別真實威脅的難度;Mayer Protocol遭攻擊事件中,駭客用AI鏈接六個無關的小漏洞完成盜竊170萬美元的攻擊。
SANS Stormcast Monday, August 24th, 2026: More Entra Powershell; Entra Vulnerability; GitLab Vuln (and PoC); GTA 6 Leak Malware
5 min
Web2 安全英文PODCAST8月24日

SANS Stormcast Monday, August 24th, 2026: More Entra Powershell; Entra Vulnerability; GitLab Vuln (and PoC); GTA 6 Leak Malware

SANS Stormcast

  • Microsoft EntraID 的遠端代碼執行漏洞已由微軟修補,初期報告顯示已遭利用但後來更正為未遭利用。這反映 Microsoft 在雲端軟體安全上的透明度提升,對漏洞採用與內部軟體相同的 CVE 編號和公告流程。
  • PowerShell 指令碼可用於驗證 MFA 部署完整性,特別是找出未啟用 MFA 的遺漏帳號。同時可以分析 EntraID 登入日誌中的異常行為,如風險係數評估和地理位置檢測,幫助組織快速識別可疑登入。
  • GitLab 的 GraphQL 代碼注入漏洞允許未認證攻擊者刪除或修改儲存庫,潛在導致供應鏈攻擊。已有公開概念驗證 (PoC) 存在,使用內部部署 GitLab 的組織必須立即修補。