【トリビー】

Trivy とは?

最終更新:
💡 ソフトウェアの問題を調べ、対応につなげる

Aqua Securityのオープンソースのセキュリティスキャナー。コンテナイメージ、ファイルシステムなどを対象に、既知の脆弱性、設定ミス、秘密情報などを検出する。SBOMの生成にも対応する。対応範囲や設定に依存し、検出なしでも安全を保証するものではない。

📌 このページのポイント
Trivy:対象と検査を選び、結果を確認対象コンテナファイルなどTrivy検査項目を設定する検出例既知の脆弱性設定ミスなどSBOMで部品を把握することも検出結果を、更新や対策につなげるCIを止めるには、終了コードの設定も確認しよう
対象・検査・結果の例。対応範囲や既定の検査は対象により異なり、検出なしでも安全を保証しません。
ひよこ ひよこ
Trivyは、何を調べるツール?
ペンギン先生 ペンギン先生
コンテナイメージやファイルシステム、Gitリポジトリなどを調べるセキュリティスキャナーだよ。既知の脆弱性、IaCの設定ミス、秘密情報などの検査や、ソフトウェアの部品表であるSBOMの生成に使える。対象によって、対応する検査は異なるんだ。
ひよこ ひよこ
古いライブラリなら、全部危険と出る?
ペンギン先生 ペンギン先生
見つけた部品と脆弱性情報を照合するので、単に古いだけで全部危険と決めるわけではないよ。OSの提供元が修正を取り込んでいる場合などもある。Trivyは情報源を選んで判断する。検出結果では対象のバージョン、重大度、修正情報や利用状況も確認しよう。
ひよこ ひよこ
どうやって、使い始めるの?
ペンギン先生 ペンギン先生
インストール後、たとえばtrivy image nginxでイメージを調べる使い方があるよ。検査項目は--scannersで選べる。公式資料ではイメージの既定は脆弱性と秘密情報の検査で、設定ミスなどを常に全部検査するとは限らない。対象、設定、データベースの取得環境を確認しよう。
ひよこ ひよこ
脆弱性が見つかると、CIは自動で失敗する?
ペンギン先生 ペンギン先生
既定では問題を検出しても終了コード0なので、検出だけで自動的にCIが失敗するとは限らないよ。--exit-code 1や--severityなどで、止める条件を設定する。検査自体のエラーと、検出された問題による失敗も区別して確認しよう。
ひよこ ひよこ
何も検出されなければ、安全?
ペンギン先生 ペンギン先生
対応する部品や情報源、設定の範囲で調べた結果だよ。未対応の対象や、まだ知られていない問題まで全部見つける保証はない。部品の更新、設定の見直し、他のテストと組み合わせよう。SBOMも部品を把握する資料で、それ自体が脆弱性を直すわけではないんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Trivy」って出てきたら「ソフトウェアの脆弱性や設定ミスなどを調べるツール」と思えばだいたいOK!
📖 おまけ:英語の意味
「Trivy」 = トリビー(ツール名)
💬 Aqua Securityのオープンソースプロジェクト。対象と検査項目を選んで使う。コンテナの脆弱性だけを調べるツールではないんだ。

参考資料

← 用語集にもどる