前情提要

我 草貓 資安小白 看到這個漏洞的新聞就想說來寫一下筆記

本筆記可能有誤 請參考原文以及相關資安專業人士的分析 不要完全相信我寫的內容 我資安小白 可能會有誤解的地方 請多包涵 謝謝

正文

文中提及兩種攻擊技術

  • TOCTOU: 檢查與使用競速條件
  • path confusion: 路徑混淆

TOCTOU

參考 這篇文章
TOCTOU 是 Time of Check to Time of Use 的縮寫
簡單來說 就是
當程式在檢查某個條件的時候 和 實際使用該條件的時候 之間存在時間差
如附圖所示
alt text
攻擊者可以利用這個時間差來改變條件的狀態
舉例
像是這個程式不能在管理員權限下執行
但攻擊者可以在程式檢查完權限後 但在程式實際執行前 切換到管理員權限
這樣就繞過了權限檢查

path confusion

confusion attack

參考 這篇文章
confusion attack
簡單來說就是不同組件對一個資訊的解讀不一致

而 path confusion 就是路徑混淆
攻擊者可以利用不同組件對路徑的解讀不一致來達到攻擊的目的

blueHammer

Phase 0: 身分分支
  wmain
   ├─ IsRunningAsLocalSystem ? YES → LaunchConsoleInSessionId → return
   └─ NO → 進入 Phase 1

Phase 1: 等待可觸發條件(更新)
  CheckForWDUpdates (WU COM 查找 Defender signature update)
  └─ 找到後進入 Phase 2

Phase 2: 準備更新素材
  GetUpdateFiles
   ├─ 下載更新 payload
   ├─ 從 PE 取出 CAB
   └─ FDICopy 解包 → UpdateFiles linked-list

Phase 3: 取得 VSS + 讓 Defender 進入可控狀態
  TriggerWDForVS
   ├─ ShadowCopyFinderThread:在 Object Manager \Device 下找新 VSS 名稱
   └─ FreezeVSS + CfCallbackFetchPlaceHolders
       ├─ [TOCTOU] 事件同步:等到 Defender 觸發回呼/查詢
       └─ [TOCTOU] oplock:建立可控停頓點 → “凍結/卡住”某段流程
  → 回到 wmain,帶回 fullvsspath(VSS 裝置路徑字串)

Phase 4: 觸發 Defender 更新 + 競態窗口 + 路徑重導
  for each target in filestoleak:
    4.1 建立暫存目錄並落地更新檔(UpdateFiles)
    4.2 WDCallerThread / CallWD
        └─ RPC 呼叫 Defender 更新(Proc42_ServerMpUpdateEngineSignature)
    4.3 [TOCTOU] 等 Defender 建立新 definition update 子目錄
        └─ ReadDirectoryChangesW + Wait...
    4.4 [TOCTOU] oplock:在某個關鍵更新檔建立停頓點並等待觸發
    4.5 [PATH] 佈置路徑混淆
        ├─ 建立/設定 reparse point (junction / mount point)
        └─ 建立 Object Manager symbolic link 指向 VSS\...\SAM
    4.6 讀取 Defender 新目錄中的檔案內容(實際已被導向)
    4.7 將內容寫出到 %TEMP% 檔案

Phase 5: 後處理(帳密/權限動作)
  DoSpawnShellAsAllUsers
   ├─ OROpenHive 打開 SAM hive
   ├─ 解 LSA/BootKey、解密 NTLM 相關資料(AES/DES)
   ├─ ChangeUserPassword:用 samlib.dll 修改其他本機帳戶密碼(再嘗試還原)
   └─ 依 token/權限嘗試建立不同層級的進程/console

* Copilot said: VSS 是 **Volume Shadow Copy Service(磁碟區陰影複製服務)**,是 Windows
VSS 是 Volume Shadow Copy Service(磁碟區陰影複製服務)的縮寫
VSS 是 Windows 的一個功能,允許用戶在不影響系統運行的情況下創建磁碟區的快照
VSS 可以用來備份系統或還原系統到之前的狀態
VSS 在此漏洞中被利用來創建一個可控的環境,讓攻擊者能夠在 Defender 更新過程中進行 TOCTOU 攻擊和路徑混淆攻擊

* oplock 是 **opportunistic lock(機會鎖)** 的縮寫
oplock 是 Windows 的一個功能,允許應用程式在訪問文件時獲得鎖定權限,以便在文件被其他應用程式訪問時能夠暫停自己的操作
oplock 可以用來實現 TOCTOU 攻擊中的停頓點

(copilot和我說的 可能有誤 請參考原repo)

後記

這個漏洞的利用方式非常複雜 涉及多個階段和多種攻擊技術
就只是借這個漏洞來去學習一下 TOCTOU 和 path confusion 這兩種攻擊技術

明天想講講無限捲動(Infinite Scroll)
和無縫更改瀏覽器網址列
(在inside.com.tw這個網站看到這兩個技術 覺得有趣 就想說來講一下)