CVE-2017-12098
An exploitable XSS vulnerability exists in the add filter functionality of the rails_admin rails gem version 1.2.0. A specially crafted URL can cause an XSS flaw resulting in an attacker being able to execute arbitrary javascript on the victim’s browser. An attacker can phish an authenticated user to trigger this vulnerability.
rails_admin 1.2.0
https://github.com/sferik/rails_admin https://rubygems.org/gems/rails_admin/versions/1.2.0
6.1 - CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
CWE-79: Improper Neutralization of Input During Web Page Generation (‘Cross-site Scripting’)
The rails_admin gem has functionality which allows a user to create custom filters to find values within the admin interface. When a new filter is created using the UI, it redirects to a new url containing that filtering information in the form of
localhost:3000/admin/model?model_name=model&utf8=%E2%9C%93&f%5B password%5D%5B91178%5D%5Bv%5D=+%22%3E%3Cimg+src%3D%22%22+onerror%3D%22 alert(1)%22%3E&query=
This URL can them be used to phish an authenticated user and execute arbitrary javascript on their behalf.
This vulnerability was shown to occur using Chrome, Safari, and Firefox.
2017-09-20 - Vendor Disclosure
2017-09-28 - 2nd Vendor contact attempt
2017-10-11 - 3rd Vendor contact attempt
2017-12-05 - Final Vendor contact
2018-01-10 - Public Release
Discovered by Zachary Sanchez of Cisco ASIG