2026 年 6 月:雲端 AI 安全挑戰
發掘並記錄雲端部署 AI 服務中的漏洞,涵蓋 API 安全、模型服務基礎設施、認證與資料處理。
2026 年 6 月:雲端 AI 安全挑戰
稽核部署於雲端的 AI 服務的安全漏洞。本挑戰超越提示詞層級攻擊,檢視部署於雲端基礎設施上之 AI 應用的基礎設施、API、認證與資料處理。
挑戰概覽
| 項目 | 內容 |
|---|---|
| 時程 | 2026 年 6 月 1 日至 30 日 |
| 難度 | 中階 |
| 預估時間 | 6 至 10 小時 |
| 先備知識 | 基礎網頁應用安全知識、API 測試經驗、熟悉雲端部署概念 |
| 最高分數 | 100 |
情境
「AISaaS」是一個虛構的 AI 即服務平台,為企業客戶提供託管的語言模型端點。此平台提供:
- 文字生成、摘要與分類的 REST API
- 互動式模型測試的網頁操場
- 管理 API 金鑰、使用量與計費的儀表板
- 具逐客戶配置的多租戶模型服務
- 文件處理的檔案上傳端點
您已獲得一個標準客戶帳戶。您的目標是在此平台的安全態勢中橫跨多個類別尋找漏洞。
目標環境
API 端點
| 端點 | 用途 | 是否需認證 |
|---|---|---|
POST /api/v1/generate | 文字生成 | API 金鑰 |
POST /api/v1/summarize | 文件摘要 | API 金鑰 |
POST /api/v1/classify | 文字分類 | API 金鑰 |
POST /api/v1/upload | 檔案上傳以處理 | API 金鑰 |
GET /api/v1/usage | 使用量統計 | API 金鑰 |
GET /api/v1/config | 模型配置 | API 金鑰 |
POST /api/v1/config | 更新配置 | API 金鑰 |
GET /dashboard/* | 網頁儀表板 | Session cookie |
POST /auth/login | 認證 | 憑證 |
POST /auth/token | API 金鑰生成 | Session cookie |
架構
Client → API Gateway (rate limiting, auth) → Load Balancer → Model Serving Pods (GPU)
→ File Processing Workers
→ Config Service → Database
該平台於 Kubernetes 上執行,組件包含:
- 基於 NGINX 的 API gateway
- 用於 session 管理與快取的 Redis
- 用於使用者資料、配置與計費的 PostgreSQL
- 用於上傳檔案的 S3 相容物件儲存
- 執行 vLLM 進行模型服務的 GPU 節點
目標
類別 1:API 安全(25 分)
1.1 認證繞過(10 分)
找出方法在沒有有效認證下存取 API 端點,或將您的 API 金鑰提權至您的帳戶不應擁有的能力。
- 檢視 API 金鑰如何被驗證、session 如何管理,以及是否有任何未認證端點會暴露敏感資料。
- 測試常見 API 漏洞:中斷的物件層級授權(BOLA)、中斷的功能層級授權、mass assignment。
1.2 速率限制繞過(8 分)
您的帳戶速率限制為每分鐘 100 次請求。找出超過此限制的方法。
- 思考速率限制器如何識別客戶端。是基於 API 金鑰、IP 位址或其他?您能否操弄該識別?
- 尋找未受速率限制的端點或會影響速率限制行為的 headers。
1.3 輸入驗證缺陷(7 分)
在 API 中找出輸入驗證漏洞。這可能包括:
- 透過檔案上傳或 URL 處理端點的伺服器端請求偽造(SSRF)
- 透過檔案處理的路徑遍歷
- 透過模型配置參數的注入
- 超大輸入處理
類別 2:多租戶隔離(25 分)
2.1 跨租戶資料存取(15 分)
存取屬於平台其他客戶的資料。這可能是:
- 另一客戶的生成輸出(快取的回應)
- 另一客戶的模型配置
- 另一客戶的上傳文件
- 另一客戶的使用量資料或 API 金鑰
2.2 配置外洩(10 分)
萃取不應為客戶可存取的系統層級配置:
- 模型服務參數(GPU 配置、批次大小、模型版本)
- 基礎設施細節(內部主機名、服務端點、環境變數)
- 其他客戶帳戶 metadata
類別 3:模型服務安全(25 分)
3.1 模型端點濫用(10 分)
找出濫用模型服務基礎設施超越正常用途的方法:
- 使模型洩露其服務配置的提示詞注入
- 造成不成比例資源消耗(阻斷服務)的請求
- 觸發錯誤訊息以揭露內部資訊的輸入
3.2 推論資料外洩(8 分)
判斷模型服務基礎設施是否跨請求洩露資訊:
- 模型的 KV cache 是否保留先前請求(由其他使用者發出)的資訊?
- 錯誤訊息或時間差異是否揭露有關模型或其他使用者輸入的資訊?
- 共享相同 GPU 節點的租戶之間是否有任何交叉污染?
3.3 檔案處理漏洞(7 分)
利用檔案上傳與處理管線:
- 上傳觸發易損解析函式庫的檔案
- 嘗試透過檔名或封存內容進行路徑遍歷
- 測試透過文件格式的 XML 外部實體(XXE)注入
- 上傳造成過度資源消耗的檔案
類別 4:資料處理(25 分)
4.1 日誌與監控漏洞(10 分)
找出平台安全日誌的漏洞:
- 失敗的認證嘗試是否被記錄?
- 存取控制違規是否被偵測並記錄?
- 您能執行本應被監控但未被監控的動作嗎?
- 您能竄改或規避稽核日誌嗎?
4.2 資料保留問題(8 分)
調查平台如何處理資料生命週期:
- 被刪除的檔案是否真的從儲存中移除?
- 快取的回應是否在使用者 session 結束後仍存續?
- 上傳的資料在處理時是否正確隔離?
- 您能存取本應被清除的資料嗎?
4.3 祕密暴露(7 分)
在平台中找出暴露的祕密:
- 用戶端程式碼、錯誤訊息或 HTTP headers 中的 API 金鑰或 token
- 資料庫憑證或內部服務 token
- 留在生產環境中的除錯端點或開發工件
- 透過 HTTP 回應 headers 或錯誤頁的資訊揭露
工具與方法
建議工具
- Burp Suite 或 OWASP ZAP 用於攔截與操弄 HTTP 請求
- curl 或 httpie 用於 API 測試
- nmap 或類似工具 用於服務列舉(僅對挑戰目標)
- jq 用於解析 JSON 回應
- Python requests 函式庫 用於撰寫自動化測試腳本
方法論
採結構化方法:
- 偵察。 描繪 API 表面、辨識所有端點,並理解認證模型。
- 認證測試。 測試認證繞過、session 管理問題與金鑰處理缺陷。
- 授權測試。 對每個端點測試水平與垂直的權限提升。
- 輸入驗證。 對輸入 fuzz 測試注入、溢位與遍歷漏洞。
- 業務邏輯。 測試計費、使用量追蹤與配置管理中的邏輯缺陷。
- 基礎設施。 尋找誤配置、暴露的服務與資訊揭露。
計分
| 目標 | 分數 | 所需證據 |
|---|---|---|
| 1.1 認證繞過 | 10 | 未授權存取的展示 |
| 1.2 速率限制繞過 | 8 | 超過速率限制的證明 |
| 1.3 輸入驗證 | 7 | 漏洞細節與概念驗證 |
| 2.1 跨租戶存取 | 15 | 其他租戶資料的證據 |
| 2.2 配置外洩 | 10 | 萃取的配置細節 |
| 3.1 模型端點濫用 | 10 | 濫用的展示 |
| 3.2 推論外洩 | 8 | 跨請求外洩的證據 |
| 3.3 檔案處理 | 7 | 概念驗證利用 |
| 4.1 日誌漏洞 | 10 | 監控漏洞的文件 |
| 4.2 資料保留 | 8 | 資料生命週期問題的證據 |
| 4.3 祕密暴露 | 7 | 任何發現的祕密 |
加分(最高 10 分)
- 遵循業界標準格式(CVSS 計分、清晰的修復指引)的完整漏洞報告
- 發現挑戰設計者未預期的漏洞
- 展示結合多個漏洞的攻擊鏈
提交格式
提交結構化的漏洞報告:
# Cloud AI Security Assessment - June 2026
## Executive Summary
[Brief overview of findings and risk assessment]
## Findings
### Finding 1: [Title]
- **Severity:** Critical/High/Medium/Low
- **Category:** [API Security/Multi-Tenant/Model Serving/Data Handling]
- **CVSS Score:** [if applicable]
#### Description
[What the vulnerability is]
#### Proof of Concept
[Step-by-step reproduction with exact requests/responses]
#### Impact
[What an attacker could achieve]
#### Remediation
[Specific fix recommendations]關鍵概念
雲端 AI 與傳統雲端安全
雲端 AI 服務與傳統網頁應用共享許多漏洞,但也有獨特的攻擊面:
- 模型服務基礎設施 引入 GPU 特有的問題,包括共享記憶體、跨租戶的批次處理,以及 KV cache 管理。
- 推論 API 必須處理同時針對應用層與模型層的對抗性輸入。
- 訓練與微調的資料管線 建立額外的資料投毒與外洩面。
- 以 token 使用量計費的成本模型 建立經濟性阻斷服務的機會。
AI 安全堆疊
本挑戰涵蓋 AI 部署的完整堆疊:
| 層級 | 傳統安全 | AI 特有考量 |
|---|---|---|
| 網路 | 防火牆、分段 | GPU 叢集通訊 |
| 應用 | 認證、授權、輸入驗證 | 提示詞注入、模型濫用 |
| 資料 | 加密、存取控制 | 訓練資料、嵌入、模型權重 |
| 執行時 | 容器安全、編排 | 模型服務、推論最佳化 |
| 監控 | 日誌、告警 | 提示詞日誌、輸出監控 |
方法提示
從被動偵察開始
在送出任何利用載荷前,徹底描繪攻擊面:
- 透過文件與探測未記載端點,列舉所有 API 端點及其參數
- 檢視 HTTP 回應 headers 以取得技術指紋(伺服器軟體、框架版本、安全 headers)
- 檢查揭露內部結構的用戶端原始碼、JavaScript 檔案或 API 文件
- 尋找會揭露堆疊追蹤、檔案路徑或配置細節的錯誤訊息
被動偵察零成本,但會揭露您否則會錯過的攻擊面。
依攻擊面組織,而非依技巧
很誘人的做法是走過一份技巧清單(SQL 注入、XSS、SSRF)並逐一嘗試。更有效的方法是依攻擊面組織:
- 認證面。 身分如何確立?測試所有認證機制。
- 授權面。 權限如何執行?對每個端點測試水平與垂直的權限提升。
- 輸入處理面。 系統接受哪些輸入?測試每個輸入的注入、溢位與格式混淆。
- 資料邊界面。 資料在何處跨越信任邊界?測試每個邊界的外洩。
- 模型互動面。 使用者輸入在何處到達模型?測試提示詞注入與模型特定攻擊。
這種方法確保完整涵蓋,因為它對應系統的結構,而非您工具包的組織方式。
記錄一切
雲端安全評估會產生大量證據。若沒有有組織的文件,您會:
- 忘記您測試過哪些端點以及結果是什麼
- 浪費時間重測已經檢查過的東西
- 產出一份凌亂、難以追蹤的報告
從一開始就使用結構化的筆記系統。對您測試的每個端點,記錄:請求、回應、您的詮釋,以及是否值得進一步調查。
像營運者那樣思考
許多雲端 AI 安全問題不是傳統漏洞,而是營運上的誤配置:
- 從未變更的預設憑證
- 留在生產環境啟用狀態的除錯端點
- 在開發期間授予且從未收緊的過於寬鬆 IAM 角色
- 安全相關事件未被擷取的日誌漏洞
- 儲存在環境變數而非祕密管理器中的祕密
這些問題透過系統性檢查很容易找到,但若您只尋找傳統利用則很容易遺漏。
延伸閱讀
- 雲端 AI 安全 —— 本挑戰的基礎概念
- 基礎設施與供應鏈 —— 基礎設施安全基礎
- LLMOps 安全 —— AI 系統的營運安全
- 2026 年 7 月挑戰 —— 下一個挑戰