【グライプ】

Grype とは?

公開:
💡 コンテナの中身を解剖して「危険な部品」を全部洗い出す
📌 このページのポイント
Grype — Syftと連携する脆弱性スキャナ コンテナ イメージ Syft SBOM生成ツール SBOM (ソフトウェア部品表) cyclonedx / spdx 形式 SBOM grype sbom:sbom.json Grype CVE照合エンジン 脆弱性レポート CVSSスコア付き SBOMを再利用してスキャン grype image nginx / --fail-on high でCI失敗条件を設定
Syftでコンテナの部品表(SBOM)を生成し、GrypeがSBOMを受け取って脆弱性を照合するワークフロー
ひよこ ひよこ
ペンギン先生、GrypeってTrivyと何が違うの?
ペンギン先生 ペンギン先生
どちらもコンテナ脆弱性スキャナだけど、Grypeは「Syft」というSBOM生成ツールとセットで使う設計が特徴だよ
ひよこ ひよこ
SBOMって何だっけ?
ペンギン先生 ペンギン先生
ソフトウェア部品表(Software Bill of Materials)のことだよ。コンテナや依存ライブラリの一覧を機械可読な形式でまとめたものだね。Syftがそれを生成して、GrypeがSBOMを受け取って脆弱性チェックをするんだ
ひよこ ひよこ
二段階に分けると何がいいの?
ペンギン先生 ペンギン先生
SBOM一覧とスキャンを分けることで、「どこで何が使われているか」を先に把握してから、後からスキャンしたり複数のスキャナで検証したりできるよ。SBOMは監査や規制対応でも求められるんだ
ひよこ ひよこ
使い方は難しいの?
ペンギン先生 ペンギン先生
簡単だよ。grype nginx:latest だけでDockerイメージをスキャンできる。grype sbom:./sbom.json でSyftが出したSBOMファイルを直接スキャンすることもできるんだ
ひよこ ひよこ
CVSSの深刻度でフィルタリングできるって書いてあったけど?
ペンギン先生 ペンギン先生
--fail-on high というオプションをつけると「Highレベル以上の脆弱性があったらCIを失敗させる」という設定ができるよ。全件で引っかかるより現実的なラインを設定できるのが便利だね
ひよこ ひよこ
TrivyとGrypeってどっちを選べばいいの?
ペンギン先生 ペンギン先生
SBOM駆動のワークフローやAnchoreエコシステムを使いたいならGrype、IaCや設定ミスまで含めた広い用途ならTrivyが向いているよ。CI/CDでは両方試してみるといいんだ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Grype」って出てきたら「SBOMと組み合わせるコンテナ脆弱性スキャナ」と思えればだいたいOK!
📖 おまけ:英語の意味
「Grype」 = グライプ(固有名詞)
💬 ギリシャ神話の鷲獅子(グリフィン)をモチーフにしており、鋭いつかみで脆弱性を捕らえるイメージからきているよ
← 用語集にもどる