Travis CI 安全事件
·2 分鐘閱讀
在 2021 年 9 月 9 日,我們的一位核心開發人員發現,在 Travis CI 上建置的成品,正從在 fork 儲存庫上運行的 PR 上傳到我們的 conda 頻道。快速調查顯示,Travis CI 正在將加密的密鑰傳遞給 fork 上 PR 的建置。進一步檢查我們的日誌和成品表明,這種情況從 2021 年 9 月 3 日左右就已開始發生。Travis CI 後來確認了這個安全漏洞。請參閱此 CVE 以取得有關此事件的更多詳細資訊。據我們所知,沒有針對 conda-forge 的實際漏洞利用使用了此漏洞。
我們的回應
我們採取了以下步驟來回應此事件。
- 我們立即透過暫停 Travis CI GitHub 應用程式,關閉了 Travis CI 上的所有建置。
- 我們立即透過我們在那邊的聯繫人,向 Travis CI 揭露了此錯誤。
- 一旦 Travis CI 向我們表示他們已準備就緒,我們就輪換了所有 feedstock 令牌,稍後也輪換了我們用於 staging 頻道的 anaconda.org 令牌。主要
conda-forge
頻道的 anaconda.org 令牌從未在此事件中洩露。此外,只有約 70 個 feedstock 的令牌在此事件中暴露。 - 我們檢查了我們的成品,並將從 PR 上傳的任何成品標記為損壞。我們認為我們找到了所有東西,但我們不能完全確定。我們將事物標記為損壞的標準比實際需要的更寬鬆。
- 我們發布了 PR,透過我們的機器人重建任何損壞的成品。
- 我們在
conda-smithy
中進行了變更,以幫助防止未來從 PR 中意外上傳成品。
結語與您可以做什麼?
我 (MRB) 想表揚我們的核心開發團隊在處理此事件中的快速工作。不用說,conda-forge
基礎架構的公共性質帶有風險。另一方面,透過公開,任何人都可以查看並驗證我們的成品建置。conda-forge
的安全性是關於降低風險,我們將繼續盡力而為。
我們在 conda-forge
中對抗安全事件的最佳防禦是您!我們的 feedstock 維護者最能注意到事件和問題。請負責任地向我們報告您發現的任何問題,電子郵件地址為 [email protected]
。