TUF 1.0 可用,這是一個用於組織安全更新交付的框架

TUF 1.0(更新框架)版本已經發布,提供了安全檢查和下載更新的工具。 該專案的主要目標是保護客戶免受對儲存庫和基礎設施的典型攻擊,包括反擊攻擊者在獲得用於生成數位簽章的金鑰的存取權限或破壞儲存庫後創建的虛構更新。 該專案是在 Linux 基金會的支持下開發的,用於提高 Docker、Fuchsia、Automotive Grade Linux、Bottlerocket 和 PyPI 等專案更新交付的安全性(預計 PyPI 中將包含下載驗證和元資料)不遠的將來)。 TUF 參考實作程式碼是用 Python 編寫的,並根據 Apache 2.0 授權分發。

該專案正在開發一系列庫、文件格式和實用程序,這些程式庫、文件格式和實用程式可以輕鬆整合到現有的應用程式更新系統中,從而在軟體開發人員方面發生關鍵外洩時提供保護。 要使用TUF,只需將必要的元資料新增至儲存庫中,並將TUF中提供的用於下載和驗證檔案的流程整合到客戶端程式碼中即可。

TUF 框架承擔檢查更新、下載更新以及驗證其完整性的任務。 更新安裝系統不會直接幹擾額外的元數據,其驗證和加載由 TUF 承擔。 為了與應用程式和更新安裝系統集成,提供了用於存取元資料的低階 API 和高級客戶端 API ngclient 的實現,可隨時與應用程式整合。

TUF 可以應對的攻擊包括以更新為幌子替換舊版本,以阻止軟體漏洞的更正或用戶回滾到易受攻擊的舊版本,以及推廣使用受損的正確簽名的惡意更新。關鍵是,對客戶端進行DoS 攻擊,例如用無休止的更新填滿磁碟。

透過維護儲存庫或應用程式狀態的單獨、可驗證的記錄,可以防止軟體供應商的基礎設施受到損害。 TUF 驗證的元資料包括有關可信金鑰的資訊、用於評估檔案完整性的加密雜湊、用於驗證元資料的附加數位簽章、有關版本號的資訊以及記錄生命週期的資訊。 用於驗證的金鑰的壽命有限,需要不斷更新以防止舊金鑰形成簽章。

透過使用共享信任模型來降低整個系統受到損害的風險,其中各方僅限於其直接負責的區域。 系統使用具有自己金鑰的角色層次結構,例如,根角色為負責儲存庫中的元資料、更新產生時間和目標組件的資料的角色簽署金鑰,反過來,負責程式集簽署的角色與所交付文件的認證相關的角色。

TUF 1.0 可用,這是一個用於組織安全更新交付的框架

為了防止金鑰洩露,使用了一種及時撤銷和替換金鑰的機制。 每個單獨的金鑰僅包含最低限度的必要權力,且驗證操作需要使用多個金鑰(單一金鑰的洩漏不允許立即對客戶端進行攻擊,並且要危害整個系統,所有參與者的密鑰都必須是被捕獲)。 客戶端只能接受比之前接收到的文件更新的文件,並且僅根據經過認證的元資料中指定的大小下載資料。

TUF 1.0.0 的發布版本提供了 TUF 規範的完全重寫且穩定的參考實現,您可以在創建自己的實現或整合到專案中時將其用作現成的範例。 新的實作包含的程式碼顯著減少(1400 行而不是 4700 行),更易於維護並且可以輕鬆擴展,例如,如果需要添加對特定網路堆疊、儲存系統或加密演算法的支援。

來源: opennet.ru

添加評論