Xygeni 安全術語表
軟體開發與交付安全術語表

什麼是蹲式蹲坐?

什麼是蹲式露營? 這是一次攻擊 惡意攻擊者會註冊人工智慧編碼助手臆想出的確切軟體包名稱,然後將惡意軟體載入到這些軟體包中,並等待開發者安裝它們。這並非個案。在……發表的研究中… USENIX 安全 2025, 在 576,000 個代碼樣本中,AI 編碼模型推薦的軟體包中有 19.7% 並不存在,研究人員記錄了測試模型中超過 205,000 個獨特的虛構名稱。

理解什麼是「佔屋」(以及「佔屋」在實踐中的具體表現)至關重要,因為它不僅僅是人工智慧的一個怪癖。 「佔屋」是人工智慧時代對…的繼承。 搶注但兩者之間有一個關鍵區別:拼字錯誤網域搶注依賴人的拼字錯誤,而模型錯誤網域搶注則依賴模型的重複性錯誤,這種錯誤具有足夠的規律性,使得攻擊者能夠大規模地利用它。本指南將解釋什麼是模型錯誤域名搶注,為什麼它的傳播速度比軟體包審核的速度更快,它會造成哪些風險,以及組織如何在它進入生產環境之前發現並阻止它。

邋遢地佔地意義:定義 #

「佔位註冊」的正式含義是:註冊一個大型語言模型憑空想像出來的包名(一個聽起來合情合理但實際上並不存在於任何公共註冊表中的虛構名稱),並在其中加載惡意代碼。 在真正的開發者根據人工智慧的建議安裝它之前.

這個術語將網域搶注(透過常見的拼字錯誤註冊模仿真實網域的軟體包名稱)的概念擴展到了生成式人工智慧的特定故障模式。如果說網域搶注利用的是人類的拼字錯誤,那麼拼字錯誤搶注則利用的是生成式人工智慧的拼字錯誤。 人工智慧模型的幻覺n一個編碼助手建議使用 pip install 或 npm install 安裝一個從未存在過的軟體包,而注意到同一個虛構名稱在提示中反覆出現的攻擊者會先註冊它。

從實際角度來看,「惡意佔位攻擊」(Slopsquatting)指的是:一種供應鏈攻擊,它利用模型錯誤作為攻擊手段,而除了信任人工智慧的建議之外,無需任何人為操作。這並非紙上談兵。 2023 年,一個被植入的、原本只是出於良性測試目的的惡意軟體包,在三個月內未經任何推廣的情況下,下載量就超過了 30,000 萬次,這證實了利用這種模式的惡意變種如今已存在於公共註冊表中。

懶散蹲坐與打字蹲坐:有什麼差別? #

網域搶註和網域拼字錯誤搶注的結果相同(開發者誤以為是合法程式包而安裝了惡意軟體),但錯誤的根源卻截然不同。

網域搶注依賴人的輸入錯誤:開發者本來想輸入“requests”,卻誤輸入了“requests”,而註冊了這個拼字錯誤的網域的攻擊者正伺機而動。風險就藏在開發者的一次擊鍵,一次疏忽之中。

網域搶注完全消除了人為錯誤,取而代之的是模型錯誤,這種錯誤會在每個收到類似提示的開發者身上大規模重複出現。後續分析發現,當研究人員對相同的提示重複運行十次時,43% 的虛構包名在每次運行中都會出現,58% 的包名重複出現不只一次。這種可重複性正是網域搶注可被利用的原因:攻擊者無需猜測拼字錯誤,只需觀察模型反覆出現的虛構名稱,並在真正的開發者之前將其註冊即可。

最大的差別在於規模。拼字錯誤導致的軟體包被搶注,只是等待使用者出現拼字錯誤。而粗製濫造的軟體包則需要等待同樣的AI生成推薦資訊傳遞給下一個開發者,再下一個,如此往復,最終傳遞給使用同一模型的每個組織中的其他開發者。

為什麼選擇蹲式鋪路法? #

網域搶注氾濫的原因與網域拼字錯誤搶註一樣:攻擊者利用了一種開發者預設信任的、可預測的模式。不同之處在於這種信任的規模。

人工智慧輔助編碼的興起自主代理和「直覺編碼」工作流程(開發人員在運行程式碼之前審查的程式碼越來越少)從兩個方面改變了軟體的攻擊面:

攻擊的入口不再只是開發者。網域搶注攻擊可能源自於某個人的拼字錯誤,而網域錯誤搶注攻擊則可能起源於模型內部,並傳播給數百名提出類似問題並收到相同錯誤建議的開發者,從而成倍擴大攻擊的影響範圍。

攻擊面已經進一步上移。僅僅審查人工編寫的程式碼已經遠遠不夠。團隊還需要監控 AI 助理建議的依賴項、它連接的 MCP 伺服器,以及那些無需人工直接審核即可自主安裝軟體包的代理程式。傳統的應用安全機制旨在審查程式碼庫和人工編寫的程式碼,而如今,這些威脅已經難以防範。 commits 從未被設計用來觀察開發者、人工智慧和軟體包註冊表之間的這種新的交互,而這正是惡意搶注軟體包的隱患所在。

非法佔地風險 #

