雲端 AI 鑑識:Azure
Azure AI 服務的鑑識調查技術,包含 Azure OpenAI、Azure ML、Cognitive Services 的診斷日誌與證據蒐集。
概觀
Azure 為 AI/ML 工作負載提供一組服務:Azure OpenAI(GPT、DALL-E、Whisper)、Azure ML(訓練、部署、流水線)、Cognitive Services(視覺、語言、語音)、AI Search(以前的 Cognitive Search)、Azure AI Studio(基礎模型、agents)。每個服務都有其日誌與稽核機制;Azure AI 鑑識的挑戰在於建立跨服務的統一觀察性。
Azure AI 工作負載通常透過 Azure Active Directory(Entra ID)整合、使用 Managed Identity 做服務對服務認證、透過 Private Endpoints 存取,並與 Microsoft Purview 做資料治理。事件回應橫跨身分層(Entra ID 登入)、服務層(診斷設定)、網路層(NSG Flow Logs)與應用層(自訂應用遙測)。
Azure AI 服務的日誌
診斷設定(Diagnostic Settings)
大多數 Azure AI 服務透過「診斷設定」發射日誌與指標。每個資源可設定將日誌路由到:
- Log Analytics Workspace:KQL 查詢、Sentinel 整合、長期保留
- Storage Account:長期歸檔,低成本
- Event Hub:串流至 SIEM 或下游分析
- Partner Solutions:Splunk、Datadog、Elastic 等
對 AI 鑑識,建議所有關鍵 AI 資源同時路由至 Log Analytics(即時)與 Storage(歸檔)。
Azure OpenAI 日誌
Azure OpenAI 發射以下日誌類別:
- AzureOpenAIRequestResponseLogs:完整請求/回應載荷(需開啟 content logging,否則預設不含內容)
- AzureDiagnostics:API 呼叫、錯誤碼、延遲
- AllMetrics:符元消耗、節流、端點利用率
- Audit Events(透過 Azure Activity Log):模型部署、金鑰輪替、RBAC 變更
隱私考量:Content Logging 可捕捉完整提示詞與回應,但會引入敏感資料風險。組織應:
- 僅在調查事件時期開啟
- 應用資料遮罩或 Purview DLP 政策
- 對 Log Analytics Workspace 啟用客戶管理金鑰(CMK)
Azure ML 日誌
Azure ML 記錄:
- AmlComputeClusterEvent:運算叢集生命週期事件
- AmlComputeClusterNodeEvent:節點加入/離開、spot 中斷
- AmlComputeJobEvent:訓練作業啟動、完成、失敗
- AmlComputeInstanceEvent:計算實例(筆記本)事件
- AmlDataLabelEvent:資料標記作業
- AmlOnlineEndpointConsoleLog / AmlOnlineEndpointTrafficLog:推論端點日誌
Cognitive Services 日誌
統一的 Cognitive Services 日誌:
- RequestResponse:所有 API 呼叫的標頭、時間戳、狀態碼
- Audit:管理操作
- Trace:錯誤的詳細堆疊追蹤
Entra ID(Azure AD)日誌
對認證相關事件:
- SignInLogs:互動式登入、非互動式、服務主體、managed identity
- AuditLogs:目錄變更(應用程式註冊、權限同意)
- RiskyUsers / RiskDetections:身分保護訊號
以 KQL 進行鑑識查詢
所有日誌在 Log Analytics 中以 KQL 查詢。範例:
- 查詢特定主體在時間視窗內的 Azure OpenAI 呼叫
- 關聯 SignInLogs 中的異常登入地點與 AzureOpenAIRequestResponseLogs
- 計算每個 Azure OpenAI 部署的符元使用異常
- 識別於短時間內建立或修改 Azure ML 模型的高頻序列
AzureAIForensicsQueries 類別封裝常見 KQL 查詢範本,如 query_azure_openai_access(deployment_name, start, end)、query_aml_workspace_changes(workspace_name, start, end) 等。
Microsoft Sentinel 整合
Microsoft Sentinel 是 Azure 原生 SIEM/SOAR,對 AI 事件鑑識有關鍵整合:
- Analytics Rules:預建與自訂偵測規則(如 Azure OpenAI 異常使用)
- Hunting Queries:主動威脅獵捕的 KQL 範本
- Workbooks:AI 活動視覺化儀表板
- Playbooks:以 Azure Logic Apps 構建的自動化回應
- Entity Behavior Analytics (UEBA):使用者與實體行為基準
建議為 AI 相關資源建立專用 Workbook,聚合:符元消耗趨勢、最活躍使用者、異常錯誤率、跨部署的模型使用比較。
調查常見 Azure AI 事件
Azure OpenAI 金鑰妥協
指標:來自未預期 IP 範圍的呼叫、突然的符元消耗尖峰、於非營運時間的活動。
調查步驟:
- 從 Azure OpenAI 資源的診斷設定確認 Content Logging 是否啟用;若否,僅能取得元資料
- 查詢 AzureDiagnostics 依時間視窗限縮活動
- 檢查 Activity Log 尋找金鑰輪替或防火牆規則變更
- 關聯 Entra ID SignInLogs 以識別管理主體的可疑登入
- 透過 Key Vault 稽核日誌追蹤金鑰讀取歷史
Azure ML Workspace 橫向移動
指標:意外的 datastore 附加、異常的計算實例配置、從不常用身分提交的訓練作業。
調查步驟:
- 審視 AmlComputeJobEvent 以識別未授權作業
- 檢查 Workspace 的 Role Assignments 與最近變更
- 從 storage account 擷取相關 datastore 的稽核日誌
- 檢視計算實例的 OS 層級日誌(若已送至 Log Analytics Agent)
- 追蹤模型輸出成品的去向:是否被複製到外部 storage?
Cognitive Services 濫用(OCR/視覺)用於資料 scraping
指標:高頻影像 POST 至 Computer Vision / OCR 端點、固定大小的檔案(指出自動化爬取)、ROI 模式。
調查步驟:
- 從 Cognitive Services RequestResponse 日誌擷取呼叫模式
- 配合 Application Insights 或 APIM 日誌識別呼叫來源
- 若使用 Managed Identity,檢查識別的生命週期與繫結
- 評估速率限制與配額設定是否被修改
自動化鑑識工作流程
Logic Apps 劇本
將 Sentinel 告警觸發 Logic Apps Playbook:
- 偵測到可疑 Azure OpenAI 活動 → 自動暫停金鑰、隔離網路存取、通知 SOC
- 偵測到診斷設定被停用 → 立即告警並重新啟用
- 偵測到 AI 資源 RBAC 大規模變更 → 建立事件工單並快照 IAM 狀態
PowerShell 與 Azure CLI 鑑識工具
# Capture Azure OpenAI deployment state
az cognitiveservices account deployment list --resource-group <rg> --name <account>
# Export activity log for time window
az monitor activity-log list --resource-id <id> --start-time <start> --end-time <end>
# Enumerate role assignments
az role assignment list --scope <resource-id>上述命令分別擷取 Azure OpenAI 部署狀態、時間視窗內的 Activity Log,以及資源範圍的 RBAC 指派。
Defender for Cloud 整合
Microsoft Defender for Cloud 為 AI 工作負載提供:
- AI Workload Protection:偵測異常 Azure OpenAI 存取模式、疑似提示詞注入
- Regulatory Compliance:對應 EU AI Act、NIST AI RMF 等框架的合規儀表板
- Secure Score:AI 資源安全配置評分
- 威脅情資:Microsoft 安全社群的 AI 威脅情資摘要
跨租戶與合規考量
- 對高風險 AI 資源啟用 Customer Lockbox,要求微軟支援存取前需客戶核准
- 使用 Private Endpoints(Azure Private Link)避免公開網際網路曝露
- 將日誌路由至 Immutable Storage 以防竄改
- 配合 Microsoft Purview 進行資料分類、訓練資料族譜追蹤
參考資料
- Microsoft. (2024). Azure OpenAI Service diagnostic settings. https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/monitor-openai
- Microsoft. (2024). Microsoft Sentinel content for Azure OpenAI. https://learn.microsoft.com/en-us/azure/sentinel/
- Microsoft. (2024). Azure Machine Learning diagnostic logs. https://learn.microsoft.com/en-us/azure/machine-learning/
- Microsoft. (2024). Defender for Cloud AI workload protection. https://learn.microsoft.com/en-us/azure/defender-for-cloud/