AI 安全提示詞注入Agent SkillsClaude CodeAI 一人公司OWASP

AI 技能包也是注入入口:954 個熱門技能的掃描結果,和買 AI 系統前的第八個問題

· 12 分鐘閱讀
目錄
  1. 什麼是技能,為什麼它是入口
  2. 論文量到什麼
  3. 最值得記住的一句
  4. 微軟:模型不是安全邊界
  5. 對應到 OWASP
  6. 買 AI 一人公司系統前的第八個問題
  7. 拿第八問對我們自己
  8. 能做的事
  9. 資料來源

先講結論:你裝進 AI 助理的技能包,本身就可能是注入的入口。一篇 2026 年 9 月的論文掃了 954 個熱門技能,自動工具標記了大約一成七,拿其中 5 個實際去打,30 次嘗試裡 13 次得手。這對正在買「AI 一人公司系統」的人特別重要,因為那些系統賣的就是一大包技能。

先揭露立場:論文拿來比較的掃描器之一是 NVIDIA 的 SkillSpector,我們有兩筆 PR 合併進那個專案。我們自己也做提示詞防禦掃描。下面的數字全部照論文與官方文件原文,限定條件一起寫。

什麼是技能,為什麼它是入口

技能是一包可以重複使用的指令、腳本與設定。裝進 Claude Code 這類 AI 程式助理之後,它就多會一件事:整理發票、寫週報、審合約。

問題在於技能同時是指令程式碼。Anthropic 的官方文件講得很直接:技能透過指令與程式碼給 Claude 新能力,所以惡意技能可以讓 Claude 以不符合技能宣稱用途的方式呼叫工具或執行程式碼。

還有一句更要緊:在 Claude Code 裡,技能的網路權限跟你電腦上任何程式一樣。透過 API 跑的技能則在沒有網路的沙盒裡。同一個技能,裝在本機跟跑在雲端,能碰到的東西完全不同。

論文量到什麼

《SkillSecurer》,都靈理工大學(Politecnico di Torino)五位作者,2026 年 9 月 12 日提交到 arXiv。

他們做了一個兩邊對打的系統:紅方把九種注入塞進技能並記錄改了哪裡,藍方分析整包技能、找出問題並提出修補。然後拿去掃真實世界。

項目 論文原始數字 要加的限定
真實樣本 skills.sh 2026 年 7 月 3 日快照中,最熱門且有第三方掃描紀錄的 954 個技能 skills.sh 是 Vercel 的技能目錄
被標記 168 個(17.6%),共 289 項發現 這是工具標記的比例,不是確認的比例
人工複核 三位審查者看 100 項發現,多數確認 84 項 作者判斷是潛在漏洞,不是刻意埋的注入
實際攻擊 挑 5 個技能,30 次模型與技能組合裡 13 次得手 5 個技能身分保密,等協調揭露
修補後重打 同 5 個技能,30 次裡剩 3 次得手 只量這 5 個技能
修補建議審查 75 項確認發現的修補建議,65 項被評為有效(86.7%) 另一個母體,論文沒說包不包含那 5 個
偵測率 在 345 個受控樣本上 100% 只在受控樣本、而且後端用 Claude Sonnet 5 時成立

實際攻擊的方式很平常:把惡意內容放進技能本來就會讀的外部輸入,例如工單、程式碼合併請求、網頁。技能照常工作,讀到那段內容,就被帶走了。

論文列的五種實測攻擊機制,每一種都不需要什麼高深技巧:把已登入的瀏覽器工作階段開成沒有驗證的代理、把網頁內容直接丟進終端機執行、執行別人送來的合併請求裡的程式碼、請求參數沒跳脫就塞進指令、把登入憑證轉給第三方。

最值得記住的一句

all models recognise the risks in Skills B and C, yet some still execute the corresponding attack.

所有模型都認出了其中兩個技能的風險,但還是有模型照做。

認得出危險,不等於不會照做。 這跟微軟同期公開的結論是同一件事。

微軟:模型不是安全邊界

微軟在 2026 年 5 月的安全部落格公開了自家 agent 框架 Semantic Kernel 的兩個漏洞:

漏洞 分數 發生了什麼 修補版本
CVE-2026-25592 9.9(GitHub 評分) 一個下載檔案的函式不小心被標成模型可以呼叫的工具,而且沒有路徑檢查 .NET 版 1.71.0;GitHub 安全通報也列了 Python 版,1.39.3 修補
CVE-2026-26030 9.9(GitHub 評分) 向量資料庫的篩選功能把模型給的參數直接當程式執行 Python 版 1.39.4

微軟示範的攻擊鏈只要兩句注入:先叫 agent 在隔離容器裡產生惡意腳本,再叫它用那個下載工具把腳本寫到主機的開機啟動資料夾。下次登入,整台主機就淪陷了。

微軟自己的結論原句:

your LLM is not a security boundary. The tools you expose define your attacker's affected scope.

模型不是安全邊界。你開放給它的工具,決定了攻擊者能碰到的範圍。

同一類問題在程式編輯器也出現過:CVE-2026-22708,Cursor 在自動執行模式下,某些終端機內建指令不在允許清單上也能執行,攻擊者可以透過注入改環境變數,影響本來被信任的指令。2.3 版修補。這個漏洞的分數兩邊差很多:NIST 評 9.8,GitHub 評 7.2,引用時要說是誰評的。

三個漏洞都已修補,公開資料沒有在野利用的紀錄。

對應到 OWASP

