Ruby on Rails 3.0 and 2.3 JSON Parser vulnerability
RISK: Medium Risk
TYPE: Servers - Web Servers
A vulnerability has been identified in Ruby on Rails JSON Parser. The JSON code for Ruby on Rails which allows attackers to bypass authentication systems, inject arbitrary SQL, inject and execute arbitrary code, or perform a DoS attack on a Rails application.
The JSON Parsing code in Rails 2.3 and 3.0 support multiple parsing backends. One of the backends involves transforming the JSON into YAML, and passing that through the YAML parser. Using a specially crafted payload attackers can trick the backend into decoding a subset of YAML.
Impact
- Denial of Service
- Remote Code Execution
- Security Restriction Bypass
System / Technologies affected
- Ruby on Rails version 2.3.x, 3.0.x
Solutions
Before installation of the software, please visit the software manufacturer web-site for more details.
- Update to Ruby on Rails version 3.0.20, 2.3.16
- Workaround:
- Switching backends to the JSONGem backend. Place this code in an application initializer:
ActiveSupport::JSON.backend = "JSONGem"
If you are running Ruby 1.8 you will need to ensure that the `json` or `json_pure` gems are installed and in your application's Gemfile. Ruby 1.9 includes this code already.
- Switching backends to the JSONGem backend. Place this code in an application initializer:
Vulnerability Identifier
Source
Related Link
Share with