npm 生態系遭遇重大供應鏈攻擊,SlowMist 警告目標為 Keyv
重點速覽
- •超過 2,000 個惡意套件版本被發布,目標為 Keyv——一個在 npm 上每週約有 1.27 億次下載量的鍵值儲存抽象層。
- •Keyv 支援包括 Redis 和 PostgreSQL 在內的多種儲存後端,使其成為加密貨幣及更廣泛科技領域中眾多應用程式的關鍵相依套件。
- •此次事件中觀察到的攻擊手法與先前的 npm 供應鏈攻擊事件相似,例如 2018 年 event-stream 和 2021 年 ua-parser-js 事件。
- •建議安全團隊稽核所有 npm 相依套件、驗證套件完整性、更新至已知安全版本,並監控系統是否出現任何入侵跡象。
- •此事件凸顯了透過 lockfile 進行相依套件版本鎖定、完整性驗證,以及使用 npm audit 等工具進行自動化漏洞掃描的重要性。

據 @SlowMist_Team 發布的安全警示指出,一起重大的 npm 供應鏈攻擊已被通報,影響了 Keyv 生態系。攻擊者發布了超過 2,000 個惡意套件版本,考量到 Keyv 的廣泛採用程度(每週約 1.27 億次下載),此事件引發了高度警覺。
攻擊範圍
npm 生態系正面臨一項嚴重的安全威脅,SlowMist 對此進行了詳細說明。此次攻擊涉及超過 2,000 個針對 Keyv 的惡意套件版本,Keyv 是一個廣泛使用的鍵值儲存抽象層。Keyv 支援多種儲存後端,包括 Redis 和 PostgreSQL,使其成為加密貨幣及更廣泛科技領域中眾多應用程式的關鍵相依套件。
考量到 Keyv 的廣泛整合,對下游應用程式的影響相當重大。此次事件中觀察到的攻擊手法與先前的 npm 供應鏈攻擊相似,顯示攻擊者使用了精密且協調一致的手法。過去的重大事件——例如 2018 年 event-stream 攻擊事件和 2021 年 ua-parser-js 惡意程式碼注入事件——證明了單一遭到入侵或劫持的套件如何透過數千個相依專案產生連鎖效應,因為 npm 深層的傳遞相依鏈使得單一惡意層能夠觸及與原始套件相隔數層的應用程式。
Keyv 的角色與曝險
Keyv 是一個熱門的鍵值儲存解決方案,為多種後端提供簡單且統一的介面。其廣泛使用意味著這些惡意套件可能影響大量依賴它進行資料儲存操作的專案。
npm 註冊表自 2020 年被 GitHub 收購後由其維護,處理大量用於網頁應用程式與服務開發的軟體相依套件,在軟體供應鏈安全中扮演核心角色。此類性質的事件影響了全產業的網路安全標準,凸顯了透過 lockfile 進行相依套件版本鎖定、完整性驗證,以及透過 npm audit 等工具進行自動化漏洞掃描的重要性。
建議採取的行動
安全團隊被敦促採取以下步驟:
- 立即審查並稽核所有 npm 套件相依項目,特別是與 Keyv 相關的套件。
- 在驗證完整性後,更新至已知安全的套件版本。
- 監控系統是否出現因惡意套件而導致的任何入侵跡象。
- 持續關注安全研究人員和 npm 團隊的進一步更新。
開發者應對軟體相依套件保持警覺,並留意隨著事件發展可能浮現的新漏洞。隨著社群採取行動以降低風險,預期將會出現更多的稽核活動及更安全的套件管理實務。