3200+ Cursor 用戶被惡意「劫持」!貪圖「便宜API」卻慘遭收割, AI 開發者們要小心了

整理 | 華衛

近日,有網絡安全研究人員標記出三個惡意的 npm(Node.js 包管理器)軟件包,這些軟件包的攻擊目標是一款頗受歡迎的由 AI 驅動的源代碼編輯器 Cursor,且針對的是蘋果 macOS 版本用戶。 迄今為止,這三個軟件包的下載量總共已超過 3200 次。

軟件供應鏈安全公司 Socket 的研究人員 Kirill Boychenko 表示:「這些軟件包偽裝成提供‘最便宜的 Cursor API’的開發者工具,竊取用戶憑據,從由威脅行為者控制的基礎設施中獲取有效加密負載,覆蓋 Cursor 的 main.js 文件,並禁用自動更新以保持其持續性。」

Cursor 用戶被「劫持」全過程

有問題的軟件包如下所列:sw-cur (2,771 次下載)、sw-cur1 (307 次下載) 和 aiide-cur (163 下載)。值得注意的是,目前這三個軟件包仍可以繼續從 npm 註冊表下載。

其中,「aiide-cur 」於今年 2 月 14 日首次發佈,是由一個名為「aiide」的用戶上傳的,其 npm 庫被描述為「用於配置 macOS 版本的光標編輯器的命令行工具」。另外兩個軟件包則是由一名化名為 「gtr2018」 的惡意行為者提前一天發佈的。

在被安裝後,這些軟件包旨在獲取用戶提供的 Cursor 憑據並從遠程服務器 (「t.sw2031[.]com「或」api.aiide[.]xyz「),然後用於用惡意邏輯替換特定於 Cursor 的合法代碼。

對這三個軟件包的代碼片段進行處理和註釋之後,Socket 發現它們共有一個核心後門邏輯:只有硬編碼的域名,以及(就 sw‑cur1 和 aiide‑cur 而言)最後的調用有所不同;而憑據竊取、加密加載器檢索、解密例程以及文件補丁序列在其他方面都是相同的。

據 Socket 稱,一旦這些庫被安裝,它們就會被設計用來竊取用戶提供的 Cursor 憑據,並從遠程服務器(「t.sw2031[.]com」 或 「api.aiide[.]xyz」)獲取下一階段的有效載荷,然後用惡意邏輯替換合法的 Cursor 特定代碼。並且,sw-cur 還進一步採取了禁用 Cursor 的自動更新機制並終止所有 Cursor 進程的步驟。然後這些 npm 軟件包會繼續重啟應用程序,以便被篡改的代碼生效,從而允許惡意行為者能夠在該平台的環境中執行任意代碼。

惡意軟件包的執行流程圖惡意軟件包的執行流程圖

此攻擊專門針對 Cursor 在 macOS 系統上的安裝,方法是修改 /Applications/Cursor.app/… 路徑下的諸如 main.js 之類的內部文件,利用該編輯器可信賴的運行時環境來執行由惡意行為者控制的代碼,並持續運行。

「這三個軟件包的設計表明,攻擊者蓄意利用開發者的工作流程以及 IDE 的信任邊界,以獲取長期的訪問權限和控制權。這是對開發者信任的代碼編寫工具的攻擊。」Socket 建議,所有懷疑已遭受攻擊的機構從經過驗證的安裝程序中重新安裝 Cursor,更換所有受影響的憑據,並對源代碼控制和構建工件進行審核,以查找未經授權的更改跡象。

「最便宜 API」為誘餌,或招來更大損失

「這類攻擊活動凸顯了日益增長的供應鏈威脅,惡意行為者越來越多地使用惡意補丁來攻擊受信任的本地軟件。」Boychenko 表示。而這類攻擊活動能被成功實施的「賣點」在於,攻擊者試圖利用開發人員對 AI 的興趣,以及部分人群想要避免支付 Cursor AI 使用費用、尋找更廉價訪問 AI 模型方式的心理。

作為一款以 AI 為核心的 IDE,Cursor 提供了對諸如 Claude、Gemini 和 GPT-4 等大型語言模型的分級訪問權限,高級模型的調用是按次收費的(如 OpenAI 的最新推理模型 o3 每次調用收費 0.3 美元)。雖然用戶可以使用自己的 API 密鑰,但一些用戶可能會尋求更便宜或非官方的集成方式來降低成本。

