CVE-2013-2113: Medium severity red hat openstack for ibm power vulnerability
Ramon de C Valle (rcvalle) reports:
There is a mass assignment vulnerability in the create method of the UsersController controller.
The create method in app/controllers/userscontroller.rb deletes the user-controlled user[admin] parameter from the params hash but saves it to a local variable and assigns it to the newly created user object bypassing the :attrprotected mechanism.
def create admin = params[:user].delete :admin @user = User.new(params[:user]){|u| u.admin = admin } if @user.save @user.roles << Role.findbyname("Anonymous") unless @user.roles.map(&:name).include? "Anonymous" processsuccess else processerror end end
Any non-admin user with permissions to create other (non-admin) users (i.e. with Manager role) can create arbitrary admin users by sending a specially-crafted POST request.
Other sources
The create method in app/controllers/userscontroller.rb in Foreman before 1.2.0-RC2 allows remote authenticated users with permissions to create or edit other users to gain privileges by (1) changing the admin flag or (2) assigning an arbitrary role.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2013-2113?
CVE-2013-2113 is classified as a medium severity vulnerability.
How do I fix CVE-2013-2113?
To fix CVE-2013-2113, update the UsersController to properly validate inputs and prevent mass assignment of unwanted parameters.
Which versions are affected by CVE-2013-2113?
CVE-2013-2113 affects Red Hat OpenStack version 3.0 and Foreman versions 1.1 and below to 1.2.0 inclusive.
What type of vulnerability is CVE-2013-2113?
CVE-2013-2113 is a mass assignment vulnerability found in the create method of the UsersController.
Who reported CVE-2013-2113?
CVE-2013-2113 was reported by Ramon de C Valle.