Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
brakeman — Ruby on Railsアプリケーション向けの静的解析セキュリティ脆弱性スキャナー | Kitploit
ツール/GitHubGitHub/presidentbeef/brakeman
静的分析脆弱性スキャナーコード分析ウェブセキュリティDevSecOps
GitHubpresidentbeef/brakeman

brakeman

Ruby on Railsアプリケーション向けの静的解析セキュリティ脆弱性スキャナー

リポジトリを見る
7.3k7738日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

Brakeman ロゴ

Build Status Code Coverage

Brakeman

Brakeman は、Ruby on Rails アプリケーションのセキュリティ脆弱性をチェックする静的解析ツールです。

インストール

RubyGems を使用:

root@kitploit:~
gem install brakeman

Bundler を使用:

root@kitploit:~
group :development do
  gem 'brakeman', require: false
end

Docker を使用:

root@kitploit:~
docker pull presidentbeef/brakeman

ソースから Docker でビルド:

root@kitploit:~
git clone https://github.com/presidentbeef/brakeman.git
cd brakeman
docker build . -t brakeman

使用方法

ローカル環境で実行

Rails アプリケーションのルートディレクトリから:

root@kitploit:~
brakeman

Rails ルート外から:

root@kitploit:~
brakeman /path/to/rails/application

Docker で実行

Rails アプリケーションのルートディレクトリから:

root@kitploit:~
docker run -v "$(pwd)":/code presidentbeef/brakeman

もう少し見やすいカラーで:

root@kitploit:~
docker run -v "$(pwd)":/code presidentbeef/brakeman --color

HTML レポート出力用:

root@kitploit:~
docker run -v "$(pwd)":/code presidentbeef/brakeman -o brakeman_results.html

Rails ルート外から (出力ファイルは path/to/rails/application からの相対パスであることに注意):

root@kitploit:~
docker run -v 'path/to/rails/application':/code presidentbeef/brakeman -o brakeman_results.html

互換性

Brakeman は Rails 2.3.x から 8.x までのすべてのバージョンで動作するはずです。

Brakeman は Ruby 2.0 以降の構文で書かれたコードを解析できますが、実行には Ruby 3.2.0 以上が必要です。

基本オプション

全オプションの一覧は brakeman --help または OPTIONS.md ファイルを参照してください。

結果の出力ファイルを指定するには:

root@kitploit:~
brakeman -o output_file

出力形式はファイル拡張子または -f オプションで決定されます。現在のオプション: text, html, tabs, json, junit, markdown, csv, codeclimate, github, sarif, sonar。

複数の出力ファイルを指定できます:

root@kitploit:~
brakeman -o output.html -o output.json

ファイルとコンソールの両方にカラーで出力するには:

root@kitploit:~
brakeman --color -o /dev/stdout -o output.json

情報警告を抑制してレポートのみ出力するには:

root@kitploit:~
brakeman -q

Brakeman の出力 (レポート以外) はすべて stderr に送られるため、stdout をファイルにリダイレクトしてレポートだけを取得するのが簡単です。

デバッグ情報をすべて表示するには:

root@kitploit:~
brakeman -d

特定のチェックをスキップすることもできます。名前は正しい大文字小文字である必要があります。例: デフォルトルート (DefaultRoutes) のチェックをスキップ:

root@kitploit:~
brakeman -x DefaultRoutes

複数のチェックはカンマで区切ります:

root@kitploit:~
brakeman -x DefaultRoutes,Redirect

逆に特定のテストだけを実行するには:

root@kitploit:~
brakeman -t SQL,ValidationRegex

Brakeman の動作が遅い場合は、以下を試してください:

root@kitploit:~
brakeman --faster

これにより一部の機能が無効になりますが、通常はかなり高速になります (現在は --skip-libs --no-branching と同じです)。 警告: これにより Brakeman が一部の脆弱性を見逃す可能性があります。

デフォルトでは、セキュリティ警告が検出された場合やスキャンエラーが発生した場合、Brakeman はゼロ以外の終了コードを返します。これを無効にするには:

root@kitploit:~
brakeman --no-exit-on-warn --no-exit-on-error

Brakeman が解析に問題を抱える可能性がある特定のファイルやディレクトリをスキップするには:

root@kitploit:~
brakeman --skip-files file1,/path1/,path2/

以前のスキャン結果と比較するには、JSON 出力オプションを使用した後:

root@kitploit:~
brakeman --compare old_report.json

これにより、修正された警告と新たな警告の2つのリストを含む JSON が出力されます。

Brakeman は設定により警告を無視できます。デフォルトでは config/brakeman.ignore の設定ファイルを探します。このファイルを作成および管理するには:

root@kitploit:~
brakeman -I

終了コードに影響を与えずに、無視した警告を一時的に表示したい場合:

root@kitploit:~
brakeman --show-ignored

警告情報

このツールによって報告される警告の詳細については warning_types を参照してください。

警告コンテキスト

HTML 出力形式では、警告がトリガーされた元のアプリケーションソースの抜粋が提供されます。脆弱性を探すための処理中に、ソースが報告された警告と異なったり、報告された行番号がわずかにずれたりすることがあります。ただし、コンテキストは警告を発生させたコードへのクイックビューを提供します。

信頼度レベル

Brakeman は各警告に信頼度レベルを割り当てます。これは、特定の警告が実際に問題である確率の大まかな推定値を提供します。当然ながら、これらの評価は絶対的な真実として受け取るべきではありません。

信頼度には3つのレベルがあります:

  • 高 - 単純な警告 (ブール値) であるか、ユーザー入力が安全でない方法で使用されている可能性が非常に高い。
  • 中 - 一般に変数の安全でない使用を示しますが、その変数がユーザー入力かどうかは不明。
  • 弱 - 通常、ユーザー入力が間接的に安全でない可能性のある方法で使用されたことを意味します。

特定の信頼度以上の警告のみを取得するには:

root@kitploit:~
brakeman -w3

-w スイッチは 1 から 3 の数値を取り、1 は低 (すべての警告)、3 は高 (最も信頼度の高い警告のみ) です。

設定ファイル

Brakeman のオプションは YAML ファイルに保存して読み込むことができます。

設定ファイルの作成を簡略化するために、-C オプションは現在設定されているオプションを出力します:

root@kitploit:~
$ brakeman -C --skip-files plugins/
---
:skip_files:
- plugins/

コマンドラインで指定されたオプションは設定ファイルよりも優先されます。

デフォルトの設定場所は ./config/brakeman.yml、~/.brakeman/config.yml、/etc/brakeman/config.yml です。

-c オプションで使用する設定ファイルを指定できます。

継続的インテグレーション

Jenkins/Hudson 用の プラグイン が利用可能です。

さらに継続的なテストには Guard プラグイン をお試しください。

いくつかの GitHub Actions も利用可能です。

ビルド

root@kitploit:~
git clone git://github.com/presidentbeef/brakeman.git
cd brakeman
gem build brakeman.gemspec
gem install brakeman*.gem

Brakeman を使用している組織

  • Code Climate
  • GitHub
  • Groupon
  • New Relic
  • Twitter

他にも多数!

ホームページ/ニュース

ウェブサイト: http://brakemanscanner.org/

Twitter: https://twitter.com/brakeman

チャット: https://gitter.im/presidentbeef/brakeman

ライセンス

Brakeman は非商用利用において無料です。

詳細は COPYING を参照してください。

ツールをダウンロード