代替ツール
SyftとGrypeの代替ツール
SyftとGrypeは、SBOMの生成と照合における無料の定番ツールです。チームが代替ツールを検討するのは、別のフォーマットやエコシステムが必要なとき、ビルドが実際に使用したもののSBOMが必要なとき、あるいは自分で運用しなくて済む監視が必要なときです。
更新日
CRACIは当社の製品です。その点を踏まえてお読みください。各選択肢はそれぞれのドキュメントに基づいて説明し、他のツールのほうが適している場合はそう明記しています。
チームがSyftとGrype以外を検討する理由
Syftは、Anchoreが提供するコンテナイメージとファイルシステム向けの無料のApache-2.0ライセンスの生成ツールです。数十種類のパッケージタイプを認識し、CycloneDX、SPDX、Syft JSONを出力し、署名付きのin-toto SBOM構成証明も作成できます。対になるGrypeは、SBOMを脆弱性と照合します。
状況が変わると、チームは他の選択肢を探し始めます。
- 設定。カタロガーはスキャンの種類によって選ばれるため、インストール済みのexpressのチェックアウトでは、npmパッケージが結果に含まれるかどうかが1つのフラグで決まります。
- フォーマットとエコシステム。CycloneDXコミュニティの生成ツール、ビルド出力からのSPDX、あるいは1つのパッケージマネージャー専用のツールを求めるチームもあります。
- エビデンス。SBOMが記述するのはスキャンしたファイルであり、ビルドが取得したものではありません。
- 監視。出荷したものを監視するには、SBOMを保管し、Grypeを自分で再実行する必要があります。
選定のポイント
- SBOMの情報源がディスク上のファイルか、ビルドが取得したものか。
- 推移的依存関係と、記録が不完全なときにツールがそれを示すかどうか。
- 実行時のスキャンだけでなく、リリース後の監視があるか。
- フォーマット:CycloneDX、SPDX、VEX。
- 他にスキャンが必要なもの:自社でビルドしていないイメージ、IaC、シークレット、クラスター。
選択肢
最初の6つはSBOM生成ツールです。残りは、SBOMを中心に脆弱性の照合、監視、またはより広いプラットフォームを提供します。
1. CRACI(当社製品)
CRACIは、事後にファイルをスキャンするのではなく、GitHub Actionsのビルドの実行中にSBOMを記録します。パッケージを認識するプロキシが、CIキャッシュから復元されたパッケージを含め、ジョブが取得したすべてのパッケージを記録します。CycloneDXまたはSPDXの各SBOMには、ジョブごと・キャッシュごとの完全性が示されます。CRACIは新たな脆弱性が現れるたびに監視対象のSBOMを再評価し続け、ポリシーゲートは検出結果に基づいてビルドをブロックでき、APIはSBOM、ネットワークトレース、来歴を返します。
最適な用途: GitHub Actionsでビルドするソフトウェアの、SBOMと依存関係の脆弱性。
検討すべきケース: CRACIが対応していないInfrastructure as Code、シークレット、クラスター、VMイメージのスキャンが不要で、ビルドがLinux上のGitHub Actionsで実行される場合。
2. cdxgen(オープンソース)
cdxgenは、ソースとコンテナイメージからCycloneDX BOMを作成するOWASP CycloneDXプロジェクトで、Apache-2.0で提供されています。Node.jsでは、開発依存関係を含めてまずロックファイルを解析し、さらにコードのimportも分析します。-tでプロジェクトの種類を指定し、検索対象を絞り込めます。
最適な用途: CycloneDXで標準化しており、フォーマット自身のコミュニティによるジェネレーターを求めるチーム。
検討すべきケース: ファイルに宣言された内容で十分な場合。他のスキャナーと同様、目の前にあるものしか報告できません。
3. Microsoft SBOM Tool(オープンソース)
Microsoft SBOM Toolは、SPDX 2.2(指定すればSPDX 3.0)を出力するMITライセンスのジェネレーターで、SBOMをSPDX仕様に照らして検証することもできます。コマンドラインでビルドドロップフォルダー、パッケージ名、バージョン、サプライヤーを指定する必要があるため、ビルド後の工程となります。GitHub ActionsとAzure Pipelinesで動作します。
最適な用途: すでにパッケージ化しているビルド成果物について、SPDXを求めるチーム。
検討すべきケース: ビルドドロップを対象に実行する場合。コミットされたままのリポジトリを対象にすると、記述する内容がほとんどありません。
4. CycloneDXツールとビルドプラグイン(オープンソース)
CycloneDXプロジェクトは、単一エコシステム向けのジェネレーターを保守しており、Tool Centerに掲載しています。Maven、Gradle、Apache Ant向けのプラグインと、npm、Yarn、Python、.NET、Go modules、Rust Cargo、PHP Composer、Ruby Gems、ErlangとElixir、Conan向けのツールです。別個のCycloneDX CLI(Apache 2.0)はSBOMを生成しません。変換、マージ、差分比較、検証、署名を行います。
最適な用途: そのエコシステム専用のジェネレーターを求める、単一エコシステムのプロジェクト。
検討すべきケース: 複数の言語が混在するコードベースで、エコシステムごとに1つのツールを実行できる場合。
5. Tern(オープンソース)
Ternは、コンテナイメージとDockerfileのSBOMを生成するソフトウェアコンポジション解析ツール兼Pythonライブラリで、BSD-2-Clauseで提供されています。各レイヤーのパッケージメタデータから、コンテナの中身をレイヤーごとに示し、SPDX tag-value、SPDX JSON、CycloneDX JSONなどの形式で出力します。
最適な用途: どのイメージレイヤーがどのパッケージを持ち込んだかの確認。
検討すべきケース: SBOMのニーズがソースリポジトリではなくコンテナイメージに関するものである場合。
6. Amazon Inspector SBOM Generator
Sbomgenは、Amazon Inspector自身のイメージ、Lambda、EC2のスキャンを支えるジェネレーターで、単体のLinuxバイナリとして提供されています。コンテナイメージ、ディレクトリ、アーカイブ、マウントされたボリューム、コンパイル済みのGoおよびRustバイナリからパッケージメタデータを読み取り、CycloneDXを出力します。脆弱性の検出結果を得るためにSBOMをAmazon Inspector Scan APIに送信でき、その場合はAWSアカウントが必要です。
最適な用途: ワークロードがすでにAWS上で動いているチーム。
検討すべきケース: 唯一の対応プラットフォームであるLinux上で実行する場合。
7. Trivy(オープンソース)
Aqua SecurityによるApache-2.0の無料スキャナーです。コンテナイメージ、ファイルシステム、リポジトリ、VMイメージ、Kubernetesを対象に、脆弱性、IaCの設定ミス、シークレット、ライセンスをスキャンし、CycloneDXまたはSPDXのSBOMを出力します。リポジトリではロックファイルを、イメージではインストール済みパッケージのメタデータを読み取ります。
最適な用途: 予算が限られているチーム、またはどのCIでも使える単一のスキャナーを求めるチーム。
検討すべきケース: 残りの部分を自社で構築できる場合。監視するには、自社のスケジュールで再スキャンする必要があります。
8. Anchore Enterprise
Anchore Enterpriseは、AnchoreのオープンソースのSyftとGrypeを基盤としています。コンテナイメージ、ソース、ファイルシステムからSBOMを生成し、他で作成されたSBOMをインポートし、保存済みのSBOMを元のアーティファクトなしで再スキャンし、FedRAMP、NIST、CIS、PCI DSS、CMMC向けのポリシーパックを適用します。Kubernetes、Docker Compose、またはエアギャップ環境にデプロイできます。価格は見積もりです。
最適な用途: 複数のCIシステムにまたがるコンテナ群、および政府系やエアギャップの環境。
9. Dependency-Track(オープンソース)
OWASP Dependency-Trackは、ポートフォリオ内のすべてのアプリケーションのすべてのバージョンにわたってコンポーネントを追跡する、Apache 2.0の無料プラットフォームです。NVDやGitHub Advisoriesなどのソースから脆弱性データを取得し、セキュリティ、ライセンス、運用ルールのためのポリシーエンジンを備え、CycloneDX VEXの取り込みと生成に対応しています。
最適な用途: ライセンス料なしで、透明性の高いセルフホスト型SBOMプラットフォームを求めるチーム。
検討すべきケース: 運用とデータ投入を自社で行う準備がある場合。アップロードされたSBOMを分析するツールであり、SBOMを生成するものではありません。
10. Aikido
幅広いAppSecスイートです。すべてのプランにSCA、SAST、シークレット、IaC、クラウドポスチャ、コンテナスキャン、DAST、ライセンススキャン、SBOM生成が含まれています。SCAは関数レベルの到達可能性分析を使い、AutoFixがプルリクエストを作成し、重大な検出結果を含むプルリクエストをブロックできます。無料のDeveloperプランがあり、有料プランは月$350からです(2026年9月時点)。
最適な用途: ほとんどのスキャンニーズを1つのツールと1つのダッシュボードでまかないたい小規模なチーム。
11. GitHub Advanced Security
GitHubのプラットフォーム機能の上に追加される2つの有料製品です。Secret Protectionはシークレットスキャンとプッシュ保護を、Code SecurityはCodeQLのコードスキャン、Copilot Autofix、依存関係レビューをカバーします。これらはすべてのGitHubプランに含まれる依存関係グラフとDependabotを基盤としており、グラフはSPDX SBOMとしてエクスポートできます。TeamまたはEnterpriseで、Secret Protectionはアクティブコミッター1人あたり月$19、Code Securityは$30です(2026年9月時点)。
最適な用途: コードとワークフローがすでにGitHub上にあり、ベンダーを減らしたいチーム。
CRACIとGitHub Advanced Securityの比較
一覧で比較
| 機能 | CRACI | Syft | Trivy | cdxgen | Microsoft SBOM Tool | GitHub export | Amazon Inspector Sbomgen |
|---|---|---|---|---|---|---|---|
| コンポーネント一覧の取得元 | 記録したビルド通信 | カタロガーがファイルとイメージを読み取る | ロックファイルまたはインストール済みパッケージ | ソースとコンテナイメージ | ビルドのドロップフォルダー | マニフェストとロックファイル | イメージ、ディレクトリ、アーカイブ、バイナリ内のファイル |
| フォーマット | CycloneDX、SPDX | CycloneDX、SPDX、Syft JSON | CycloneDX、SPDX | CycloneDX | SPDX | SPDX | CycloneDX |
| ビルドが取得したものを記録 | CIキャッシュを含む | Dependency submission | |||||
| ビルドを実行せずに動作 | |||||||
| 署名付きの構成証明または来歴 | 署名付き来歴なし | in-toto SBOM構成証明 | Cosignで対応 | 記載なし | 記載なし | 成果物の構成証明(Artifact attestations) | 記載なし |
| 脆弱性の照合 | 監視対象SBOM | Grypeと組み合わせて使用 | 記載なし | 記載なし | Dependabotアラート | Inspector Scan API | |
| ビルドのエグレスポリシー | フェイルクローズ | ||||||
| あらゆるCIで動作 | 現在はGitHub Actions。GitLab CIとJenkinsはロードマップに掲載 | GitHubリポジトリ | Linuxのみ | ||||
| 料金 | 1vCPU分あたり$0.002(2 vCPUは$0.004)、秒単位の従量課金。月額料金なし、SBOMごとの課金なし | 無料、Apache-2.0 | 無料、Apache-2.0 | 無料、Apache-2.0 | 無料、MIT | GitHubに含まれる | 無料ダウンロード |
- 対応
- 一部対応
- 非対応
- ロードマップに掲載
「記載なし」は、ベンダーの公開ページで確認できなかったことを意味します。
SyftとGrypeを使い続けるべき場合
- 自社でビルドしていないイメージをスキャンする。
- GrypeのVEXによる絞り込みや、CIでの深刻度によるゲートに頼っている。
- どこでも動作する無料の生成ツールが必要。
- 併用も可能です。自社でビルドしていないイメージにはSyftとGrypeを使い続けられます。
詳しくはビルド時SBOM生成、SBOMツールの比較、オープンソースのSBOM生成ツールが見落とすものをご覧ください。
SyftとGrypeの代替ツールに関するよくあるご質問
比較検討の際にチームからよく寄せられる質問への簡潔な回答
最適なオープンソースのSBOM生成ツールは何ですか?
何を対象にするかによります。SyftとTrivyは、コンテナイメージとファイルシステム向けの無料のApache-2.0ライセンスの生成ツールです。cdxgenはソースとイメージからCycloneDXを出力し、CycloneDXのビルドプラグインはそれぞれ1つのエコシステムをカバーし、Microsoft SBOM Toolはビルド出力フォルダーのSPDXを出力し、Ternはイメージをレイヤーごとに表示します。いずれもファイルを読み取るツールです。有償製品のCRACIは、ビルドそのものからSBOMを記録します。
Syftの料金はいくらですか?
無料です。SyftとGrypeはApache-2.0ライセンスの無料オープンソースです。Anchoreはこれらを基盤とした別の商用プラットフォームであるAnchore Enterpriseを販売しており、料金は個別見積もりです(2026年9月時点)。
SyftでSBOMを生成するにはどうすればよいですか?
対象と出力フォーマットを指定してsyftを実行します。たとえばイメージならsyft my-image:latest -o spdx-json=sbom.spdx.json、ディレクトリならsyft ./my-project -o cyclonedx-json=sbom.cdx.jsonです。syft cataloger listで、そのスキャンの種類でどのカタロガーが実行されるかを確認できます。
SyftとGrypeの違いは何ですか?
SyftはSBOMを生成します。Grypeは脆弱性スキャナーで、コンテナイメージ、ファイルシステム、SBOMをスキャンし、EPSSとKEVのデータで優先順位を付け、OpenVEXによる結果の絞り込みにも対応します。どちらもAnchoreがApache-2.0で提供しており、通常は組み合わせて使われます。
CRACIはSyftとGrypeの代わりになりますか?
はい、GitHub Actionsでビルドするソフトウェアであれば置き換えられます。CRACIはビルドの実行中にSBOMを記録し、ジョブごと・キャッシュごとの完全性の状態を付け、新たな脆弱性が現れるたびに監視対象のSBOMを再評価し続けます。自社でビルドしていないイメージについては、SyftとGrypeなどのスキャナーを引き続き使ってください。