TORIPIYO DIARY

recent events, IoT, programming, security topics

Ruby のコード内から Brakeman を実行する

Brakeman は、Ruby on Railsソースコードにセキュリティの脆弱性がないかどうか静的診断をする gem です。

github.com

普通はターミナルから、

brakeman -o result.json -f json <Ruby on Rails アプリのルートディレクトリパス>

を実行して、Brakemanの診断結果を result.json などのファイルから確認しますが、以下のように、Ruby のコード内からもライブラリを利用して実行できます。

require 'brakeman'

app_root_dir_path='app root directory path'

tracker = Brakeman.run app_root_dir_path

#  brakeman で見つかった warnings の一覧を表示
p tracker.warnings

コマンドで実行する形で全然良いのですが、Ruby で実行と結果処理をまとめて記述できます。

参考

brakemanscanner.org