github-trend-summarizer

google/osv-scanner 概要

このリポジトリは何?

何が嬉しいのか(既存手段との比較)

利用の流れ

  1. インストール
    go install github.com/google/osv-scanner/v2/cmd/osv-scanner@latest、または Releases からバイナリ取得、Docker イメージ、GitHub Action (actions/) も選択可。

  2. スキャン対象を選ぶ(3 パターンが代表的)
    # ① ソースツリー全体を再帰スキャン
    osv-scanner scan source -r /path/to/repo
    
    # ② コンテナイメージをスキャン
    osv-scanner scan image my-image:tag
    
    # ③ ライセンス監査(許可リスト方式)
    osv-scanner --licenses="MIT,Apache-2.0" /path/to/repo
    
  3. 設定・無視ルールの調整
    ルート直下の osv-scanner.toml に誤検知・未対応脆弱性の IgnoredVulns、パスごとの例外、ライセンス許可リストを記述。docs/configuration.md 参照。

  4. 出力形式を選ぶ
    --formattable(既定)、jsonsarif(GitHub Code Scanning 連携)、htmlcyclonedx など。CI なら SARIF をアップロードするのが定番。

  5. 修正フェーズ(任意・実験的)
    osv-scanner fix -M package.json -L package-lock.json   # 対話型
    osv-scanner fix --strategy=in-place --max-depth=3 --min-severity=5 -L package-lock.json
    

    依存の深さ・最低 Severity・戦略(in-place / relock / override)を指定し、ROI の高い修正案を適用。

  6. CI への組み込み
    actions/ 配下の reusable workflow を呼ぶか、Docker で実行 → SARIF を GitHub Security タブへ。PR 差分に導入された脆弱性のみ失敗させる運用も可能。オフライン CI では事前に DB を配布。

  7. 運用
    OSV.dev の DB は日次で更新されるため、定期実行(cron / スケジュール済み GH Actions)で再スキャンし、新規に登場した CVE を検出する運用が基本。