Active Record: SQL injection

2014-01-21T00:00:00
ID GLSA-201401-22
Type gentoo
Reporter Gentoo Foundation
Modified 2014-01-21T00:00:00

Description

Background

Active Record is a Ruby gem that allows database entries to be manipulated as objects.

Description

An Active Record method parameter can mistakenly be used as a scope.

Impact

A remote attacker could use specially crafted input to execute arbitrary SQL statements.

Workaround

The vulnerability may be mitigated by converting the input to an expected value. This is accomplished by changing instances of ‘Post.find_by_id(params[:id])’ in code using Active Record to ‘Post.find_by_id(params[:id].to_s)’

Resolution

All Active Record users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-ruby/activerecord-2.3.14-r1"