
ShinyHunters 借 OAuth 授權長駐 SaaS:三條入侵路線同管理員自查清單
合法整合照樣可以漏資料,三個平台都有嘢要即刻查
一個員工接到「IT 支援」電話,照指示批准一個扮 Salesforce Data Loader 嘅 app。幾下確認後,攻擊者唔使撞密碼,已經可以用員工權限讀 CRM。iThome 報道整理嘅 Microsoft 研究,話呢批手法同 ShinyHunters 常見做法重疊,冇逐宗確認全部由同一批人負責。報告亦冇點名香港機構,暫時冇證據顯示本地有公司中招。
一個 Allow,可以換來幾耐存取權
OAuth 畀第三方 app 取得指定 scope,唔使接觸員工密碼。Salesforce connected app 拎到 token 後,就可以按員工權限調 API;若果仲有 refresh token,存取可以延續到管理員撤銷或者政策截停。呢套設計本身冇失靈,Salesforce 亦冇爆出相關新漏洞。難捉嘅位係 API 活動以「已授權整合」身份出現,MFA 同一般異常登入警報未必睇得到。

圖片:Microsoft
三條路都係借現成權限行事
第一條路靠語音釣魚,攻擊者扮 IT 支援,教員工喺真正 Salesforce 流程批准假 Data Loader app,之後摸清環境同讀 CRM。第二條由供應商嗰邊開始:Microsoft 提到 Salesloft Drift、Gainsight 同 Klue 事件,第三方整合嘅憑證或 OAuth token 失守,下游客戶原本批准嘅 app 就變成資料出口。API 名稱同整合帳戶照舊,傳統登入偵測自然難捉。
三條路唔可以全部叫做 OAuth 攻擊,咁樣講得太闊。第三條甚至唔使有帳戶:Experience Cloud guest profile 設得太鬆,攻擊者就可經 Aura endpoint 同 GraphQL query 大量取資料。Salesforce 官方話呢度屬客戶設定問題,唔係平台漏洞。三種手法都沿用系統已經信任嘅身份或權限,所以冇乜爆破痕跡。
Microsoft 365:由 Enterprise apps 反查權限
管理員去 Entra 管理中心嘅 Enterprise apps,打開 All applications > Permissions,查唔識、突然多咗用家或要求高權限嘅 app,再對 audit 同 service principal sign-in log。有問題就撤銷 permission 同 refresh token;平時只准已驗證 publisher 申請低風險權限。官方步驟有齊查看同撤銷方法。
Google Workspace:睇 client ID 同 scope
管理員去 API controls > Manage App Access,按 client ID、用家數目同 OAuth scope 檢查 Accessed apps。唔認得或者唔再用嘅 app 設成 Blocked,業務必要 app 就收窄至 Specific Google data;Gmail 同 Drive 等高風險 scope 可以設成 restricted。Google 文件話清單可遲 24 至 48 小時更新,事故期間唔好當佢係唯一即時證據。
Salesforce:connected app 同訪客位一齊查
管理員喺 Setup 搜 OAuth,開 Connected Apps OAuth Usage,逐個睇 app、用家、last used 同 sessions。可疑授權先 Revoke,整個 app 都唔可信就 Block;官方文件講明,Block 會終止現有 session,亦唔畀個 app 再開新 session。有 Event Monitoring 就查 API 急升、report export 同新 IP。Experience Cloud 亦要入 All Sites 檢查 Guest User Profile,逐層收窄 object、record 同 field 權限,冇業務用途就關掉 guest public API。
改密碼之外,SaaS 授權要有退場日
一見可疑 app 或供應商報告 token 外洩,先保留 audit/event log,再撤銷授權、封鎖 app、更換 client secret 同整合帳戶憑證,跟住查個 app 讀過咩資料、邊啲下游 SaaS 共用同一組憑證。淨係改員工密碼唔夠穩陣,因為 app grant、refresh token 同第三方憑證各有自己嘅生命週期。IT 團隊今個星期可以先列出所有 app,之後定期覆核;供應商合約完結,就即時撤銷相關權限。
參考來源
- iThome — 微軟警告ShinyHunters濫用OAuth攻擊SaaS應用程式 — original report
- Microsoft:Defending SaaS-based applications against ShinyHunters OAuth abuse — 第一手攻擊研究,用嚟核對歸因強度、事件脈絡同漏洞澄清
- Microsoft Entra:Review permissions granted to enterprise applications — 核對 Microsoft 365 管理員查看同撤銷 app 權限嘅方法
- Google Workspace:Control which apps access Google Workspace data — 核對第三方 app、OAuth scope、封鎖設定同清單更新時間
- Salesforce:Manage Current OAuth Connected App Sessions — 核對 connected app session、Revoke 同 Block 嘅實際效果
- Salesforce:Secure Experience Cloud Guest User Access — 核對 Aura 風險屬過闊客戶設定,同埋 guest access 收窄方法
本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。







