
2026年8月20日,安全研究人員發現針對crates.io上發布的三個廣泛使用的Rust crate的協同供應鏈攻擊。被攻擊的軟體包——arrayref 0.3.10、internment 0.8.7和append-only-vec 0.1.9——被篡改,添加了一個惡意依賴項,該依賴項會在標準編譯過程中執行遠端程式碼。 Rust安全回應團隊迅速下架了受影響的版本,並鎖定了維護者的帳戶。團隊表示,這很可能是合法開發者的機器或發布憑證遭到入侵,而非維護者存在惡意意圖。
這次攻擊利用了一個名為 proc-macro1 的拼字錯誤 crate,該 crate 偽裝成合法的 proc-macro2 函式庫。當 Cargo 解析依賴項時,它會自動執行一個惡意建置腳本,該腳本會從 Base64 混淆的資料中重構命令與控制位址,停用 TLS 驗證,並從攻擊者控制的伺服器下載特定於平台的有效載荷。由於攻擊發生在建置時,因此,即使應用程式程式碼沒有直接呼叫任何可疑函數,僅編譯一個間接依賴某個惡意 crate 的項目,就可能感染開發人員的工作站或持續整合主機。
該惡意軟體可在 Linux、macOS 和 Windows 系統上運作。在 Linux 和 macOS 系統上,它會將可執行檔釋放到暫存目錄並以分離模式啟動。在 Windows 系統上,它會部署 PowerShell 和 Visual Basic 腳本來繞過執行原則並執行隱藏程序。第二階段的後門程式隨後會對受感染的系統進行分析,收集使用者名稱、主機名稱、已安裝的應用程式以及基於 Chromium 核心的瀏覽器中的瀏覽資料。它還透過註冊表運行項目、systemd 用戶服務或 macOS LaunchAgents 建立用戶級持久性,並與命令與控制端點保持通信,同時支援遠端指令以進行進一步的執行和配置更改。
更廣泛的生態系統暴露和修復
此事件對 Rust 生態系統及相關區塊鏈基礎設施有重大影響。僅 arrayref 庫在被攻破前就已累計下載約 152 億次,其依賴關係樹中包含 Solana 相關元件和流行的圖形介面框架。雖然下游項目本身並未受到直接影響(除非它們明確地解析並構建了惡意版本),但該庫廣泛的傳遞性使其攻擊面極廣,涵蓋了開發者環境、CI/CD 流水線以及通常存儲敏感代幣和簽名材料的自動化發布基礎設施。
調查人員發現了其他受攻擊者控制的暫存包,包括 proc-macro-en、aovine、arone、aronenao 和 tinymember,這些包隨後已從註冊表中移除。攻擊者也撤下了 arrayref 的先前合法版本,這可能導致依賴項解析在管理員介入之前轉向惡意版本。

建議各組織機構審核受影響版本及其相關指標的 Cargo.lock 檔案、相依性清單和建置日誌。任何編譯過惡意版本的系統都應視為可能已被入侵,需要輪換建置環境可存取的金鑰,對已知的網路和主機痕跡進行取證調查,並從已驗證的乾淨環境中重新建置軟體。防禦人員還應監控與已識別的命令與控制基礎設施以及與植入程式相關的確定性域產生演算法輸出的連接。
免责声明:本文提供的信息不是交易建议。BlockWeeks.com不对根据本文提供的信息所做的任何投资承担责任。我们强烈建议在做出任何投资决策之前进行独立研究或咨询合格的专业人士。