CodeQL 開始偵測 system prompt injection:把 AI 安全變成 CI 資料流問題

Tech

CodeQL 2.26.0 讓使用者輸入、系統指令與工具描述之間的信任邊界可以在 CI 中檢查。

CodeQL 2.26.0 讓使用者輸入、系統指令與工具描述之間的信任邊界可以在 CI 中檢查。
靜態分析只是一層。執行時讀取的網頁、郵件與 RAG 內容需要 adversarial eval;工具呼叫仍須依靠伺服器端授權、租戶隔離與核准。

發生了什麼

GitHub 於 2026 年 7 月 10 日發布 CodeQL 2.26.0。新查詢 `js/system-prompt-injection` 會追蹤不可信值流向 system prompt 與工具描述的路徑。

為何重要

查詢涵蓋 OpenAI、Anthropic 與 Google GenAI SDK 的多種 API。建議把自由文字降到 user message 或結構化參數,必要的動態指令值則用固定 allowlist 限制。

社群訊號

靜態分析只是一層。執行時讀取的網頁、郵件與 RAG 內容需要 adversarial eval;工具呼叫仍須依靠伺服器端授權、租戶隔離與核准。

對開發與維運的影響

先用 audit mode 盤點既有問題,再把新增高可信路徑設為 PR gate,並在模型、SDK、prompt 或工具變更後重新執行。

本週檢查清單

更新 CodeQL bundle。

把自由文字移到 user message 或結構化 tool parameter。

在伺服器端實施最小權限、租戶範圍與核准。

風險與反方觀點

先用 audit mode 盤點既有問題,再把新增高可信路徑設為 PR gate,並在模型、SDK、prompt 或工具變更後重新執行。

來源