本文探討 AI 程式設計助理如何因幻覺而生成出一些看似合理但實際上卻不存在的套件名稱,進而衍生能讓駭客預先設下陷阱的「slopsquatting」攻擊。此外,本文也提供一些企業可用來保護開發流程的實務策略。
主要重點
- Slopsquatting 是現代化 AI 驅動軟體開發流程的一項供應鏈威脅,起因於 AI 程式設計代理因為幻覺而生成一些看似合理但實際上卻不存在的套件名稱,使得駭客有機會預先設下陷阱來散播惡意程式。
- 儘管進階程式設計代理與工作流程,如:Claude Code CLI、OpenAI Codex CLI 以及 Cursor AI 搭配 MCP 作後端驗證,有助於降低幽靈相依元件 (phantom dependencies) 的風險,但仍無法徹底根除,因為就算即時驗證也無法捕捉每一種邊緣案例。
- 常見的失敗情況包括:填補情境漏洞與模仿表面形式,也就是 AI 代理根據使用者的意圖與符合統計的慣例而捏造出看似合理的套件名稱,卻沒有確實檢查套件名稱是否真的存在。
- 防範這類威脅需要從多重管道下手,結合最佳實務原則 (例如透過軟體物料清單來追蹤源頭)、自動化漏洞掃描、在沙盒模擬環境內測試安裝、即時驗證套件,以及人員監督,如此才能真正保護 AI 驅動的開發流程。
想像一下這樣的情境:您的開發時程相當緊迫,但您擁有一套可靠的 AI 程式設計助理來自動幫您完成函式撰寫、推薦可用相依元件,甚至幫您即時呼叫 pip 安裝指令。您正深深沉醉在所謂的「氛圍程式設計」(vibe coding) 開發流程當中,在 AI 的協助下,您的點子幾乎豪不費力就變成了程式碼,感覺就好像在變魔術一樣,直到一切突然停止運作。
在研究過程當中,我們曾看到一個進階 AI 代理自豪地無中生有了一個看似完全合理的套件名稱,但隨後卻在程式實際組建時發生「找不到模組」的窘境。然而更令人擔憂的是,這些幽靈套件說不定已經存在於 PyPI 當中,因為某個駭客已經註冊了這些套件名稱,等著開發人員上鉤,自己將惡意程式碼帶入工作流程當中。

對 AI 開發人員來說,這些暫時性的錯誤不單只是造成不便而已,而是一種新式供應鏈攻擊的機會之窗。當 AI 代理幻想出不存在的相依元件或安裝未經檢查的套件時,就等於為slopsquatting 創造了機會,因為駭客會在公開登錄上預先註冊這些幻想出來的名稱。
本文探討這些幻覺是如何出現在進階 AI 代理當中,並說明其潛在的影響,提供企業一些維護開發流程安全以防範類似威脅的行動建議。