攻擊 AI 部署
進階3 分鐘閱讀更新於 2026-03-12
AI 部署基礎設施的安全評估,包括容器逃逸、GPU 側通道、推論伺服器漏洞以及資源耗盡攻擊。
AI 部署仰賴專門的基礎設施運行——GPU 叢集、推論伺服器、容器編排——這些都引入了超出模型本身的攻擊面。基礎設施層級的入侵可能讓攻擊者取得模型權重、使用者資料以及更廣泛網路的存取權。
AI 部署架構
典型的生產級 LLM 部署:
負載平衡器 → API 閘道 → 推論伺服器(vLLM、TGI、Triton)
↓
GPU 叢集(CUDA 執行階段)
↓
模型權重(共用儲存)
↓
向量資料庫 / 快取
每個元件各自擁有其攻擊面。
推論伺服器漏洞
常見的推論伺服器(vLLM、Text Generation Inference、Triton)會暴露管理介面與處理端點:
# 常見的推論伺服器端點探測
endpoints = [
"/health", # 健康檢查 - 可能洩漏版本資訊
"/metrics", # Prometheus 指標 - 資源使用量、模型資訊
"/v1/models", # 模型清單 - 洩漏已載入模型
"/v1/completions", # 推論端點
"/admin", # 管理介面(若有暴露)
"/docs", # 自動產生的 API 文件
]
# 測試管理端點是否可未經驗證存取
for endpoint in endpoints:
response = requests.get(f"http://target:8000{endpoint}")
print(f"{endpoint}: {response.status_code}")已知攻擊模式
| 伺服器 | 漏洞類別 | 影響 |
|---|---|---|
| vLLM | 未驗證 API | 模型存取、推論濫用 |
| Triton | 模型儲存庫路徑遍歷 | 存取其他模型與權重 |
| TGI | 資源耗盡 | 服務阻斷 |
| Ollama | 預設開放連接埠 (11434) | 本地模型完整存取 |
GPU 與記憶體攻擊
GPU 記憶體洩漏
GPU 記憶體不會在請求之間自動清除。在多租戶環境中,後續的請求可能會讀取到先前使用者推論所遺留的殘留資料:
# GPU 記憶體探測概念範例
# 在共用 GPU 環境中,配置記憶體並讀取未初始化的值
import torch
# 配置一個大型張量而不初始化
probe = torch.empty(1024, 1024, device='cuda')
# probe 可能包含先前操作的殘留資料
# 包括其他使用者的嵌入向量、激活值或 KV 快取模型權重外洩
若攻擊者取得部署基礎設施的存取權,模型權重即可直接被複製:
# 容器化部署中模型權重常見的存放位置
# /models/
# /opt/ml/model/
# /root/.cache/huggingface/
# /data/models/容器安全
AI 工作負載通常以具備較高特權的容器執行,以便存取 GPU:
# GPU 工作負載中常見但不安全的容器組態
services:
inference:
image: vllm/vllm-openai
# 為了 GPU 存取使用特權模式 - 常見但危險
privileged: true
# 主機網路 - 暴露內部連接埠
network_mode: host
# 卷掛載 - 可能洩漏敏感的主機路徑
volumes:
- /data/models:/models
- /var/run/docker.sock:/var/run/docker.sockAI 工作負載特有的容器逃逸路徑:
- 特權模式(Privileged mode) — 為了存取 NVIDIA GPU 常會啟用,會授予容器完整的主機功能
- Docker socket 掛載 — 有時用於容器編排,使攻擊者能完全掌控 Docker
- 共用主機 PID 命名空間 — 為了相容 GPU 驅動程式而共用,使容器能看見主機行程
- 可寫入的模型目錄 — 若目錄可寫,攻擊者即可替換模型權重
資源耗盡
AI 推論具有高度資源密集的特性,使其成為服務阻斷攻擊的主要目標:
# GPU 記憶體耗盡
# 送出使 GPU 記憶體使用量最大化的請求
# 長輸入 + 長輸出 + 大批次大小
# 運算耗盡
# 最大化推論時間的請求
# 使注意力運算達到最大量的對抗性輸入
# 儲存耗盡
# 若系統會記錄 prompt/回應,就產生大量流量
# 若系統會快取 KV 狀態,就將快取填滿相關主題
- AI 基礎設施安全概觀 -- 更宏觀的基礎設施攻擊面脈絡
- LLM API 安全 -- 位於推論伺服器前端的 API 層
- 模型供應鏈風險 -- 在模型抵達部署環境之前便加以破壞
- 基礎設施攻擊技術 -- 進階的基礎設施攻擊手法
- Capstone:執行與報告 -- 將基礎設施發現整合進委任報告
參考資料
- NVIDIA,"Container Security for GPU Workloads" (2024) -- GPU 容器安全指引
- Tramèr et al.,"Stealing Machine Learning Models via Prediction APIs" (2016) -- 透過推論端點竊取模型
- MITRE,"ATLAS: Adversarial Threat Landscape for AI Systems" (2023) -- AI 威脅分類中的基礎設施層威脅
Knowledge Check
為什麼 AI 容器經常以較高特權部署?