首波AI代理記憶體供應鏈攻擊現蹤 npm與PyPI平台遭蠕蟲入侵

商傳媒/[email protected] (商傳媒 SUN MEDIA)
9 小時前
圖/本報資料庫

商傳媒|林昭衡/綜合外電報導

全球軟體套件管理平台 npm(Node 套件管理器)和 Python軟體包索引(PyPI)近日遭遇首例鎖定人工智慧代理(AI Agent)記憶體基礎設施的供應鏈蠕蟲攻擊。惡意軟體 sckit 透過感染 AI 開發工具,竊取開發者的敏感憑證,凸顯 AI 軟體供應鏈安全問題日益嚴峻。

根據外媒報導,這次攻擊始於 2026 年 9 月 23 日世界協調時間(UTC)凌晨 2 時 23 分至 5 時 55 分之間。惡意版本的 MemTensor 公司開發的開源記憶體框架 MemOS 出現在 npm 和 PyPI 平台。MemOS 是一款專為大型語言模型(LLM)和 AI Agent 設計的記憶體框架,擁有約 11,500 個 GitHub 星標。攻擊者透過維護者 leason1974 的 GitHub 帳戶直接提交惡意程式碼至 MemTensor 的 GitHub 儲存庫。

攻擊者似乎在 npm 上透過在正常版本之間插入惡意版本(例如 @memtensor/memos-cloud-openclaw-plugin 的 0.1.21、0.1.23 和 0.1.25 版)來測試酬載最佳化。Python 的受影響版本則是 MemoryOS 2.0.34。這次攻擊的酬載是名為 sckit 的跨平台 Go 語言憑證竊取程式。這種供應鏈蠕蟲(Supply-Chain Worm)透過感染軟體元件,再傳播到使用這些元件的其他系統。

sckit 並未利用傳統的 postinstall 鉤子,而是整合到既有的 AI Agent 功能中。在 npm 環境,sckit.js 會從一個隱藏的 .sckit/ 目錄啟動 Go 執行檔,並在 OpenClaw 代理程式啟動和記憶體回調(memory-recall)觸發時執行。每次記憶體回調都會將使用者目前的提示文字透過 SCKIT_EVENT_TEXT 環境變數傳遞給 sckit,這會導致敏感資料外洩。在 Python 環境中,酬載則透過 memos/log.py 內的 configure_logging() 和 memos._stage0.trigger() 函式觸發。

sckit 執行檔會從多達 13 個類別中竊取憑證,包括 npm tokens、PyPI tokens、GitHub 及 GitLab 的個人存取令牌、AWS 存取金鑰、Hugging Face tokens、HashiCorp Vault tokens、Slack tokens、Stripe live keys、SendGrid keys、SSH keys,以及符合秘密模式的通用 JWTs 和環境變數。所有被竊取的資料都會被傳輸到位於 skyleen[.]fr 及其子網域的命令與控制(command-and-control)基礎設施。

安全專家指出,AI Agent 堆疊之所以成為供應鏈攻擊的良好目標,原因包括憑證密度高、AI 專案依賴關係的威脅模型化程度不足,以及提示中包含敏感資料。儘管目前尚未觀察到蠕蟲的下游傳播,但 sckit 執行檔內含 recursivePublish 等函式,並嵌入 GitHub Actions 範本,表明其設計意圖是竊取發布令牌並進一步傳播。

為應對此威脅,防禦者應將 npm 版本固定在 0.1.20,PyPI 版本固定在 2.0.33,或直接移除受影響的套件。此外,應輪換所有受影響環境中可存取的憑證、封鎖 skyleen[.]fr 及其子網域,並檢查 lockfiles、requirements*.txt、poetry.lock 和 SBOMs 以確認有無受影響的套件名稱。