非法佔用房屋會造成多方面的風險,這些風險會相互疊加,而且這種趨勢正在加速發展,而不是逐漸消失。

  • 可重複利用。 由於幻覺中出現的名字並非隨機生成,同一個假名字會在不同的會話和模型中以可預測的方式反覆出現。攻擊者無需猜測,只需觀察模型行為並記錄那些反覆出現的名字,即可將一次性的幻覺轉化為可擴展、可重複的攻擊。
  • 主動傳播。 惡意搶注不再侷限於開發者複製貼上建議的安裝指令。 2026年1月,研究人員發現,人工智慧編碼代理已經將指向一個虛構的npm包的指令傳播到237個代碼倉庫中,而且這些代理至今仍在每天嘗試安裝該包,整個過程無人幹預,無法發現錯誤。
  • 規避名稱相似性。 大約 38% 的惡意軟體包名稱與真實軟體包名稱非常相似,這降低了開發者一眼就能發現替換的機率。一個與​​受信任依賴項名稱僅相差一個字元的惡意軟體看起來並不可疑;它看起來就像你自己會犯的拼字錯誤。
  • 檢測後持續暴露。 一個取代合法 ESLint 插件的虛假軟體包,即使在註冊表將其置於安全保留狀態後,仍然每週記錄下載量,這證明標記一個被惡意佔用的軟體包並不會立即阻止其安裝。

邋遢蹲踞之處藏身之處 #

slopsquatting 最難發現的地方在於,它在發生時看起來不像是一次攻擊;它看起來像是一次正常的 pip install 或 npm install 成功完成,因為一旦攻擊者註冊了該軟體包,它就真的存在了。

非法佔地者通常透過以下途徑進入:

  • 人工智慧編碼助理和副駕駛。 漏洞就源自於最初的建議,即一個虛構的包名,它與合法且可運行的程式碼並列呈現。周圍的程式碼看起來沒有任何問題,因為通常情況下它們確實沒有問題;只有依賴項是偽造的。
  • 自主編碼代理。 無需人工審核即可安裝依賴項的代理工作流程,取消了開發人員暫停驗證名稱此檢查點,否則該檢查點可以在錯誤軟體包到達專案之前將其擷取。
  • 無需驗證步驟的軟體套件管理器。 當目標包存在且惡意時,pip install 和 npm install 都不會報錯。安裝過程正常完成,因為從套件管理器的角度來看,一切正常。

如何發現及預防蹲姿 #

防止惡意搶注程式碼並不需要特殊的工具。它需要有系統地應用現有的依賴關係管理規範,而不是在人工智慧「建議」程式碼時就放鬆這些規範。

在安裝任何新軟體包之前,請先進行驗證。尤其是人工智慧助理推薦的。務必確認它是否存在於官方註冊表中,由誰維護,發佈時間,以及下載量是否真實。

永遠不要想當然地認為人工智慧產生的程式碼預設是安全的。程式碼「能運行」並不意味著它的依賴項是合理的。依賴項審查應該是程式碼審查的一部分,而不是例外。

部署依賴項掃描,以標記超出已知 CVE 的風險模式:異常軟體包、與現有軟體包名稱可疑相似的名稱、沒有歷史記錄的新維護者或行為異常的安裝腳本。

應用 AI-SPM 作為治理層。 AI 安全態勢管理旨在大規模地捕捉此類 AI 引入的風險,不斷發現 AI 建議的依賴關係,並在人類需要手動檢查之前對其進行評分。

使用 Xygeni 防止懶散地佔用 #

單靠開發者的警戒無法阻止惡意搶注。如果依賴項建議的出現速度遠遠超出人工審核的速度,那麼「驗證每個AI推薦的軟體包」這樣的策略在整個組織內就難以奏效。

Xygeni 的 此方法將此視為一個連續檢測問題:AI 庫存和 AI BOM 表面化所有人工智慧引入的 相互依賴 SDLC為團隊提供人工智慧助理實際建議和安裝內容的即時記錄。 Xygeni Shield,由…提供支持 MEW(惡意軟體早期預警)它可以偵測並阻止惡意軟體包(包括惡意搶注的惡意軟體包),甚至在簽章出現之前就將其攔截,從而彌補了基於簽章的掃描器所留下的漏洞。

如果你的團隊正在使用 AI 代碼助手,那麼網域搶注問題已經存在。問題在於,下一個虛構的網域能否在安裝前被發現。

常見問題 #

用一句話概括什麼是「slopsquatting」(非法佔地)?

惡意搶注是一種供應鏈攻擊,惡意行為者註冊人工智慧編碼助手反覆臆想出的確切的不存在的軟體包名稱,並在開發人員根據人工智慧的建議安裝軟體包之前,將惡意軟體加載到這些軟體包中。

非法佔用倉庫會造成哪些供應鏈安全風險?

攻擊者會觀察人工智慧模型反覆出現的軟體包名稱,然後在真正的開發者之前,用惡意程式碼註冊這些名稱。由於這些名稱在不同的提示和會話中會以可預測的方式重複出現,因此,一個被惡意註冊的軟體包名稱就能影響到所有收到類似人工智慧建議的開發者,從而將一個模型缺陷轉化為針對整個用戶群的可擴展攻擊。

如何發現組織中存在的偷工減料風險?

有效的漏洞發現意味著將人工智慧建議的依賴視為一個獨立的風險類別,而不是普通開源依賴項的子集。這需要了解人工智慧編碼助理和代理實際建議和安裝的內容,並將其與註冊表資料(發布日期、維護者歷史記錄、下載模式)和基於行為的惡意軟體檢測進行交叉比對,而不是僅依賴基於特徵碼的掃描。

免費開始

免費開始使用。
不需要信用卡。

一鍵開始:

這些資訊將按照規定安全保存。 服務條款 以及 隐私政策

應用程式截圖