RubySec

Providing security resources for the Ruby community

CVE-2019-5420 (railties): Possible Remote Code Execution Exploit in Rails Development Mode

ADVISORIES

GEM

railties

FRAMEWORK

Ruby on Rails

SEVERITY

CVSS v3.x: 9.8 (Critical)

UNAFFECTED VERSIONS

  • < 5.2.0

PATCHED VERSIONS

  • ~> 5.2.2, >= 5.2.2.1
  • >= 6.0.0.beta3

DESCRIPTION

There is a possible a possible remote code executing exploit in Rails when in development mode. This vulnerability has been assigned the CVE identifier CVE-2019-5420.

Versions Affected: 6.0.0.X, 5.2.X. Not affected: < 5.2.0 Fixed Versions: 6.0.0.beta3, 5.2.2.1

Impact

With some knowledge of a target application it is possible for an attacker to guess the automatically generated development mode secret token. This secret token can be used in combination with other Rails internals to escalate to a remote code execution exploit.

All users running an affected release should either upgrade or use one of the workarounds immediately.

Releases

The 6.0.0.beta3 and 5.2.2.1 releases are available at the normal locations.

Workarounds

This issue can be mitigated by specifying a secret key in development mode. In "config/environments/development.rb" add this:

config.secret_key_base = SecureRandom.hex(64)

Credits

Thanks to ooooooo_q