「惡意行為者使用‘最便宜的 Cursor API’這樣的標語,很可能就是針對這一群體,用減價訪問的承諾引誘用戶,同時悄然部署後門程序。」Boychenko 補充道。

對於個人用戶,受感染的 IDE 會帶來憑據被盜、代碼泄露和可能傳遞其他惡意軟件的直接風險。一旦惡意行為者獲得其 Cursor 憑據,他們就可以訪問付費服務,更關鍵的是,可以訪問受害者在 IDE 中打開的任何代碼庫。由於注入的代碼以用戶的權限運行,因此它可以在不被發現的情況下執行進一步的惡意腳本或提取敏感數據。

在企業環境或開源項目中帶來的風險則成倍增加。開發人員計算機上的特洛伊木馬 IDE 可能會泄露專有源代碼,在構建中引入惡意依賴項,或作為 CI/CD 管道內橫向移動的立足點。由於惡意補丁禁用了 Cursor 的自動更新機制,因此它可以長時間保持活動狀態。

但也有網民表示,「這隻是凸顯了我們所有人都面臨的供應鏈風險。目前,它們針對的是那些願意下載 ‘最便宜 API’ 的蠢貨。但從理論上講,沒人能阻止有人將惡意代碼打包到特定發行版的 vi/vim/gvim 軟件包中。  」

惡意軟件包「橫行」

Socket 的這些發現表明了一種新興趨勢,即惡意行為者正利用流氓 npm 軟件包,作為對開發人員系統上已安裝的其他合法庫或軟件進行惡意修改的一種方式。而這亟待解決,因為其允許惡意軟件在惡意庫被刪除後繼續存在,從而增加了一層新的複雜性,要求開發人員必須重新乾淨俐落地安裝被篡改的軟件。

Socket 進一步解釋道:「基於補丁的入侵是針對開源軟件供應鏈的惡意行為者武器庫中的一種新的強大手段:攻擊者沒有(或額外)將惡意軟件混入軟件包管理器,而是發佈一個看似無害的 npm 軟件包,重寫受害者計算機上已被信任的代碼。通過在合法的父進程(IDE 或共享庫)內作,惡意邏輯繼承了應用程序的信任,即使在有問題的軟件包被刪除後仍能持續存在,並自動獲得該軟件擁有的任何權限,從 API 令牌和簽名密鑰到對外網絡訪問權限。」

為了應對此類新型供應鏈威脅,防禦者需要標記那些運行安裝後腳本、修改 node_modules 之外文件,或發起意外網絡調用的軟件包,並將這些標記與嚴格的版本固定、實時依賴項掃瞄以及對關鍵依賴項的文件完整性監控相結合。

在披露有關 Cursor 的這一情況同時,Socket 還發現了另外兩個惡意 npm 軟件包:「pumptoolforvolumeandcomment」 和 「debugdogs」,據介紹,它們會傳遞經過混淆處理的有效載荷,進而竊取加密貨幣密鑰、錢包文件,以及與名為 BullX 的加密貨幣平台相關的交易數據且攻擊目標是 macOS 系統。這些被捕獲的數據會被泄露到一個 Telegram 機器人上。

這兩個軟件包在 2024 年 9 月被一個名為 「olumideyo」 的用戶發佈,到目前為止,「pumptoolforvolumeandcomment」 已被下載了 625 次,「debugdogs」 總共被下載了 119 次。

「‘debugdogs’ 只是調用了‘pumptoolforvolumeandcomment’,使其成為了一種便捷的二次感染有效載荷。這種‘包裝器’模式強化了主要攻擊手段,使得惡意代碼無需更改核心惡意代碼,就能以多個名稱輕易傳播。」安全研究員 Kush Pandya 表示,「這種高度針對性的攻擊可以在幾秒鍾內清空錢包並暴露敏感憑證和交易數據。」

參考鏈接:

https://socket.dev/blog/malicious-npm-packages-hijack-cursor-editor-on-macos

https://thehackernews.com/2025/05/malicious-npm-packages-infect-3200.html

聲明:本文為 AI 前線整理,不代表平台觀點,未經許可禁止轉載