CSRF Vulnerability in rails-ujs
Moderate severity
GitHub Reviewed
Published
Jul 7, 2020
to the GitHub Advisory Database
•
Updated Aug 17, 2023
Package
Affected versions
>= 5.0.0, <= 5.2.4.2
>= 6.0.0, <= 6.0.3
Patched versions
5.2.4.3
6.0.3.1
Description
Published by the National Vulnerability Database
Jun 19, 2020
Reviewed
Jul 7, 2020
Published to the GitHub Advisory Database
Jul 7, 2020
Last updated
Aug 17, 2023
There is a vulnerability in rails-ujs that allows attackers to send CSRF tokens to wrong domains.
Versions Affected: rails <= 6.0.3
Not affected: Applications which don't use rails-ujs.
Fixed Versions: rails >= 5.2.4.3, rails >= 6.0.3.1
Impact
This is a regression of CVE-2015-1840.
In the scenario where an attacker might be able to control the href attribute of an anchor tag or the action attribute of a form tag that will trigger a POST action, the attacker can set the href or action to a cross-origin URL, and the CSRF token will be sent.
Workarounds
To work around this problem, change code that allows users to control the href attribute of an anchor tag or the action attribute of a form tag to filter the user parameters.
For example, code like this:
to code like this:
References