再スキャン

更新した成果物を、もう一度 Trivy でスキャンします。(またはアプリインフラチームにスキャンの依頼をします)

実行する

自分でスキャンするプロジェクトでは、プロジェクトで決めている方法で Trivy を実行し、結果を JSON で保存します。例:

trivy fs --format json --output trivy-after.json <成果物のパス>

アプリインフラチームにスキャンを依頼しているプロジェクトでは、更新した成果物(ファイル名・作成日時)を伝えてスキャンを依頼し、結果の JSON を受け取ります。更新前のスキャンと同じ対象・同じ設定で行ってもらいます。

確かめる

  • バージョンページの手順9に挙がった脆弱性 ID が、結果から消えている
  • 対象のライブラリの古いバージョンが検出されない
  • 新しいバージョンで、新たに検出された脆弱性が無いか(バージョンページの「更新先に残る脆弱性」と照らす)
  • 同梱された複製(他の JAR に同梱された複製)の検出が残っていないか

記録する

スキャンの日付・Trivy のバージョン・データベースの更新日・結果のファイル名を記録します(依頼した場合は、アプリインフラチームに確かめます)。消えなかった脆弱性は、理由(更新先に残る・同梱の複製・別の経路)と対応(設定・緩和策・次の更新)を記録します。

除外の設定(ignore)を使う場合は、根拠・期限・承認者を記録します。

概要レポート(ツール2)にスキャン結果をもう一度入れると、残った脆弱性を一覧で確かめられます。

共通手順書の章

  1. 作業の全体像
  2. 開発環境と前提
  3. 作業前の準備
  4. 更新前の記録
  5. 利用箇所の調べ方
  6. 依存定義の更新
  7. IDE への反映
  8. 解決されたバージョンの確認
  9. コンパイルエラーの切り分け
  10. import の一括置き換え(javax → jakarta)
  11. 非推奨の警告の扱い
  12. 概算工数の出し方
  13. リソースの解放と入力の安全性
  14. ビルド・テスト・WAR の確認
  15. 他の JAR に同梱された複製
  16. 再スキャン
  17. 変更差分の確認と完了条件
  18. ロールバックと作業記録
  19. 検証環境等への配備