Skip to content

Upgrading brakeman 1 to 2

Breaking1.9.5 → 2.6.3Breaking5Security20New25Changed8Fixed30Other39

BreakingUpgrade verdict

5 breaking changes and 20 security fixes.

  • Remove unused warning codes (Bill Fischer).
  • Remove rescue Exception.
  • Remove fuzzy matching on dangerous attr_accessible values.
  • Remove "timestamp" key from JSON reports.
Top 5 of 25 that need code or config changes

Requires Ruby >= 0 from 2.4.2 (none stated before).

Breaking5
Remove unused warning codes (Bill Fischer).
Remove rescue Exception.
Remove fuzzy matching on dangerous attr_accessible values.
Remove "timestamp" key from JSON reports.
Remove deprecated config file locations.
Security20
Whitelist exists arel method from SQL injection check.
exists
Add check for CVE-2014-3514.
Fix SQL injection detection in deep nested string building.
Add check for CVE-2014-3482 and CVE-2014-3483.
Add check for CVE-2014-0130.
Add check for regex denial of service (Ben Toews).
Add check for CVE-2014-0082.
Add check for CVE-2014-0081, replaces CVE-2013-6415.
Add check for CVE-2014-0080.
Add check for CVE-2013-4491 (i18n XSS).
Add check for CVE-2013-6414 (header DoS).
Add check for CVE-2013-6415 (number_to_currency).
Add check for CVE-2013-6416 (simple_format XSS).
Add check for CVE-2013-6417 (query generation).
Fix Slim XSS false positives (Noah Davis).
Reduce command injection false positives.
Do not warn about to_json XSS in Rails 4.
to_json
Refactor of SQL injection check code (Bart ten Brinke).
Fix detection of duplicate XSS warnings.
Add more methods to check for command injection.