攻擊者透過 Microsoft Graph API 進行大規模目錄查詢。這個 API 是微軟官方提供的管理介面,可用來存取 Microsoft 365 與 Azure 中的使用者、群組、應用程式與角色資料。
微軟觀察到攻擊者使用 自製 Python 腳本自動發送 Graph API 查詢,快速枚舉租戶中的使用者與應用程式,並依據帳號名稱或角色屬性,篩選可能具有高權限的身分。
透過這些資訊,攻擊者可以繪製出整個組織的雲端身分架構,並找出可能的升權路徑。
在取得初始帳號後,攻擊者還濫用了 Self‑Service Password Reset(SSPR) 機制。
SSPR 是 Microsoft Entra ID 提供的帳號復原功能,原本用來讓使用者在忘記密碼時自行重設。但在此事件中,攻擊者利用帳號復原流程,讓原本的入侵 轉變為更持久且穩定的存取權限。
由於 SSPR 屬於正常的帳號管理流程,其活動在系統日誌中往往與一般使用者行為難以區分,因此更難被安全系統立即發現。
完成初步偵察後,攻擊者開始利用雲端控制層(control plane)來提升權限,而不是傳統的系統漏洞利用。
主要涉及兩個機制:
攻擊者透過枚舉結果找出具有高權限的帳號或角色,並逐步取得更高層級的管理權限,進一步擴大對雲端環境的控制範圍。
當攻擊者成功取得更高權限後,就能直接操作組織的重要雲端服務。微軟指出,攻擊者曾存取以下資源類型:
這些服務通常包含 應用程式密鑰、資料庫資料、營運系統與企業核心工作負載,因此一旦被入侵,影響可能非常嚴重。
Storm‑2949 的另一個關鍵特點,是攻擊者幾乎完全使用 官方管理工具。
微軟觀察到攻擊者使用了多種 Azure 內建功能,例如:
由於這些工具原本就是系統管理員日常維運會使用的功能,因此在監控系統中,惡意操作很容易被誤判為正常管理活動。
這種「以合法工具進行攻擊(Living‑off‑the‑Land)」的策略,使得偵測與調查變得更加困難。
微軟指出,攻擊者在環境中維持存取 數天時間,並在這段期間持續進行資料外洩。
長時間未被發現,顯示攻擊活動在日誌與監控中與正常操作高度相似,也突顯雲端環境中身分濫用的隱蔽性。
Storm‑2949 反映出雲端安全的一個重要趨勢:攻擊者不再需要惡意程式也能成功入侵。
原因包括:
當攻擊完全發生在受信任服務內部時,傳統以端點或惡意程式為核心的防護工具往往難以偵測。
為了降低類似攻擊的風險,微軟建議企業加強 身分安全與雲端控制層監控。
強化身分防護
確保單一帳號被盜時,不會導致整個租戶被攻陷。
檢查 SSPR 設定
特別是高權限帳號的帳號復原流程,避免被濫用。
強制多重要素驗證(MFA)與條件式存取
降低被竊憑證的利用價值。
監控 Microsoft Graph API 活動
偵測異常的大量目錄查詢或自動化探索行為。
審核 Azure RBAC 權限
落實最小權限原則,避免不必要的高權限角色。
監控管理工具使用情況
對 VMAccess、Run Command、PowerShell 等管理工具設定異常警示。
加強關鍵資源監控
包括 Key Vault、資料庫與生產環境虛擬機。
Storm‑2949 顯示,在現代雲端架構中,身分就是最重要的攻擊面。
只要攻擊者取得一個帳號,就可能透過 API、權限系統與管理工具,在整個雲端環境中擴散,而完全不需要部署惡意軟體。
對企業安全團隊而言,這意味著防禦策略必須從傳統端點防護,擴展到 身分行為分析、API 活動監控、權限審計與雲端控制層可見性。