SuperAPI AI 工具集

brakeman

安全与审计

查看项目

更新于 10-15 21:37

技能介绍

用途:Brakeman 是 Ruby on Rails 应用的静态安全分析工具,不运行应用即可分析源码,检测 SQL 注入、跨站脚本、命令注入、批量赋值、CSRF、远程代码执行、路径遍历、不安全重定向等 30 多种漏洞类型。

安装:需 Ruby 3.0.0+ 运行,可分析 Ruby 2.0+ 语法,兼容 Rails 2.3.x 至 8.x。安装方式:gem install brakeman;或在 Gemfile 的 development 组加入 gem 'brakeman', require: false;或使用 Docker:docker pull presidentbeef/brakeman。

主要能力与用法:在 Rails 根目录运行 brakeman 即可扫描,也可指定路径 brakeman /path/to/app。输出格式支持 text、html、tabs、json、junit、markdown、csv、codeclimate、sonar,用 -o 指定,可多格式同时输出,如 brakeman -o report.html -o report.json。按置信度过滤:-w3 仅高置信度,-w2 高与中,-w1 全部(默认)。只运行指定检查:brakeman -t SQL,CrossSiteScripting;跳过检查:brakeman -x DefaultRoutes,Redirect。用 brakeman -I 交互管理误报,结果保存到 config/brakeman.ignore,建议加备注说明。查看已忽略告警:brakeman --show-ignored。用 --compare baseline.json 对比扫描,显示修复与新增告警。配置文件默认读取 ./config/brakeman.yml、~/.brakeman/config.yml、/etc/brakeman/config.yml,可用 -c 指定,命令行选项优先。加速:--faster(等同 --skip-libs --no-branching),可能漏报;跳过文件:--skip-files。自定义净化方法可用 --safe-methods 标记。退出码可用 --no-exit-on-warn、--no-exit-on-error 调整。调试用 -d。

适用场景:开发流程与 CI/CD 安全门禁、初次安全评估、跟踪安全改进、减少告警噪声。可集成 GitHub Actions、Jenkins、Guard(gem install guard-brakeman)等。

限制:使用 --faster 可能漏报;存在误报,需人工核查或配置忽略;忽略告警应加备注并定期复查;扫描大型目录可能较慢。官方文档见 brakemanscanner.org。