OWASP 2025 年 12 月發布的 Agentic 應用十大風險,這篇講的東西落在四格:ASI01 代理目標劫持、ASI03 身分與權限濫用、ASI04 代理供應鏈漏洞、ASI05 非預期的程式碼執行。論文的發現裡,數量最多的就是 ASI05(96 項)和 ASI01(84 項)。

買 AI 一人公司系統前的第八個問題

我們前幾天寫過買 AI 一人公司系統前該問的七個問題。那些系統的本體,就是裝進你 Claude Code 或 Codex 的一大包技能、規則與腳本,跑在你有完整網路權限的電腦上。

所以要加第八問:這包技能能碰到什麼?

拆成五個子問題:

  1. 每個技能是誰寫的?有沒有來源可以追?
  2. 會不會連網?連去哪裡?
  3. 會不會去外部網址或工單、信件抓內容,再交給模型讀?(論文的攻擊全部走這條路)
  4. 會不會執行腳本?腳本裡有沒有把外部內容直接塞進終端機?
  5. 有沒有被掃描過?用什麼工具、結果給不給看?

Anthropic 的官方建議是只用自己寫的或 Anthropic 提供的技能;外來技能要把每個檔案都看過,特別留意不預期的網路呼叫與檔案存取。企業版可以對上傳的自訂技能開內容掃描,但官方也寫明,透過 API 或 Console 上傳的技能不在掃描範圍。

拿第八問對我們自己

我們賣的手冊附一個工具包。照上面五題查了一次:

  • 沒有 SKILL.md,工具包是腳本、hook 與範本,不是技能。
  • 有四支會連網:兩支把警報送到你自己設定的 Telegram bot;一支用 curl 抓你自己指定的網址來比對內容;一支開無頭瀏覽器到你指定的網址,照你給的欄位填表並按送出。最後這支會真的送出資料,只該對自己的測試環境跑。
  • 沒有任何一支把抓回來的內容交給模型當指令。抓網頁和開瀏覽器那兩支,都只是拿頁面找成功或失敗的字串。
  • 另外有兩支是 hook。它們不會自己裝上去,要你寫進專案的 .claude/settings.json;接上之後,每次 Claude Code 收工都會自動執行,用的是你本機的權限。這幾點購買頁原本沒寫清楚,寫這篇時已經補上權限說明。
  • 沒有經過第三方掃描。這一格我們沒做到。

能做的事

  • 用技能之前,先看它會讀哪些外部輸入。會讀網頁、工單、信件的技能,等於把陌生人的文字接進你的助理。
  • 能在沙盒或 API 跑的,就不要放在有完整網路權限的本機跑。
  • 把「模型自己會判斷」從防線清單裡拿掉。論文和微軟都說明了,它認得出來也可能照做。
  • 如果你在做會收使用者輸入的 AI 應用,UltraProbe 的提示詞防禦掃描可以幫你看系統提示有沒有基本防線;它檢查的是你的應用,不是你裝的技能包。

資料來源

  • Mecca、Verna、Bouchari、Jha、Mellia,SkillSecurer,arXiv 2609.14079,2026-09-12
  • Microsoft Security Blog,When prompts become shells,2026-05-07
  • NVD:CVE-2026-25592、CVE-2026-26030、CVE-2026-22708;GitHub 安全通報 GHSA-2ww3-72rp-wpp4
  • Anthropic,Agent Skills 官方文件,Security considerations 一節
  • OWASP,Top 10 for Agentic Applications,2025-12-09

常見問題

AI agent 的技能(skill)是什麼?

一包可以重複使用的指令、腳本與設定,裝進 Claude Code 這類 AI 程式助理後,讓它多會一件事。Anthropic 的官方文件寫明技能透過指令與程式碼給 Claude 新能力,所以惡意技能可以讓 Claude 以不符合技能宣稱用途的方式呼叫工具或執行程式碼。

熱門技能真的有 17% 有漏洞嗎?

要加限定。論文掃了 954 個熱門技能,工具標記了 168 個,比例 17.6%。人工只抽查了其中 100 項發現,三位審查者多數確認 84 項,而且判斷是潛在漏洞,不是有人刻意埋的注入。所以準確的說法是:自動工具標記約一成七,抽查確認率約八成四。

模型看得出危險就不會中招嗎?

不一定。論文拿 5 個有潛在漏洞的技能實際攻擊,30 次模型與技能的組合裡有 13 次攻擊成功;作者特別寫到,所有模型都認出其中兩個技能的風險,但仍有模型照做。修補後降到 30 次裡 3 次。

用 Claude Code 裝技能要注意什麼?

Anthropic 官方建議只用自己寫的或 Anthropic 提供的技能,外來技能要逐檔審查。官方文件也寫明,在 Claude Code 裡技能的網路權限跟你電腦上任何程式一樣;透過 API 跑的技能則在沒有網路的沙盒裡。技能若會去外部網址抓內容,風險特別高,因為抓回來的內容可能夾帶指令。

買 AI 一人公司系統要多問什麼?

問技能包的來源與權限:每個技能是誰寫的、會不會連網、會不會去外部網址抓內容再交給模型、會不會執行腳本、有沒有被掃描過。這些系統本質上就是一大包技能,裝在你有完整網路權限的電腦上。

每週 AI 自動化實戰筆記

不廢話,只有能直接用的東西。Prompt 模板、自動化 SOP、技術拆解。

加入一人公司實驗室

免費資源包、每日建造日誌、可以對話的 AI Agent。一群用 AI 武裝自己的獨立開發者社群。

想自己動手試試?

UltraProbe 免費、免註冊,掃一次網站就知道 Google 與 AI 找不找得到你。