Microsoft 解決了 Azure Active Directory (Azure AD) 身份驗證中的嚴重安全漏洞。 Descope 安全團隊本週披露了這個被稱為“nOAuth”的缺陷,它可能允許惡意行為者升級其權限,甚至獲得對目標帳戶的完全控制。使用電子郵件對 Azure AD OAuth 應用程序進行授權的這種錯誤配置索取訪問令牌可能會導致危險的帳戶和權限升級攻擊。用戶立即採取行動確保其帳戶安全至關重要。
帳戶接管風險
正如 Descope 團隊解釋的,該缺陷存在於 Microsoft Azure AD 多身份驗證實施中租戶 OAuth 應用程序。他們指出,惡意行為者可以操縱 Azure AD 帳戶中“聯繫信息”下的電子郵件屬性,從而獲得對返回身份 JWT 中“電子郵件”聲明的控制權。該團隊進一步闡述,如果攻擊者創建其 Azure AD 租戶並通過易受攻擊的應用程序和特製的“受害者”用戶使用“通過 Microsoft 登錄”,這可能會導致帳戶完全被接管。
Descope 發現多個大型組織容易受到此攻擊類型的攻擊,包括每月擁有數百萬用戶的設計應用程序、一家上市客戶體驗公司以及一家領先的多雲 諮詢提供商。這些組織已收到通知並獲得有關如何修改其應用程序的指導。
Azure 廣告 OAuth 的工作原理
OAuth 是 Azure Active Directory (Azure AD) 使用的授權協議。它允許用戶(通常是資源所有者)授予對其受保護資源的有限訪問權限。該協議專門設計用於超文本傳輸協議 (HTTP),它將客戶端的角色與資源所有者分開。
該過程的工作原理如下:
客戶端請求訪問由資源所有者控制並由資源服務器託管的資源。資源服務器在資源所有者的批准下頒發訪問令牌。客戶端使用訪問令牌來訪問資源服務器託管的受保護資源。
OAuth 2.0 與 OpenID Connect (OIDC) 直接相關,後者是構建在 OAuth 2.0 之上的身份驗證和授權層。但是,需要注意的是,OIDC 不向後兼容 OAuth 1.0。 Azure AD 支持所有 OAuth 2.0 流程。
nOAuth 攻擊過程
Descope 提供了 nOAuth 攻擊流程的詳細說明。他們解釋說,攻擊者可以簡單地將其 Azure AD 管理員帳戶上的電子郵件更改為受害者的電子郵件地址,並使用“通過 Microsoft 登錄”功能在易受攻擊的應用程序或網站上進行授權。Descope 警告說,如果該應用程序在未經授權的情況下合併用戶帳戶,通過驗證,攻擊者可以完全控制受害者的帳戶,即使受害者沒有 Microsoft 帳戶。
Microsoft 的響應
利用此缺陷可能使威脅參與者能夠升級權限並可能完全接管目標帳戶。Descope 團隊強調,這種錯誤配置可用於針對配置為使用電子郵件聲明的 Azure AD OAuth 應用程序的帳戶和權限升級攻擊來自訪問令牌進行授權。
針對這一發現,Microsoft 已採取措施糾正 Azure AD 身份驗證缺陷。該公司承認了該問題,並表示他們已針對 Azure AD 應用程序中使用的不安全反模式開發了緩解措施。 Descope 最初強調了此問題並向 Microsoft 報告。該公司進一步強調,使用訪問令牌中的電子郵件聲明進行授權可能會導致權限升級。
緩解問題的步驟
為了響應 nOAuth 配置,Microsoft 。該公司表示,為了保護可能容易受到權限升級影響的客戶和應用程序,他們已經部署了緩解措施,以忽略大多數應用程序未經驗證的域所有者的令牌聲明。
此外,微軟強烈建議開發人員徹底評估他們的應用程序。應用程序的授權業務邏輯並遵守這些準則以防止未經授權的訪問。他們還鼓勵開發人員在使用 Microsoft 身份平台時採用建議的令牌驗證最佳實踐。