Brakeman是一款功能强大的静态安全分析工具,该工具旨在针对Ruby on Rails应用程序执行静态分析与安全漏洞扫描任务。
gem
使用 RubyGems:
gem install brakeman
使用Bundler:
group :development do
gem 'brakeman', require: false
end
使用Docker:
docker pull presidentbeef/brakeman
使用 Docker 从源代码构建:
git clone https://github.com/presidentbeef/brakeman.git
cd brakeman
docker build . -t brakeman
本地运行
从 Rails 应用程序的根目录运行:
brakeman
从 Rails 根目录之外的地方运行:
brakeman /path/to/rails/application
使用 Docker 运行
从 Rails 应用程序的根目录运行:
docker run -v "$(pwd)":/code presidentbeef/brakeman
开启颜色高亮显示:
docker run -v "$(pwd)":/code presidentbeef/brakeman --color
显示并输出 HTML 报告:
docker run -v "$(pwd)":/code presidentbeef/brakeman -o brakeman_results.html
在 Rails 根目录之外运行(请注意,输出文件与 path/to/rails/application 相关):
docker run -v 'path/to/rails/application':/code presidentbeef/brakeman -o brakeman_results.html
该工具的阐述选项可以存储并从 YAML 文件中读取,为了简化编写配置文件的过程,-C选项将输出当前设置的选项:
$ brakeman -C --skip-files plugins/
---
:skip_files:
- plugins/
默认配置位置为./config/brakeman.yml、~/.brakeman/config.yml和/etc/brakeman/config.yml。
需要注意的是,命令行中传递的选项优先于配置文件。
使用 Brakeman 的最简单方法是在 Rails 应用程序的根目录中直接运行它,无需任何选项:
cd your_rails_app/
brakeman
这将扫描当前目录中的应用程序并将报告输出到命令行。
或者,你可以向 Brakeman 提供一个路径作为选项:
brakeman your_rails_app
比如说:
brakeman -p your_rails_app
本项目的开发与发布遵循MIT开源许可协议。
Brakeman:
https://github.com/presidentbeef/brakeman