概要
過去にtrivyを使って脆弱性スキャンを紹介しました
今回は gem に特化したツールを紹介します
環境
- macOS 11.7.10
- Ruby 3.2.2
- bundler-audit 0.9.1
インストール
- vim Gemfile
gem 'bundler-audit'
- bundle config path vendor
- bundle install
使ってみる
まずは最新の脆弱性情報を取得します
- bundle exec bundler-audit update
Download ruby-advisory-db ...
Cloning into '/Users/user01/.local/share/ruby-advisory-db'...
remote: Enumerating objects: 11402, done.
remote: Counting objects: 100% (1519/1519), done.
remote: Compressing objects: 100% (349/349), done.
remote: Total 11402 (delta 1237), reused 1228 (delta 1160), pack-reused 9883
Receiving objects: 100% (11402/11402), 1.82 MiB | 8.14 MiB/s, done.
Resolving deltas: 100% (6446/6446), done.
ruby-advisory-db:
advisories: 827 advisories
last updated: 2023-11-30 12:36:04 -0800
commit: d821bf162550302abd1fa1fe15007f3012b76f32
ローカルにキャッシュされます
あとは実行すれば OK です
- bundle exec bundler-audit
No vulnerabilities found
と表示された場合は特に脆弱な gem をプロジェクト内で使用していないことになります
更新とスキャンを同時に行う
-
bundle exec bundler-audit check --update
こっちを使ったほうがいいかもです
最後に
あとはこれを CI に追加すれば gem のセキュリティチェックができるようになります
当然ですが CVE ベースなのでゼロデイ攻撃などには対応していません
trivy でもできそうですがすでに bundler-audit を使っている場合はこれで十分かもしれないです
0 件のコメント:
コメントを投稿