
GitHub 逾 7,600 個假專庫偽裝 AI 工具,累計逾 1,400 萬次下載,FakeGit 惡意軟件曝光
網絡安全公司 Island 的研究人員近日揭露一個仍在進行中的大型惡意軟件散播行動,命名為「FakeGit」。該行動在 GitHub 上建立了接近 7,600 個虛假專庫(repository),當中超過 800 個偽裝成 AI 技能或 Model Context Protocol(MCP)伺服器,目的是向開發者電腦植入名為 SmartLoader 的惡意程式。
行動規模:6,600 個假帳號、逾 1,400 萬次下載
FakeGit 行動的規模相當驚人。研究人員統計,整個行動涉及約 6,600 個開發者個人檔案,其中 200 個核心專庫的累計下載次數已超過 1,400 萬次。換句話說,數以百萬計的開發者可能在不知情的情況下,下載並執行了這些偽裝成正常工具的惡意程式。
這些假專庫並非粗製濫造。攻擊者會複製真實的開源項目、建立外觀可信的開發者個人檔案、撰寫內容詳盡的 README 文件,甚至將惡意程式碼包裝在看似正常的 ZIP 壓縮檔內。由於外觀上與一般開源專案無異,即使是經驗豐富的開發者也不容易一眼識破。
AgentBaiting:針對 AI 編碼代理的新興威脅
FakeGit 行動中一個值得關注的演變,是研究人員所稱的「AgentBaiting」手法。隨著越來越多的開發者使用 AI 編碼代理(如 Claude Code、Gemini、ChatGPT)來輔助開發工作,攻擊者開始針對這些 AI 工具的特性設計攻擊。
具體而言,當 AI 代理在網上搜尋可用的技能或 MCP 伺服器時,有機會自行發現這些偽裝成正規工具的惡意專庫。AI 代理會讀取攻擊者精心撰寫的 README 文件,將其視為合法文件,然後向使用者發出安裝或下載的指示。使用者因為信任 AI 代理的推薦,可能在無警覺的情況下安裝了惡意軟件。
攻擊鏈:從 ZIP 檔到資訊竊取器
Island 研究團隊拆解了 FakeGit 的攻擊鏈。當使用者下載並解壓這些假專庫中的 ZIP 檔案後,一個 LuaJIT 載入器會開始執行,並載入經過混淆處理的 Lua 腳本。該腳本負責下載和啟動 SmartLoader,最終在受害者的系統上建立持久性,並投放第二階段的有效負載(payload)。
目前觀察到的第二階段攻擊主要涉及 StealC,一款常見的資訊竊取惡意軟件(information stealer)。StealC 能夠竊取瀏覽器中儲存的密碼、Cookie、加密貨幣錢包等敏感資料,對個人和企業用戶均構成威脅。
偽裝身份:Gmail、WhatsApp 等熟悉工具名稱被盜用
為了提高成功率,攻擊者刻意借用開發者熟悉的工具名稱來命名假專庫。研究人員發現這些惡意專庫使用了 Gmail、WhatsApp、Databricks、Jenkins、Docker 等知名服務或平台的名稱,讓開發者在搜尋相關整合方案時更容易上當。
此外,這些惡意專庫的足跡已蔓延至多個公開的 MCP 目錄平台。研究人員在 LobeHub、Glama、MCP.so 及 MCP Market 等熱門註冊平台上,發現了超過 600 個與此行動相關的虛假清單。這意味著即使開發者透過這些被認為較可信的目錄平台尋找工具,仍有可能接觸到惡意專庫。
如何防範:Island 的安全建議
針對 FakeGit 行動所揭示的風險,Island 向企業和開發者提出了數項建議。該公司建議組織建立經過審查的內部技能或 MCP 伺服器目錄,避免開發者直接從公開平台隨意下載。對於新加入的 AI 代理功能,應先在沙盒(sandbox)環境中測試,確認安全後才在正式環境中使用。
此外,開發者在採用任何第三方工具或 MCP 伺服器前,應核實發布者的身份和專案的背景可信度,例如檢查專案的貢獻歷史、社群活躍度,以及是否有其他開發者使用並作出正面評價。企業亦應持續監控 AI 代理的活動路徑,及早發現異常的下載和執行行為。
FakeGit 行動反映了一個更廣泛的趨勢:隨著 AI 工具融入軟件開發流程,攻擊者也在同步調整策略,將目標從直接欺騙人類開發者,擴展至利用 AI 代理作為攻擊的跳板。對開發者和企業而言,建立對 AI 代理推薦內容的審查機制,將是未來網絡安全防護的重要一環。
資料來源:The Hacker News
