AlmaLinux は、そのリリース用のソフトウェア 一覧(SBOM)を提供しています。
SBOM とは?
Software Bill of Materials の略である SBOM は、コードベースの「構成要素リスト」のようなものです。 使用しているオープンソースおよびサードパーティ製コンポーネント、ライセンス情報、コンポーネントのバージョン、それらのコンポーネントに既知の脆弱性があるかどうかなど、ソフトウェアの内容を特定するのに役立ちます。
SBOM は「構成要素リスト」であり、コードは構成要素であり、ビルド システムは「キッチン」であり、これらの構成要素は、使用するソフトウェアの最終的な部分に組み込まれます。
なぜ SBOM が重要なのですか?
オープンソース ソフトウェアはアプリケーションで広く使用されていますが、その分、有名なハッキングや脆弱性の発見につながっています。 SBOM は、オープンソースのコミュニティとユーザーに、より一層の透明性を提供し、個々のファイル、ライブラリ、依存関係などを(リスクが発生した場合)特定する効率的な方法を提供することで、オープンソース ソフトウェアの使用に対する信頼と信用を高めることを目的としています。
The Linux Foundation 私もそう思います…
また、Linux Foundation と Open Source Security Foundation (OpenSSF) は、 Source Software Security Mobilization Plan これは、Log4j のような将来の脆弱性の発見と対応を促進するために、SBOM を含むソフトウェア コンポーネント フレームワークを開発するための業界の行動を求めています。
...そして大統領自身
大統領が発表した解決法の重要な部分としてSBOM が脚光を浴びた年 Executive Order on Improving the Nation’s Cybersecurity.
"the term “Software Bill of Materials” or “SBOM” means a formal record containing the details and supply chain relationships of various components used in building software. Software developers and vendors often create products by assembling existing open source and commercial software components. The SBOM enumerates these components in a product. It is analogous to a list of ingredients on food packaging."
AlmaLinux が提供するもの
The AlmaLinux Build System 上記の理由からパイプラインに SBOM を実装し、以下を可能にしました:
- CentOS git リポジトリからのソースのプルから、パブリック リポジトリでの検証および署名済みパッケージのリリースまで、ビルド プロセス全体をトレースします
- 信頼できるソースのみがビルドに使用されるようにしたり、攻撃の結果を回避したりするなど、ビルドパイプラインをより安全にします
- データ破損の方法を減らします
これをどのように行っていますか?
AlmaLinux は Codenotary のオープンソースを活用しています Community Attestation Service (CAS) 管理者に認証、検証、SBOM の完全な可視化を提供します。
- CAS が格納するすべての署名は immudb、世界有数の企業や政府が利用する不変なデータベースのオープンソースの標準。
- CAS は改ざんから保護されています。 すべての認証データは、CAS クライアントによって完全性が検査され、暗号化されて検証されます。 誰もこのデータを変更することはできず、AlmaLinux や他の誰も変更できません。
- CAS は MITM 攻撃からも保護されています。 暗号化キーは、すべての通信の前にクライアント側で検証および検査されます。
はじめに
詳細については、Almalinux wiki を参照: https://github.com/AlmaLinux/build-system/wiki/Codenotary-SBOM-integration