Sonatype Guide - AI 寫的程式碼誰來把關依賴安全
27%。
這是 LLM 在推薦套件時「幻覺」的比例——每四個套件推薦裡,有一個可能根本不存在、已經被棄用,或者含有已知漏洞。
你可能會想:「有那麼嚴重嗎?跑個 npm install 失敗我就知道了啊。」問題不在不存在的套件——那種最好處理,裝不了就算了。真正危險的是那些「名字很像真的」的套件,裝得下去、跑得起來,但背後是 typosquatting 或已被 compromise 的版本。
Sonatype Guide 要解決的就是這件事:在 AI coding assistant 推薦任何依賴的當下,即時檢查這個推薦是否安全。
為什麼現有流程不夠
傳統的依賴安全檢查長這樣:寫完 code → commit → CI 跑 SAST/SCA → 發現問題 → 修。整個循環可能是幾小時到幾天。
但 AI coding agent 改變了時間軸。一個 Claude Code session 可能在 20 分鐘內生成 15 個檔案,引入 30 個新依賴。等 CI 跑完才發現問題,你已經在那個有問題的依賴上搭了三層邏輯了。拆的成本比一開始就攔住高十倍。
這個時間差就是 Sonatype Guide 要填的位置——不是取代 CI 裡的掃描,是在源頭把最明顯的問題先擋下來。
MCP Server 架構:怎麼做到「即時」
Sonatype Guide 的技術核心是一個 MCP Server。
如果你不熟 MCP(Model Context Protocol),可以把它想成一條高速公路的收費站。AI coding assistant 是車子,要去下載套件這個目的地。MCP Server 是收費站——車子經過的時候,它檢查你的車況、行照,確認沒問題才放行。整個過程對車子來說感覺不到延遲,但背後已經做完安全檢查了。
具體流程是這樣:
你在 Claude Code 裡說「幫我加一個 CSV parsing 的 library」。Claude 推薦了一個套件名稱。在 Claude 把推薦回傳給你之前,MCP Server 已經做了幾件事:查 Sonatype 的資料庫確認這個套件是否存在、版本是否最新、是否有已知 CVE、是否被標記為 malicious。如果有問題,Claude 會收到一個「這個不行,推薦其他的」的訊號。
整個攔截在毫秒等級完成,你幾乎感覺不到。
支援的工具和整合方式
這是 Sonatype Guide 最實用的部分——它不挑工具。
目前支援的 AI coding assistant 包括:Claude Code、Cursor、GitHub Copilot(VSCode 版)、Windsurf、JetBrains Junie、Kiro、Google Gemini Code Assist、OpenAI Codex(IDE Plugin 和 CLI 都支援)。
整合方式也很直覺。以 Claude Code 為例,你在 settings.json 裡加一個 MCP server 設定就好。不需要改工作流,不需要額外的 CLI 工具,不需要在 CI pipeline 加步驟。設定完就是背景跑著。
1 | { |
對,就這樣。一行指令的事。
實際效果和數字
Sonatype 自己的數據:使用 Guide 的企業,安全程式碼生成效率提升了三倍,安全修復和依賴升級的總成本降低超過五倍。
這些數字要打個折看——vendor 的自報數據都要打折。但即使打了五折,「安全修復成本降低 2.5 倍」在任何規模的團隊裡都是值得關注的數字。因為依賴升級的成本不只是找到問題的時間,是找到問題之後把上層所有依賴這個套件的邏輯都改掉的時間。越晚發現,成本指數級成長。
另一個值得注意的數字:LLM 幻覺套件的 27% 是 Sonatype 自己的研究數據。他們分析了主流 LLM 在程式碼生成任務中推薦的套件名稱,發現超過四分之一是無效的。這裡面包括完全虛構的名稱、已下架的套件、以及名稱高度相似但實際是惡意套件的 typosquatting 案例。
它不做什麼
講清楚邊界很重要。
Sonatype Guide 不做程式碼品質檢查。它不會告訴你這段 code 寫得好不好、有沒有 anti-pattern、效能怎麼樣。它專注在一件事:你用的套件安不安全。
它也不做 runtime 監控。部署之後的行為分析不是它的領域。它是 development time 的工具,在你寫 code 的當下保護你,不是在 production 保護你。
最後,它不是銀子彈。即使攔住了所有已知的有問題依賴,zero-day 漏洞、新發現的供應鏈攻擊還是可能穿過去。Sonatype Guide 降低的是「已知風險」的暴露面,不是消除所有風險。
什麼時候該用、什麼時候不用
用的場景很明確:你的團隊已經在用 AI coding assistant,而且 AI 生成的 code 比例越來越高。開發者可能一天引入幾十個新依賴,人工逐一檢查不現實。這時候一個背景跑的即時護欄,投入產出比非常好。
不用的場景:你的專案依賴很少且穩定,大部分是手寫 code,AI 輔助比例低。這種情況下 CI 裡的 SCA 掃描已經夠用,多一層 MCP Server 帶來的額外複雜度不值得。
還有一個中間地帶:個人 side project。理論上 Guide 的免費版就夠用,但如果你的 side project 不上 production、不處理用戶資料,依賴安全的優先級本來就低。省下設定的時間可能更有價值。
背後真正在變的事情是:AI coding tool 的生態系正在長出自己的安全層。
過去,「寫程式」和「確保安全」是兩個獨立的流程,由不同的工具、不同的團隊、在不同的時間點處理。AI coding agent 把寫程式的速度拉高了一個量級,但安全檢查還停在舊節奏上。Sonatype Guide 是第一批試著把安全檢查嵌進 AI 輔助流程本身的工具。
這個方向對不對?幾乎確定是對的。誰最後做得最好?還太早說。但工具的位置很清楚——坐在 AI 和開發者之間,當一個即時的品質關卡。
兩條線:AI 讓寫 code 變快,安全讓快不會變成災難。Sonatype Guide 是在這兩條線交會的地方放了一個 checkpoint。
原文來源:Sonatype Launches Guide to Enhance Safety in AI-Assisted Code Generation - InfoQ
原文來源:Sonatype Guide | AI Dependency Management & Intelligence









