跳到主要內容區塊

計資中心電子報C&INC E-paper

技術論壇

Windows零時差漏洞 BlueHammer攻擊手法解析
  • 卷期:v0077
  • 出版日期:2026-06-20

作者:李承學 / 北區學術資訊安全維運中心資安工程師,李美雯/臺灣大學計算機及資訊網路中心程式設計師


該漏洞利用Windows Defender簽章更新流程中存在的TOCTOU(Time-of-Check to Time-of-Use)競爭條件漏洞,透過Cloud Files API偽裝成雲端同步服務,並分別對Restart Manager DLL及Defender定義檔施加Batch Oplock,製造兩段操作空窗。在Defender無法干預的期間,惡意程式誘導Defender以SYSTEM最高系統權限讀取VSS快照中的SAM密碼資料庫,完成本機帳號憑證竊取。

 

一、漏洞概述

透過被公開的程式碼進行分析,這是一支專門設計用來竊取 Windows 電腦帳號密碼的惡意程式。它的攻擊目標非常明確:取得電腦上所有本機帳號的密碼資訊,讓攻擊者能夠用這些帳號登入其他系統,或直接掌控這台電腦。

 

📌開發者意圖

惡意程式內部字串區段存有標記文字「IHATEMICROSOFT」,這是開發者刻意留下的識別標記,明確反映出惡意動機。

 

這支惡意程式最值得關注的地方,在於它並非單純的密碼竊取工具,而是包含了一套精心設計的「繞過 Windows 安全機制」流程。它不需要一開始就擁有最高系統權限,而是利用 Windows Defender 本身擁有的最高系統權限,借 Defender 的手讀取原本無法存取的密碼資料庫,最後再透過竊取到的帳號密碼取得系統控制權。

 

二、為什麼危險?

一般的惡意程式嘗試竊取密碼時,通常會被 Windows Defender 偵測並封鎖。這支惡意程式的特別之處在於:它不只是繞過 Defender,而是把 Defender 本身當成竊取密碼的工具,讓 Defender 在不知情的情況下,用自己的系統最高權限讀取密碼資料庫。

  • 攻擊者將惡意程式偽裝成合法的雲端同步服務,從 Windows 系統的角度看起來一切正常。
  • Defender 在不知情的情況下成為攻擊的幫兇,用自己的最高系統權限完成了密碼竊取動作。
  • 惡意程式一開始不需要系統最高權限,透過攻擊流程逐步取得控制權,更難被預先偵測。
  • 對外網路流量完全偽裝成正常的防毒更新,讓網路層偵測極難察覺。
  • 攻擊完成後自動清理現場,降低事後鑑識的困難度。

 

三、它竊取了什麼?

這支惡意程式的目標是 Windows 的「SAM 資料庫」。SAM(Security Account Manager)是 Windows 用來儲存所有本機帳號密碼的核心檔案,就像一本上鎖的密碼本,正常情況下即使系統管理員也無法直接讀取。

 

🔑 為什麼 SAM 這麼難讀取?

SAM 在 Windows 運行期間被系統鎖定,任何程式(包含系統管理員)都無法直接開啟,唯一能讀取的是擁有最高系統權限(SYSTEM)的程序(Process),而 Windows Defender 正是其中之一。

 

取得 SAM 資料庫之後,攻擊者可以:

  • 離線暴力破解,在不連線到受害電腦的情況下,用專門工具嘗試還原明文密碼。
  • 傳遞雜湊攻擊(Pass-the-Hash),直接用管理者加密後的密碼值登入管轄的其他電腦,無需知道明文密碼。
  • 帳號接管與橫向擴散,取得管理員帳號後,可新增帳號、修改權限或擴散至整個網路。

 

四、攻擊流程

可分為以下七個階段,及下圖為利用過程的簡易流程圖。

20260620_007708_01

 

🔒 什麼是 Oplock(機會鎖定)?

Oplock(Opportunistic Lock,機會性鎖定)是 Windows 的一種檔案鎖定機制。當程式對一個檔案申請 Oplock 並成功取得後,其他人想開啟這個檔案時,必須先通知 Oplock 的持有者,並等待持有者回應之後才能繼續。這個「等待」的過程,讓攻擊者得以精確控制 Defender 的動作時機:在 Oplock 解除之前,Defender 一直卡在原地動彈不得。此程式在兩個關鍵時間點分別對不同檔案施加 Oplock,製造出兩段操作空窗。

 

#

階段

說明

1

確認 Defender 狀態,偽裝下載更新檔

1-1.程式透過 Windows Update COM 介面查詢更新歷史,確認「Microsoft Defender Antivirus – Definition Updates」存在,確保 Defender 定義檔夠新才繼續。

1-2.否則每 30 秒重試。確認後,程式透過函式偽裝成 Chrome 瀏覽器,向微軟官方位址下載真實的 Defender 簽章更新檔並解壓縮至本機。

2

投放病毒測試檔,對 Restart Manager 施加 Oplock,等待 VSS 建立

2-1.惡意程式將標準防毒測試特徵字串(EICAR,在程式碼中以倒序儲存以規避靜態偵測)寫入暫存目錄,觸發 Defender 的病毒偵測流程。

2-2.Defender 偵測到後,會透過 Restart Manager 自動建立一份 VSS 磁碟快照作為系統保護點,再繼續進行病毒清除作業。

2-3.惡意程式事先對 Restart Manager 的核心 DLL 檔案要求(request) Oplock(第一個 Oplock),當 Defender 嘗試使用該 DLL 繼續清除流程時觸發 Oplock Break,惡意程式以此確認 VSS 快照已建立完成,同時讓 Defender 的後續清除動作卡在等待狀態。

