按一下「允許」,
那個 AI 小工具就拿到鑰匙了
為什麼現在很紅:OAuth 不需要員工交出密碼,看起來很安全;但它交出去的,是一把可以代表員工存取資料的鑰匙。
- 一句話結論
- AI 小工具多半靠 OAuth 進公司:員工按一下「允許」,工具就能代表他讀行事曆、雲端檔案甚至信箱。
- 他要的是什麼
- 他不用偷密碼。一個拿到整個雲端硬碟讀取權、資安做得馬虎的小工具,就是現成的資料出口。
- 你今天做一件事
- 今天就匯出第三方應用授權清單,依權限大小排序,先看能讀信和讀檔案的那幾個。 直接去做 →
- 哪些能信
- 3 可證明2 推論1 缺口 每個主張都標了等級,缺口是誠實寫出來的。
- 破口速查
- 受害端一律去識別化;寫「未公開」代表公開資料查不到。
- 伺服器服務商
- 不適用(示意情境;涉及的是第三方 AI 工具與身分平台授權,不是自家主機)
- 網路服務商
- 不適用(同上)
- 漏洞出現的地方
- 身分平台的使用者同意設定:員工可自行用公司帳號授權第三方應用讀取行事曆、雲端檔案或信箱;授權不經採購、不在任何清單上,離職或不用後也不一定消失,廠商的資料使用條款沒人讀過
- 馬上自我檢測
Google Workspace 管理控制台 → 安全性 → API 控制項 → 第三方應用程式存取權,匯出清單 Microsoft Entra 管理中心 → 企業應用程式 → 權限,分別檢視「系統管理員同意」與「使用者同意」分頁 依權限大小排序,標出能讀信、讀雲端檔案、寄信的應用 對照人事名單,標出已離職者的授權- 漏洞修補方式
- 依權限大小排序處理,逐一找使用者確認是否還用;先撤銷已離職者與沒人認領的授權(Entra 使用者同意的權限要用 Graph API 或 PowerShell,並從同意設定限制以免使用者再同意);限制使用者自行授權、改由管理員審核;公告可用 AI 工具清單並讀過資料使用條款;每季重查
有 15 分鐘再看:其餘 2 點
- 權限常比需要的大,授權不會自己消失,小型工具的資安水準參差不齊,而且不經採購、不在任何清單上。
- 先用身分平台內建清單匯出授權、依權限大小處理、撤銷離職者與沒人認領的,再改成先核准再使用、每季重查。
「使用 Google 帳號登入」,跳出權限畫面,按「允許」,不到五秒。AI 會議記錄、簡報產生器、信件助理,大多就是這樣進到公司裡的:沒有採購單、沒有 IT 工單,也沒人記得是誰按的。這篇講怎麼把這些 OAuth 授權找出來、收回來,再改成先核准再使用。
本篇目錄
五秒鐘的「允許」,半年後才被看到
假設有一家二十五人的顧問公司。專案經理 D 用公司帳號授權了一個 AI 會議助理,權限畫面寫著「讀取行事曆」「存取雲端檔案」。好用,他又推薦給三個同事。整個過程不到五秒:沒有採購單、沒有 IT 工單,也沒人記得是誰先按的。
先說清楚,這是示意情境,不是真實事件,公司與人物都是為了說明而設。半年後準備 ISO 27001,顧問問:「有哪些第三方應用能存取公司雲端檔案?」IT 打開管理後台,才第一次看到這個助理:四個人授權過,其中一人已經離職。至於廠商把資料存在哪、會不會拿去訓練模型,沒人讀過它的條款。
這篇要講的只有一件事:OAuth 不交密碼,但交出了鑰匙。
一把代表員工的鑰匙,風險在哪裡
第一個問題是權限比需要的大。為了一個會議記錄功能,授權了整個信箱或雲端硬碟。
第二個問題是授權不會自己消失。不用了、甚至離職了,授權可能還在,要看平台的設計。
第三個問題是第三方本身就是風險。小型 AI 工具的資安與合規水準參差不齊,資料放在哪、留多久、拿去做什麼,都寫在多數人沒讀過的條款裡。
最後是不經採購。它不會出現在任何清單上,直到有人去身分平台翻授權紀錄。
這個示意情境裡,交出去的是哪把鑰匙
這是示意情境,沒有實際外洩;下表列的是這類 AI 工具授權最常拿到的存取權,憑證本身存在廠商那一側,公司這邊只看得到授權紀錄。
| 服務 | 憑證類型 | 用途 | 存在形式 | 放在哪 | 權限範圍 | 狀態 |
|---|---|---|---|---|---|---|
| AI 會議助理(以 Google 帳號授權) | OAuth 存取權杖與更新權杖(access/refresh token) | 讀取行事曆、存取雲端檔案以產生會議記錄 | 存在第三方廠商服務端 | 身分平台的第三方應用程式授權清單;四個帳號授權過 | 依權限畫面:行事曆讀取、雲端檔案存取 | 示意情境;未撤銷前持續有效 |
| 同一應用:已離職同事的授權 | OAuth 權杖 | 同上 | 存在第三方廠商服務端 | 同上;授權人已離職 | 同上 | 示意情境;帳號停用後授權是否仍有效、期間有沒有被使用,未知 |
兩列的鑰匙都不在公司手上,公司能做的是把授權撤銷,並限制下一次怎麼給。
能證明的、只能推論的
這篇是觀點文,情境是虛構的示意,情境裡的任何紀錄都不能當證據;能證明的只有 sources 裡官方文件可以核對的功能,情境中的狀態一律算推論。
不花錢就能做的流程
到這裡,其實已經足夠理解問題在哪。如果你想直接動手,可以跳到「今天就可以來試試」;下面六步是完整流程,第三步有兩個容易踩的坑。
第一步,匯出授權清單。 Google Workspace 管理控制台查看哪些第三方應用能存取 Workspace 資料;Microsoft Entra 管理中心查看企業應用程式的權限,兩個同意分頁都要看。
第二步,依權限大小排序處理。 能讀信、讀雲端檔案、寄信的應用排在最前面。每一個都要找到使用者,問清楚:還在用嗎?有沒有替代品?
第三步,撤銷。 已離職者的授權、沒人認領的授權,先撤銷。注意 Entra 使用者同意的權限要走 Graph API 或 PowerShell;撤完之後如果不從同意設定限制,使用者再按一次「允許」,授權就回來了。
第四步,改成「先核准再使用」。 兩個平台都可以限制使用者自行授權第三方應用(Entra 有使用者同意設定,Google 可以控管應用存取),改由管理員審核。
第五步,給一條合法的路。 公告「可用 AI 工具清單」和申請方式,評估時至少讀一次資料使用條款。
第六步,每季重查。 授權清單每季匯出一次,比對上一季多了什麼。
什麼時候不需要買工具
公司只用 Google Workspace 或 Microsoft 365 其中一個平台、人數在百人以內的話,平台內建的授權清單加每季檢查,已經能涵蓋大部分 OAuth 風險。
真的要看工具,大致分三類。身分平台內建:上面提到的 Google Workspace、Microsoft Entra 功能。雲端存取安全類:Microsoft Defender for Cloud Apps 分析流量日誌找出影子 IT,前提與授權如上。商用 SaaS 管理平台:例如 1Password SaaS Manager(官網說可以標出應用的存取風險、撤銷有風險的 OAuth token,並對新發現的應用發警報)、Torii(官網列出持續發現 SaaS 應用)。
限制也要一起看:這類平台看得到的,主要是透過有串接的身分平台所做的授權;員工用私人帳號註冊的工具,仍然看不到。選的時候看三件事:平台數量(只有一個身分平台先用內建,多平台並存時彙整工具才有價值)、AI 工具的使用強度(變化快的團隊,持續發現和警報比較有用)、審核人力(改成先核准再使用之後,要有人能在合理時間內審完,否則員工會改用私人帳號)。
這篇提到的項目要花多少錢
原文沒有給出 AI 工具或管理平台的牌價,表裡照實標成估算或未公開。
| 項目 | 用量 | 單價 | 期間 | US$ | NT$ | 舉證 |
|---|---|---|---|---|---|---|
| 匯出並排序第三方授權清單 估 | IT 一人 | 估 1–2 小時 | 一次性 | — | — | 本站依六步流程估算 |
| 找使用者確認、撤銷授權 估 | IT 一人 | 估 每個應用 15 分鐘 | 一次性 | — | — | 本站估算 |
| 每季重查 估 | IT 一人 | 估 1 小時/季 | 每季 | — | — | 本站估算 |
| Google Workspace/Microsoft Entra 授權清單與同意設定 | 既有訂閱內建 | 不另收費 | — | 0.00 | 0 | 官方文件,連結在 sources |
| Defender for Cloud Apps | 需另外確認授權 | 本文未查價 | 依授權 | — | — | 官方文件提及授權需另確認,價格未列 |
| 資料若被廠商保存或使用的影響 | 示意情境 | 無法估計 | — | — | — | 條款未讀、廠商未詢問 |
| 合計(僅可證明列) | 0.00 | 0 | ||||
撤銷一個授權只要幾分鐘;不知道的是,在你撤銷之前,那把鑰匙開過幾次門。
你可以學到什麼
站在攻擊者那一側看,OAuth 授權是不必偷密碼的捷徑。他可以做一個看起來很好用的小工具,等員工自己按「允許」;也可以去打一家資安做得馬虎的小廠商,一次拿到很多公司的雲端檔案讀取權。兩條路都不會經過你的密碼和兩步驟驗證。
- 01OAuth 授權不需要交出密碼,但交出的是一把能代表員工存取資料的鑰匙,權限常比功能需要的大。
- 02授權不會因為不用或離職就自動消失,要從身分平台的授權清單主動找出來撤銷。
- 03Entra 裡使用者同意的權限要用 Graph API 或 PowerShell 撤銷,而且要同時限制同意設定,否則使用者再按一次就回來了。
- 04依權限大小排序處理,能讀信、讀檔案、寄信的應用先處理,並讀過資料使用條款再決定去留。
- 05改成先核准再使用之後,要公告可用工具清單並有人及時審核,否則員工會改用私人帳號繞過去。
- 01OAuth 同意畫面(Consent Screen)這篇的主角:五秒鐘的「允許」,就把資料存取權交給第三方。
- 02OAuth scope(權限範圍)決定那把鑰匙能開哪些門,排序處理時就看它。
- 03使用者同意(User Consent)員工自己就能授權的設定,是 AI 工具不經採購進公司的入口。
- 04系統管理員同意(Admin Consent)改成先核准再使用後,授權要經過的那一關。
- 05refresh token讓第三方在使用者不在場時持續取得存取權,撤銷之前一直有效。
- 06Google Workspace 第三方應用程式存取權Workspace 公司最快看到「哪些應用碰得到公司資料」的地方。
- 07Microsoft Graph API撤銷 Entra 使用者同意權限的途徑之一,入口網站做不到的事要靠它。
- 08影子 AIAI 工具推出與試用最快,是授權清單上最容易冒出新面孔的一類。
- 09資料使用條款資料存哪、留多久、會不會拿去訓練,只能從條款和廠商回覆確認。
- 10第三方風險(Third-party Risk)小型工具的資安水準參差不齊,它出事,你的資料就跟著出事。
全部唯讀,不改任何設定;做完你會知道自己有沒有同樣的破口。
- Google Workspace 管理控制台 → 安全性 → API 控制項 → 第三方應用程式存取權,檢視清單(唯讀)看到什麼代表什麼:每個列出的應用都拿過公司資料的存取權;有你沒聽過的名字,就是這篇的情境。
- Microsoft 365 公司:Entra 管理中心 → 企業應用程式 → 權限,分別看「系統管理員同意」與「使用者同意」分頁(唯讀)看到什麼代表什麼:使用者同意分頁越長,代表越多工具是員工自己放進來的。
- 把清單依權限大小排序,標出能讀信、讀雲端檔案或寄信的應用,存成「oauth-grants-h3k.csv」留著下季比對(不用指令)看到什麼代表什麼:這幾個就是第一批要找使用者確認、必要時撤銷的對象。
- 對照人事名單,找出已離職者授權過的應用(唯讀)看到什麼代表什麼:有任何一筆,代表離職流程少了撤銷授權這一步。
- 檢視身分平台目前是否允許使用者自行同意第三方應用(唯讀,不改設定)看到什麼代表什麼:允許的話,今天撤銷的授權明天可能就回來,要排進改成先核准再使用的計畫。
揭露:本文未受任何廠商贊助,提及的產品僅為舉例。
環境背景、時間線、攻擊鏈對照 ATT&CK、關鍵證據、根因、處置與檢討都在完整版,約 7 分鐘。
來源
- Google Workspace:控管哪些第三方應用程式可存取 Workspace 資料
- Microsoft Entra:檢閱並管理企業應用程式的權限
- Microsoft Defender for Cloud Apps:設定 Cloud Discovery
- Torii(SaaS 管理平台)
本文為公開報導與官方公告的整理與拆解,非第一手鑑識;證據等級依來源可信度標註。
本文由 AI 團隊協助研究與撰寫,經隱私與事實檢查後發布;證據等級依來源可信度標註。
複製下面這段,貼給你在用的 AI 工具(Claude Code、Cursor、Copilot、ChatGPT 都可以)。它會用本篇的破口位置、自我檢測與學習重點,對你的專案或環境做一次資安掃描,列出潛在問題與建議的調整或加強方式。
預設是唯讀:只發現問題、提出建議,不會改你任何檔案或設定。
M2 身分與金鑰 · 想在自己的環境做一次同樣的盤點,從 自我盤點 開始。
每篇新文章一封:三點摘要、關鍵字定義、今天能做的一件事。或先 加入會員 記錄你完成的任務。