Ruby/actionpack/7.1.0


Web apps on Rails. Simple, battle-tested conventions for building and testing MVC web applications. Works with any Rack-compatible server.

https://rubygems.org/gems/actionpack
MIT

4 Security Vulnerabilities

Rails has possible XSS Vulnerability in Action Controller

Published date: 2024-02-27T21:41:12Z
CVE: CVE-2024-26143
Links:

Possible XSS Vulnerability in Action Controller

There is a possible XSS vulnerability when using the translation helpers (translate, t, etc) in Action Controller. This vulnerability has been assigned the CVE identifier CVE-2024-26143.

Versions Affected: >= 7.0.0. Not affected: < 7.0.0 Fixed Versions: 7.1.3.1, 7.0.8.1

Impact

Applications using translation methods like translate, or t on a controller, with a key ending in _html, a :default key which contains untrusted user input, and the resulting string is used in a view, may be susceptible to an XSS vulnerability.

For example, impacted code will look something like this:

class ArticlesController < ApplicationController
  def show  
    @message = t("message_html", default: untrusted_input)
    # The `show` template displays the contents of `@message`
  end
end

To reiterate the pre-conditions, applications must:

  • Use a translation function from a controller (i.e. not I18n.t, or t from a view)
  • Use a key that ends in _html
  • Use a default value where the default value is untrusted and unescaped input
  • Send the text to the victim (whether that's part of a template, or a render call)

All users running an affected release should either upgrade or use one of the workarounds immediately.

Releases

The fixed releases are available at the normal locations.

Workarounds

There are no feasible workarounds for this issue.

Patches

To aid users who aren't able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.

  • 7-0-translate-xss.patch - Patch for 7.0 series
  • 7-1-translate-xss.patch - Patch for 7.1 series

Credits

Thanks to ooooooo_q for the patch and fix!

Affected versions: ["7.1.0", "7.1.1", "7.1.2", "7.1.3", "7.0.0", "7.0.1", "7.0.2", "7.0.2.2", "7.0.2.1", "7.0.2.3", "7.0.2.4", "7.0.3", "7.0.3.1", "7.0.4", "7.0.4.1", "7.0.4.2", "7.0.4.3", "7.0.5", "7.0.5.1", "7.0.6", "7.0.7", "7.0.7.2", "7.0.7.1", "7.0.8"]
Secure versions: [7.1.3.2, 7.1.3.1, 7.0.8.1]
Recommendation: Update to version 7.1.3.2.

Rails has possible ReDoS vulnerability in Accept header parsing in Action Dispatch

Published date: 2024-02-27T21:41:09Z
CVE: CVE-2024-26142
Links:

Possible ReDoS vulnerability in Accept header parsing in Action Dispatch

There is a possible ReDoS vulnerability in the Accept header parsing routines of Action Dispatch. This vulnerability has been assigned the CVE identifier CVE-2024-26142.

Versions Affected: >= 7.1.0, < 7.1.3.1 Not affected: < 7.1.0 Fixed Versions: 7.1.3.1

Impact

Carefully crafted Accept headers can cause Accept header parsing in Action Dispatch to take an unexpected amount of time, possibly resulting in a DoS vulnerability. All users running an affected release should either upgrade or use one of the workarounds immediately.

Ruby 3.2 has mitigations for this problem, so Rails applications using Ruby 3.2 or newer are unaffected.

Releases

The fixed releases are available at the normal locations.

Workarounds

There are no feasible workarounds for this issue.

Patches

To aid users who aren't able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.

  • 7-1-accept-redox.patch - Patch for 7.1 series

Credits

Thanks svalkanov for the report and patch!

Affected versions: ["7.1.0", "7.1.1", "7.1.2", "7.1.3"]
Secure versions: [7.1.3.2, 7.1.3.1, 7.0.8.1]
Recommendation: Update to version 7.1.3.2.

Possible ReDoS vulnerability in Accept header parsing in Action Dispatch

Published date: 2024-02-21
Framework: rails
CVE: 2024-26142
Links:

There is a possible ReDoS vulnerability in the Accept header parsing routines of Action Dispatch. This vulnerability has been assigned the CVE identifier CVE-2024-26142.

Versions Affected: >= 7.1.0, < 7.1.3.1 Not affected: < 7.1.0 Fixed Versions: 7.1.3.1

Impact

Carefully crafted Accept headers can cause Accept header parsing in Action Dispatch to take an unexpected amount of time, possibly resulting in a DoS vulnerability. All users running an affected release should either upgrade or use one of the workarounds immediately.

Ruby 3.2 has mitigations for this problem, so Rails applications using Ruby 3.2 or newer are unaffected.

Releases

The fixed releases are available at the normal locations.

Workarounds

There are no feasible workarounds for this issue.

Affected versions: ["7.1.0", "7.1.1", "7.1.2", "7.1.3"]
Secure versions: [7.1.3.2, 7.1.3.1, 7.0.8.1]
Recommendation: Update to version 7.1.3.2.

Possible XSS Vulnerability in Action Controller

Published date: 2024-02-21
Framework: rails
CVE: 2024-26143
CVSS V3: 6.1
Links:

There is a possible XSS vulnerability when using the translation helpers (translate, t, etc) in Action Controller. This vulnerability has been assigned the CVE identifier CVE-2024-26143.

Versions Affected: >= 7.0.0 Not affected: < 7.0.0 Fixed Versions: 7.1.3.1, 7.0.8.1

Impact

Applications using translation methods like translate, or t on a controller, with a key ending in “_html”, a :default key which contains untrusted user input, and the resulting string is used in a view, may be susceptible to an XSS vulnerability.

For example, impacted code will look something like this:

class ArticlesController < ApplicationController
  def show
    @message = t("message_html", default: untrusted_input)
    # The `show` template displays the contents of `@message`
  end
end

To reiterate the pre-conditions, applications must:

  • Use a translation function from a controller (i.e. not I18n.t, or t from a view)
  • Use a key that ends in _html
  • Use a default value where the default value is untrusted and unescaped input
  • Send the text to the victim (whether that’s part of a template, or a render call)

All users running an affected release should either upgrade or use one of the workarounds immediately.

Releases

The fixed releases are available at the normal locations.

Workarounds

There are no feasible workarounds for this issue.

Affected versions: ["7.0.0", "7.0.1", "7.0.2", "7.0.2.2", "7.0.2.1", "7.0.2.3", "7.0.2.4", "7.0.3", "7.0.3.1", "7.0.4", "7.0.4.1", "7.0.4.2", "7.0.4.3", "7.0.5", "7.0.5.1", "7.0.6", "7.0.7", "7.0.7.2", "7.0.7.1", "7.0.8", "7.1.0.beta1", "7.1.0.rc1", "7.1.0.rc2", "7.1.0", "7.1.1", "7.1.2", "7.1.3"]
Secure versions: [7.1.3.2, 7.1.3.1, 7.0.8.1]
Recommendation: Update to version 7.1.3.2.

464 Other Versions

Version License Security Released
4.2.2 MIT 26 2015-06-16 - 18:02 almost 9 years
4.2.1 MIT 26 2015-03-19 - 16:41 about 9 years
4.2.1.rc4 MIT 26 2015-03-12 - 21:25 about 9 years
4.2.1.rc3 MIT 26 2015-03-02 - 21:35 about 9 years
4.2.1.rc2 MIT 26 2015-02-25 - 22:19 about 9 years
4.2.1.rc1 MIT 26 2015-02-20 - 22:20 about 9 years
4.2.0 MIT 26 2014-12-20 - 00:15 over 9 years
4.2.0.rc3 MIT 19 2014-12-13 - 02:58 over 9 years
4.2.0.rc2 MIT 19 2014-12-05 - 23:19 over 9 years
4.2.0.rc1 MIT 19 2014-11-28 - 17:52 over 9 years
4.2.0.beta4 MIT 19 2014-10-30 - 22:12 over 9 years
4.2.0.beta3 MIT 20 2014-10-30 - 18:35 over 9 years
4.2.0.beta2 MIT 22 2014-09-26 - 17:44 over 9 years
4.2.0.beta1 MIT 22 2014-08-20 - 02:34 over 9 years
4.1.16 MIT 15 2016-07-12 - 22:20 almost 8 years
4.1.16.rc1 MIT 15 2016-07-02 - 02:14 almost 8 years
4.1.15 MIT 15 2016-03-07 - 22:36 about 8 years
4.1.15.rc1 MIT 15 2016-03-01 - 18:43 about 8 years
4.1.14.2 MIT 15 2016-02-29 - 19:18 about 8 years
4.1.14.1 MIT 19 2016-01-25 - 19:23 over 8 years
4.1.14 MIT 28 2015-11-12 - 17:21 over 8 years
4.1.14.rc2 MIT 28 2015-11-05 - 02:54 over 8 years
4.1.14.rc1 MIT 28 2015-10-30 - 20:45 over 8 years
4.1.13 MIT 28 2015-08-24 - 18:02 over 8 years
4.1.13.rc1 MIT 28 2015-08-14 - 15:12 almost 9 years
4.1.12 MIT 28 2015-06-25 - 21:25 almost 9 years
4.1.12.rc1 MIT 28 2015-06-22 - 14:04 almost 9 years
4.1.11 MIT 28 2015-06-16 - 17:59 almost 9 years
4.1.10 MIT 28 2015-03-19 - 16:49 about 9 years
4.1.10.rc4 MIT 28 2015-03-12 - 21:32 about 9 years
4.1.10.rc3 MIT 28 2015-03-02 - 21:39 about 9 years
4.1.10.rc2 MIT 28 2015-02-25 - 22:21 about 9 years
4.1.10.rc1 MIT 28 2015-02-20 - 22:24 about 9 years
4.1.9 MIT 28 2015-01-06 - 20:03 over 9 years
4.1.9.rc1 MIT 28 2015-01-02 - 01:10 over 9 years
4.1.8 MIT 28 2014-11-17 - 15:58 over 9 years
4.1.7.1 MIT 30 2014-11-19 - 19:11 over 9 years
4.1.7 MIT 31 2014-10-30 - 18:35 over 9 years
4.1.6 MIT 33 2014-09-11 - 17:25 over 9 years
4.1.6.rc2 MIT 33 2014-09-08 - 18:12 over 9 years
4.1.6.rc1 MIT 33 2014-08-19 - 20:52 over 9 years
4.1.5 MIT 33 2014-08-18 - 17:00 over 9 years
4.1.4 MIT 33 2014-07-02 - 19:53 almost 10 years
4.1.3 MIT 33 2014-07-02 - 17:06 almost 10 years
4.1.2 MIT 33 2014-06-26 - 14:49 almost 10 years
4.1.2.rc3 MIT 33 2014-06-23 - 17:28 almost 10 years
4.1.2.rc2 MIT 33 2014-06-16 - 16:30 almost 10 years
4.1.2.rc1 MIT 33 2014-05-27 - 16:12 almost 10 years
4.1.1 MIT 33 2014-05-06 - 16:10 about 10 years
4.1.0 MIT 36 2014-04-08 - 19:20 about 10 years
4.1.0.rc2 MIT 32 2014-03-25 - 20:12 about 10 years
4.1.0.rc1 MIT 32 2014-02-18 - 20:58 about 10 years
4.1.0.beta2 MIT 32 2014-02-18 - 18:51 about 10 years
4.1.0.beta1 MIT 33 2013-12-18 - 00:14 over 10 years
4.0.13 MIT 31 2015-01-06 - 20:08 over 9 years
4.0.13.rc1 MIT 31 2015-01-02 - 00:54 over 9 years
4.0.12 MIT 31 2014-11-17 - 15:58 over 9 years
4.0.11.1 MIT 33 2014-11-19 - 19:09 over 9 years
4.0.11 MIT 33 2014-10-30 - 18:35 over 9 years
4.0.10 MIT 35 2014-09-11 - 17:32 over 9 years
4.0.10.rc2 MIT 35 2014-09-08 - 17:55 over 9 years
4.0.10.rc1 MIT 35 2014-08-19 - 20:48 over 9 years
4.0.9 MIT 35 2014-08-18 - 17:02 over 9 years
4.0.8 MIT 35 2014-07-02 - 19:41 almost 10 years
4.0.7 MIT 35 2014-07-02 - 17:03 almost 10 years
4.0.6 MIT 35 2014-06-26 - 16:28 almost 10 years
4.0.6.rc3 MIT 35 2014-06-23 - 17:23 almost 10 years
4.0.6.rc2 MIT 35 2014-06-16 - 16:15 almost 10 years
4.0.6.rc1 MIT 35 2014-05-27 - 16:06 almost 10 years
4.0.5 MIT 35 2014-05-06 - 16:12 about 10 years
4.0.4 MIT 37 2014-03-14 - 17:36 about 10 years
4.0.4.rc1 MIT 37 2014-03-11 - 17:30 about 10 years
4.0.3 MIT 37 2014-02-18 - 18:49 about 10 years
4.0.2 MIT 38 2013-12-03 - 19:00 over 10 years
4.0.1 MIT 53 2013-11-01 - 19:07 over 10 years
4.0.1.rc4 MIT 53 2013-10-30 - 20:48 over 10 years
4.0.1.rc3 MIT 53 2013-10-23 - 21:40 over 10 years
4.0.1.rc2 MIT 53 2013-10-21 - 21:55 over 10 years
4.0.1.rc1 MIT 53 2013-10-17 - 16:45 over 10 years
4.0.0 MIT 53 2013-06-25 - 14:32 almost 11 years
4.0.0.rc2 MIT 26 2013-06-11 - 20:24 almost 11 years
4.0.0.rc1 MIT 26 2013-04-29 - 15:38 about 11 years
4.0.0.beta1 MIT 26 2013-02-26 - 00:05 about 11 years
3.2.22.5 MIT 10 2016-09-14 - 21:18 over 7 years
3.2.22.4 MIT 10 2016-08-11 - 19:19 almost 8 years
3.2.22.3 MIT 10 2016-08-11 - 17:31 almost 8 years
3.2.22.2 MIT 11 2016-02-29 - 19:23 about 8 years
3.2.22.1 MIT 14 2016-01-25 - 19:23 over 8 years
3.2.22 MIT 25 2015-06-16 - 18:06 almost 9 years
3.2.21 MIT 25 2014-11-17 - 15:58 over 9 years
3.2.20 MIT 27 2014-10-30 - 18:35 over 9 years
3.2.19 MIT 29 2014-07-02 - 17:02 almost 10 years
3.2.18 MIT 29 2014-05-06 - 16:16 about 10 years
3.2.17 MIT 31 2014-02-18 - 18:54 about 10 years
3.2.16 MIT 34 2013-12-03 - 19:00 over 10 years
3.2.15 MIT 38 2013-10-16 - 17:22 over 10 years
3.2.15.rc3 MIT 38 2013-10-11 - 21:16 over 10 years
3.2.15.rc2 MIT 38 2013-10-04 - 20:48 over 10 years
3.2.15.rc1 MIT 38 2013-10-03 - 18:53 over 10 years
3.2.14 MIT 38 2013-07-22 - 16:43 almost 11 years