大語言模型隨口編出的軟件包名稱,正在被攻擊者注冊成真正的惡意程序。當開發者用GPT-4這類助手寫代碼時,助手偶爾會“幻覺”出一個看起來很合理的第三方庫,攻擊者只需提前占坑,就能把后門送到生產環境。
這種攻擊叫“slopsquatting”——利用模型生成虛假但似真的依賴名,再將其植入公開倉庫。攻擊邏輯很直接:模型產生幻覺名→攻擊者注冊幻名包→開發者或被AI工具自動引入這個包→惡意代碼注入項目。整個過程沒有復雜的漏洞利用,只靠對AI輸出習慣的預判。
![]()
掃描這種威脅的思路也相對明確:對每個依賴項檢查它在公開倉庫中是否存在。如果倉庫里找不到對應的注冊信息,就標記為潛在風險。核心代碼不過幾十行——用Python封裝一個檢查函數,查詢倉庫接口,再將項目里的全部依賴輪詢一遍。提到的例子中,掃描邏輯把“example-package”“fake-package”這類名字送進registry.api校驗,返回200就算存在,否則打上安全警告。
攻擊者要完成一次slopsquatting,前面需要走通三步:看準模型高頻幻想的包名風格;實時監控并搶注對應的空包;讓被污染的包進入實際構建鏈。只要開發者或AI工具不核對倉庫注冊情況,惡意依賴就會溜進項目。而且這種攻擊不需要竊取憑證,也不依賴任何零日,本質上是對自動化信任的濫用。
防御要從依賴驗證流程入手。每次引入一個新包,先通過公開倉庫接口做存在性檢查;自動化掃描管線里加入對“未被注冊依賴”的阻斷;定期回掃已有依賴,防止攻擊者事后注冊。文中給出的腳本思路就是把校驗動作前置,不等構建失敗才發現問題。
slopsquatting之所以值得關注,是因為它把AI模型的隨機輸出變成了穩定的攻擊面。哪怕模型只是偶爾“胡編”,只要攻擊者押中一次,影響就能沿供應鏈擴散。與其指望模型不再幻覺,不如在工程側補上驗證這一環。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.