解決策
パッケージマネージャーはすでに署名を検証していたが、調査により、人気のある更新システムには依然として深い失敗モードが共通して存在することが判明した。すなわち、古いメタデータ、悪意あるミラー、ロールバック、無限データ、単一鍵の侵害がクライアントを誤らせる可能性があった。
TUFの設計上の選択は、更新の信頼を単一の署名として扱うことをやめることだった。その仕様は責任を役割に分割し、バージョンと有効期限を持つメタデータを使用し、委任と閾値を通じて、侵害されたオンライン鍵による損害を最小化する。
TUFの作業は2009年後半に始まり、パッケージマネージャーへの攻撃研究とTorのThandyアップデータを基にした。CNCFは2017年10月24日にTUFを承認し、2019年12月18日にGraduatedへ移行した。
達成したこと
一つの鍵にすべてを意味させてはならない
うまくいった理由
役割を分離することで、攻撃者が一つの盗まれた鍵でできることが制限された。
Timestampとsnapshotのメタデータにより、古い、または一貫性のないリポジトリの見え方を検出できるようになった。
このフレームワークは、普遍的なパッケージ形式を定義することなく更新を安全にした。
委任により、大規模なリポジトリは信頼の根を明け渡すことなく署名権限を分散できた。
応用できること
安全な更新標準は、その周囲の信頼メタデータを標準化すれば、各パッケージマネージャーのワークフローを維持できる。
その後
TUFはCNCFのGraduatedプロジェクトとなり、更新セキュリティの参照モデルとなった。その役割ベースのメタデータパターンは、すべてのパッケージマネージャーを置き換えることなく更新問題を解決したため、その後のサプライチェーンシステムに影響を与えた。
出典をたどる
出典
- The Update Framework Specification The Update Framework · theupdateframework.io ·
- The Update Framework (TUF) Cloud Native Computing Foundation · cncf.io