3

確認 VSS 建立完成,偽裝成雲端同步服務

3-1.Oplock Break 觸發後,惡意程式確認 VSS 監控執行緒已找到新的磁碟快照裝置,且快照中的 SAM 路徑可存取。

3-2.確認後,惡意程式將自身偽裝為 OneDrive 類型的雲端同步服務,成為特定目錄的「內容提供者」,一旦 Defender 試圖讀取這個目錄下的任何檔案,系統都會先暫停動作及通知原程式(惡意程式)。

3-3.此時,惡意程式持續持有 Restart Manager 的 Oplock,確保 Defender 的 VSS 操作仍被掌控。

4

主動命令 Defender 更新,對新定義檔施加第二個 Oplock

4-1.準備工作完成後,惡意程式透過 Windows 內部通訊管道主動命令 Defender 立即執行一次定義更新,驅動它去下載並準備載入一份新的定義檔。

4-2.惡意程式同步監控 Defender 的更新目錄,一旦偵測到新的定義檔出現,立刻對其申請第二個 Oplock,讓 Defender 的更新動作也卡在等待狀態。

4-3.此時,Defender 的兩個關鍵操作(VSS 建立、定義檔載入)均被 Oplock 阻擋,惡意程式輸出確認字串「WD is frozen and the new VSS can be used.」。

5

掉包定義檔,借 Defender 之手讀取 SAM

5-1.惡意程式將 Defender 即將載入的定義檔(mpasbase.vdm)更名移走,在原位置放入雲端佔位符(Placeholder)。

5-2.當 Defender 試圖讀取該位置時,惡意程式的 Cloud Files 回呼函式(Callback Function)被觸發,確認請求來自 Defender 服務後,推斷將 Defender 的讀取請求悄悄轉向 VSS 快照中的 SAM 密碼資料庫。

5-3.Defender 以為自己在讀定義檔,實際上讀到的是所有帳號的密碼資料。惡意程式取得後將其寫入 %TEMP% 資料夾的暫存檔案,再從中解析提取所有帳號的密碼雜湊值。

6

嘗試解密密碼並建立系統服務

6-1.取得 SAM 資料後,惡意程式嘗試解密各帳號的密碼雜湊值,並逐一強制修改帳號密碼、驗證登入。

6-2.若找到具有管理員權限的帳號,惡意程式會進一步嘗試建立一個以系統最高權限(SYSTEM)執行的 Windows 服務來重新啟動本惡意程式。

6-3.此階段能否成功,取決於惡意程式執行時的身份權限,以一般使用者身份執行時,密碼修改步驟會因權限不足而失敗;以管理員身份執行時,此階段有機會完整執行。

7

清理所有痕跡

7-1.無論前一階段是否成功,惡意程式最後都會移除偽裝的雲端同步服務身份,刪除攻擊過程中建立的所有暫存檔案與目錄,讓系統盡量回到攻擊前的狀態。

7-2.若服務建立成功並以 SYSTEM 身份重新執行,惡意程式在第二次執行時會啟用所有進階系統權限,使攻擊者完全掌控系統。

 

五、攻擊影響總結

惡意程式若成功執行,造成的影響包含:

  • 本機所有帳號密碼遭竊取,包含系統管理員帳號
  • 帳號密碼可能遭到強制修改,影響範圍視程式執行時的身份權限而定
  • 若以管理員身份執行,攻擊者可取得系統最高權限(SYSTEM),完全掌控系統
  • 攻擊者可利用竊取的憑證橫向擴散,從這台電腦出發嘗試登入其他系統
  • 整個攻擊過程借助 Windows Defender 本身完成,讓防護機制反而成為攻擊的幫兇,事發當下難以察覺
  • 攻擊完成後系統狀態被刻意回復,增加事後鑑識的困難度

 

📋一句話總結

這是一支設計精密的憑證竊取工具,它最獨特的地方在於:不需要任何特殊權限即可完成 SAM 密碼資料庫竊取,因為它將 Windows Defender 本身變成攻擊武器,讓 Defender 以最高系統權限完成讀取。

 

六、建議處理措施

微軟已在2026/4/14(二)的更新中修補,建議使用者盡速更新修補此漏洞。

  • 此次修補,微軟只單純說明為「微軟Defender權限提升漏洞」(CVE-2026-33825)。
  • 但漏洞類別、受影響組件和影響範圍完全吻合BlueHammer,資安界普遍認為此修補就是針對BlueHammer 。

 

七、POC (Proof of Concept)

使用Windows 11 Pro 25H2環境測試:

  • 編譯POC程式碼後執行,約過10~20秒顯示已將SAM相關資料儲在Temp資料夾。20260620_007708_02

 

  • 複製Temp資料夾中的SAM與SYSTEM檔案。20260620_007708_03

 

  • 使用解密工具取得NTLM hash。20260620_007708_04

 

  • NTLM hash為弱密碼,則有機會被解出明碼;無法解出明碼情況可利用Pass-the-Hash技術直接使用NTLM Hash進行身分認證。20260620_007708_05

 

八、參考資料

[1] Github:technoherder, https://github.com/technoherder/BlueHammerFix

[2] MalwareBazaar, https://bazaar.abuse.ch/sample/93008c42764b74b759678fd376abd90696f74af408600727b6649286d8424270/

[3] iThome, https://www.ithome.com.tw/news/174989

[4] Microsoft, https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-33825