一種新式攻擊手法 Cookie-Bite,可利用瀏覽器外掛程式從 Azure Entra ID 竊取連線 cookies,繞過多因素驗證 (multifactor authentication, MFA) 防護,而且保持長期存取 Microsoft 365 、 Outlook 和 Teams 等雲端服務。
這是由 Varonis 安全研究團隊發展出的概念驗證手法,他們設計了一個合法及惡意 Chrome 外掛程式來繞過 Azure 的 MFA 。
雖然竊取 cookies 不是新手法,但本手法卻使用機巧手法竊取到 cookies 資訊。
Cookie-Bite 攻擊手法是以惡意 Chrome 瀏覽器外掛為工具,鎖定 Azure Entra ID 中以下 2 種用於 Azure Entra ID 的 cookies:ESTSAUTH 和 ESTSAUTHPERSISTENT 。 ESTSAUTH 是指示用戶已經驗證、完成 MFA 的 session cookie,但效期僅 24 小時,等 App 關閉就會失效。 EATSAUTHPERSISTENT 則是持久版的 session cookie,它是用戶選擇「保持登入」或 Azure 應用 KMSI 政策時產生,可持續 90 天。
Varonis 的惡意 Chrome 外掛包含監控受害者登入活動的機制,會聽取符合 Azure 登入 URL 的訊號。一旦碰上了,就會讀取目標為 login.microsoftonline.com 的 cookies,運用過濾器擷取前述兩種 cookies,再取得 cookie JSON 資料,利用 Google Form 傳送給攻擊者。
取得這些 cookie,駭客就可以利用 Cookie-Editor 等合法 Chrome 外掛工具,將 cookies 注入攻擊者自己的瀏覽器。等到刷新網頁後,Azure 會視攻擊者連線為經驗證的連線,就能繞過 MFA 進入微軟服務,如 Microsoft 365 、 Teams 等,使攻擊者獲得等同受害者的存取權限。
此時攻擊者可利用 Graph Explorer 來列舉出使用者、角色和裝置,或傳送、讀取 Teams 訊息,也能從 Web 版 Outlook 讀取、下載郵件。他們甚至可以利用一些工具如 TokenSmith 、 ROADtools 和 AADInternals 等進行權限提升、橫向移動和非授權 App 註冊。
如果駭客能存取到受害裝置,就可以部署 PowerShell script,可利用 Windows 任務排程工具自動化將未簽發的外掛,在 Chrome 每次以開發人員模式啟動時重新注入。
雖然本方法是為竊取微軟連線 cookies 而設計,但也可以用來鎖定其他服務,包括 Google 、 Okta 和 AWS 的 cookies 。
研究人員並說,將該惡意外掛包成 CRX 檔上傳到 VirusTotal,顯示沒有一家安全廠商能偵測出它是惡意程式。
要防範攻擊,企業管理員應小心監控任何異常的登入。此外,最好能設定條件式存取政策 (conditional access policies, CAP) 以限制特定 IP 和裝置登入雲端。
至於 Chrome 外掛,管理員最好能執行 Chrome ADMX 政策,只允許事前許可的外掛執行,而且應完全封鎖以瀏覽器開發人員模式登入的使用者。
