Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 572960 (CVE-2016-0753) - <dev-ruby/activemodel-4.{1.15,2.6}: Possible Input Validation Circumvention
Summary: <dev-ruby/activemodel-4.{1.15,2.6}: Possible Input Validation Circumvention
Status: RESOLVED FIXED
Alias: CVE-2016-0753
Product: Gentoo Security
Classification: Unclassified
Component: Vulnerabilities (show other bugs)
Hardware: All Linux
: Normal trivial (vote)
Assignee: Gentoo Security
URL: http://www.openwall.com/lists/oss-sec...
Whiteboard: ~3 [noglsa]
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-26 09:04 UTC by Agostino Sarubbo
Modified: 2016-06-05 12:42 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2016-01-26 09:04:52 UTC
From ${URL} :

Possible Input Validation Circumvention in Active Model

There is a possible input validation circumvention vulnerability in Active
Model. This vulnerability has been assigned the CVE identifier CVE-2016-0753.

Versions Affected:  4.1.0 and newer
Not affected:       4.0.13 and older
Fixed Versions:     5.0.0.beta1.1, 4.2.5.1, 4.1.14.1

Impact
------
Code that uses Active Model based models (including Active Record models) and
does not validate user input before passing it to the model can be subject to
an attack where specially crafted input will cause the model to skip
validations.

Vulnerable code will look something like this:

```ruby
SomeModel.new(unverified_user_input)
```

Rails users using Strong Parameters are generally not impacted by this issue
as they are encouraged to whitelist parameters and must specifically opt-out
of input verification using the `permit!` method to allow mass assignment.

For example, a vulnerable Rails application will have code that looks like
this:

```ruby
def create
  params.permit! # allow all parameters
  @user = User.new params[:users]
end
```

Active Model and Active Record objects are not equipped to handle arbitrary
user input.  It is up to the application to verify input before passing it to
Active Model models.  Rails users already have Strong Parameters in place to
handle white listing, but applications using Active Model and Active Record
outside of a Rails environment may be impacted.



@maintainer(s): since the fixed version is already in the tree, please remove the affected versions.
Comment 1 Hans de Graaff gentoo-dev Security 2016-02-07 17:53:46 UTC
Vulnerable versions of Rails 4.1 and 4.2 have been removed.
Comment 2 Aaron Bauman (RETIRED) gentoo-dev 2016-06-05 12:42:39 UTC
Cleanup complete per previous comments.