CVE-2015-7581
actionpack is vulnerable to denial of service because of a wildcard controller route
CVE-2015-7581 is a high vulnerability (CVSS 7.5) in Rubyonrails Rails, published January 31, 2016. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 6.71%, the 93rd percentile. Fixed in actionpack 4.2.5.1.
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
7.5
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
CVE-2015-7581- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:N/I:N/A:P - Weakness
- CWE-399
- Updated
- 2026-11-02
CVE List No score
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
CVE-2015-7581- Updated
- 2026-11-02
EUVDEUVD-2017-0205 No score
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
EUVD-2017-0205- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-9h6g-gp95-x3q5
7.5
actionpack is vulnerable to denial of service because of a wildcard controller route
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
GHSA-9h6g-gp95-x3q5- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSV
7.5
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
CVE-2015-7581- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2015-7581
7.5
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
DEBIAN-CVE-2015-7581- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
Show 5 moreShow less
OSVGHSA-9h6g-gp95-x3q5
7.5
actionpack is vulnerable to denial of service because of a wildcard controller route
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
GHSA-9h6g-gp95-x3q5- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2015-7581
7.5
actionpack/lib/action_dispatch/routing/route_set.rb in Action Pack in Ruby on Rails 4.x before 4.2.5.1 and 5.x before 5.0.0.beta1.1 allows remote attackers to cause a denial of service (superfluous caching and memory consumption) by leveraging an application's use of a wildcard controller route.
- Record
UBUNTU-CVE-2015-7581- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVSUSE-SU-2016:0457-1 No score
Security update for rubygem-actionpack-4_2
This update for rubygem-actionpack-4_2 fixes the following issues:
- CVE-2016-0751: Object Leak DoS (bsc#963331)
- CVE-2015-7581: unbounded memory growth DoS via wildcard controller routes (bsc#963335)
- CVE-2016-0752: directory traversal and information leak in Action View (bsc#963332)
- CVE-2015-7576: Timing attack vulnerability in basic authentication in Action Controller (bsc#963329)
- Record
SUSE-SU-2016:0457-1- Updated
- 2026-11-02
OSVSUSE-SU-2016:0858-1 No score
Security update for rubygem-actionpack-4_1
This update for rubygem-actionpack-4_1 fixes the following issues:
- CVE-2016-0751: Object Leak DoS (bsc#963331)
- CVE-2015-7581: unbounded memory growth DoS via wildcard controller routes (bsc#963335)
- CVE-2016-0752: directory traversal and information leak in Action View (bsc#963332)
- CVE-2015-7576: Timing attack vulnerability in basic authentication in Action Controller (bsc#963329)
- Record
SUSE-SU-2016:0858-1- Updated
- 2026-11-02
OSVSUSE-SU-2016:1146-1 No score
Security update for portus
Portus was updated to version 2.0.3, which brings several fixes and enhancements:
- Fixed crono job when a repository could not be found.
- Fixed compatibility issues with Docker 1.10 and Distribution 2.3.
- Handle multiple scopes in token requests.
- Add optional fields to token response.
- Fixed notification events for Distribution v2.3.
- Paginate through the catalog properly.
- Do not remove all the repositories if fetching one fails.
- Fixed SMTP setup.
- Don't let crono overflow the 'log' column on the DB.
- Show the actual LDAP error on invalid login.
- Fixed the location of crono logs.
- Always use relative paths.
- Set RUBYLIB when using portusctl.
- Don't count hidden teams on the admin panel.
- Warn developers on unsupported docker-compose versions.
- Directly invalidate LDAP logins without name and password.
- Don't show the 'I forgot my password' link on LDAP.
The following Rubygems bundled within Portus have been updated to fix security issues:
- CVE-2016-2098: rubygem-actionpack (bsc#969943).
- CVE-2015-7578: rails-html-sanitizer (bsc#963326).
- CVE-2015-7579: rails-html-sanitizer (bsc#963327).
- CVE-2015-7580: rails-html-sanitizer (bsc#963328).
- CVE-2015-7576: rubygem-actionpack, rubygem-activesupport (bsc#963563).
- CVE-2015-7577: rubygem-activerecord (bsc#963604).
- CVE-2016-0751: rugygem-actionpack (bsc#963627).
- CVE-2016-0752: rubygem-actionpack, rubygem-actionview (bsc#963608).
- CVE-2016-0753: rubygem-activemodel, rubygem-activesupport, rubygem-activerecord (bsc#963617).
- CVE-2015-7581: rubygem-actionpack (bsc#963625).
- Record
SUSE-SU-2016:1146-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
actionpackRubyGems |
4.0.0 to 4.2.5.0 | 4.2.5.1 |
railsDebian:12 |
before 2:4.2.5.1-1 | 2:4.2.5.1-1 |
railsDebian:13 |
before 2:4.2.5.1-1 | 2:4.2.5.1-1 |
railsDebian:14 |
before 2:4.2.5.1-1 | 2:4.2.5.1-1 |
railsDebian:8 |
before 2:4.1.8-1+deb8u1, plus listed versions 2:4.1.8-1 |
2:4.1.8-1+deb8u1 |
actionpackRubyGems |
4.0.0 up to 4.2.5.1, plus listed versions 4.0.14.0.1.rc14.0.1.rc24.0.1.rc34.0.1.rc4 Show 45 moreShow less4.0.104.0.10.rc14.0.10.rc24.0.114.0.11.14.0.124.0.134.0.13.rc14.0.24.0.34.0.44.0.4.rc14.0.54.0.64.0.6.rc14.0.6.rc24.0.6.rc34.0.74.0.84.0.94.1.04.1.0.beta14.1.0.beta24.1.0.rc14.1.0.rc24.1.14.1.104.1.10.rc14.1.10.rc24.1.10.rc34.1.10.rc44.1.114.1.124.1.12.rc14.1.134.1.13.rc14.1.144.1.14.14.1.14.24.1.14.rc14.1.14.rc24.1.154.1.15.rc14.1.164.1.16.rc1 |
4.2.5.1 |
rh-ror41-rubygem-actionpackRed Hat:rhel_software_collections:2::el6 |
before 1:4.1.5-3.el6 | 1:4.1.5-3.el6 |
rh-ror41-rubygem-actionpack-docRed Hat:rhel_software_collections:2::el6 |
before 1:4.1.5-3.el6 | 1:4.1.5-3.el6 |
rh-ror41-rubygem-actionviewRed Hat:rhel_software_collections:2::el6 |
before 0:4.1.5-4.el6 | 0:4.1.5-4.el6 |
rh-ror41-rubygem-actionview-docRed Hat:rhel_software_collections:2::el6 |
before 0:4.1.5-4.el6 | 0:4.1.5-4.el6 |
Show 27 moreShow less
| Package | Affected | Fixed |
|---|---|---|
rh-ror41-rubygem-activemodelRed Hat:rhel_software_collections:2::el6 |
before 0:4.1.5-2.el6 | 0:4.1.5-2.el6 |
rh-ror41-rubygem-activemodel-docRed Hat:rhel_software_collections:2::el6 |
before 0:4.1.5-2.el6 | 0:4.1.5-2.el6 |
rh-ror41-rubygem-activerecordRed Hat:rhel_software_collections:2::el6 |
before 1:4.1.5-2.el6 | 1:4.1.5-2.el6 |
rh-ror41-rubygem-activerecord-docRed Hat:rhel_software_collections:2::el6 |
before 1:4.1.5-2.el6 | 1:4.1.5-2.el6 |
rh-ror41-rubygem-activesupportRed Hat:rhel_software_collections:2::el6 |
before 1:4.1.5-3.el6 | 1:4.1.5-3.el6 |
rh-ror41-rubygem-actionpackRed Hat:rhel_software_collections:2::el7 |
before 1:4.1.5-3.el7 | 1:4.1.5-3.el7 |
rh-ror41-rubygem-actionpack-docRed Hat:rhel_software_collections:2::el7 |
before 1:4.1.5-3.el7 | 1:4.1.5-3.el7 |
rh-ror41-rubygem-actionviewRed Hat:rhel_software_collections:2::el7 |
before 0:4.1.5-4.el7 | 0:4.1.5-4.el7 |
rh-ror41-rubygem-actionview-docRed Hat:rhel_software_collections:2::el7 |
before 0:4.1.5-4.el7 | 0:4.1.5-4.el7 |
rh-ror41-rubygem-activemodelRed Hat:rhel_software_collections:2::el7 |
before 0:4.1.5-2.el7 | 0:4.1.5-2.el7 |
rh-ror41-rubygem-activemodel-docRed Hat:rhel_software_collections:2::el7 |
before 0:4.1.5-2.el7 | 0:4.1.5-2.el7 |
rh-ror41-rubygem-activerecordRed Hat:rhel_software_collections:2::el7 |
before 1:4.1.5-2.el7 | 1:4.1.5-2.el7 |
rh-ror41-rubygem-activerecord-docRed Hat:rhel_software_collections:2::el7 |
before 1:4.1.5-2.el7 | 1:4.1.5-2.el7 |
rh-ror41-rubygem-activesupportRed Hat:rhel_software_collections:2::el7 |
before 1:4.1.5-3.el7 | 1:4.1.5-3.el7 |
ror40-rubygem-actionpackRed Hat:rhel_software_collections:2::el6 |
before 1:4.0.2-7.el6 | 1:4.0.2-7.el6 |
ror40-rubygem-actionpack-docRed Hat:rhel_software_collections:2::el6 |
before 1:4.0.2-7.el6 | 1:4.0.2-7.el6 |
ror40-rubygem-activerecordRed Hat:rhel_software_collections:2::el6 |
before 1:4.0.2-6.el6 | 1:4.0.2-6.el6 |
ror40-rubygem-activerecord-docRed Hat:rhel_software_collections:2::el6 |
before 1:4.0.2-6.el6 | 1:4.0.2-6.el6 |
ror40-rubygem-activesupportRed Hat:rhel_software_collections:2::el6 |
before 1:4.0.2-4.el6 | 1:4.0.2-4.el6 |
ror40-rubygem-actionpackRed Hat:rhel_software_collections:2::el7 |
before 1:4.0.2-7.el7 | 1:4.0.2-7.el7 |
ror40-rubygem-actionpack-docRed Hat:rhel_software_collections:2::el7 |
before 1:4.0.2-7.el7 | 1:4.0.2-7.el7 |
ror40-rubygem-activerecordRed Hat:rhel_software_collections:2::el7 |
before 1:4.0.2-6.el7 | 1:4.0.2-6.el7 |
ror40-rubygem-activerecord-docRed Hat:rhel_software_collections:2::el7 |
before 1:4.0.2-6.el7 | 1:4.0.2-6.el7 |
ror40-rubygem-activesupportRed Hat:rhel_software_collections:2::el7 |
before 1:4.0.2-4.el7 | 1:4.0.2-4.el7 |
rubygem-actionpack-4_2SUSE:Enterprise Storage 2.1 |
before 4.2.2-6.1 | 4.2.2-6.1 |
rubygem-actionpack-4_1SUSE:OpenStack Cloud 5 |
before 4.1.9-9.1 | 4.1.9-9.1 |
portusSUSE:Linux Enterprise Module for Containers 12 |
before 2.0.3-2.4 | 2.0.3-2.4 |
History
| When | Changed | Sources |
|---|---|---|
| 2026-11-03 | affected | |
| 2026-11-03 | aliases | EUVD |
| 2026-11-02 | created | CVE List, GitHub Advisories, NVD, OSV |
References
groups.google.com/forum/message/raw?msg=ruby-security-ann/dthJ5wL69JE/IdvCimtZEgAJ
lists.opensuse.org/opensuse-updates/2016-02/msg00043.html
openwall.com/lists/oss-security/2016/01/25/16
lists.fedoraproject.org/pipermail/package-announce/2016-February/178043.html
lists.fedoraproject.org/pipermail/package-announce/2016-February/178067.html
lists.opensuse.org/opensuse-security-announce/2016-04/msg00053.html
Show 79 moreShow less
securitytracker.com/id/1034816
debian.org/security/2016/dsa-3464
rhn.redhat.com/errata/RHSA-2016-0296.html
securityfocus.com/bid/81677
nvd.nist.gov/vuln/detail/CVE-2015-7581
github.com/rubysec/ruby-advisory-db/blob/master/gems/actionpack/CVE-2015-7581.yml
groups.google.com/forum
web.archive.org/web/20200228001849/http://www.securityfocus.com/bid/81677
web.archive.org/web/20200516093752/http://www.securitytracker.com/id/1034816
github.com/advisories/GHSA-9h6g-gp95-x3q5
security-tracker.debian.org/tracker/CVE-2015-7581
access.redhat.com/errata/RHSA-2016:0296
access.redhat.com/security/updates/classification
bugzilla.redhat.com/show_bug.cgi?id=1301933
bugzilla.redhat.com/show_bug.cgi?id=1301946
bugzilla.redhat.com/show_bug.cgi?id=1301957
bugzilla.redhat.com/show_bug.cgi?id=1301963
bugzilla.redhat.com/show_bug.cgi?id=1301973
bugzilla.redhat.com/show_bug.cgi?id=1301981
security.access.redhat.com/data/csaf/v2/advisories/2016/rhsa-2016_0296.json
access.redhat.com/security/cve/CVE-2015-7576
cve.org/CVERecord?id=CVE-2015-7576
nvd.nist.gov/vuln/detail/CVE-2015-7576
weblog.rubyonrails.org/2016/1/25/Rails-5-0-0-beta1-1-4-2-5-1-4-1-14-1-3-2-22-1-and-rails-html-sanitizer-1-0-3-have-been-released
access.redhat.com/security/cve/CVE-2015-7577
cve.org/CVERecord?id=CVE-2015-7577
nvd.nist.gov/vuln/detail/CVE-2015-7577
access.redhat.com/security/cve/CVE-2015-7581
cve.org/CVERecord?id=CVE-2015-7581
access.redhat.com/security/cve/CVE-2016-0751
cve.org/CVERecord?id=CVE-2016-0751
nvd.nist.gov/vuln/detail/CVE-2016-0751
access.redhat.com/security/cve/CVE-2016-0752
cve.org/CVERecord?id=CVE-2016-0752
nvd.nist.gov/vuln/detail/CVE-2016-0752
nvisium.com/blog/2016/01/26/rails-dynamic-render-to-rce-cve-2016-0752
cisa.gov/known-exploited-vulnerabilities-catalog
access.redhat.com/security/cve/CVE-2016-0753
cve.org/CVERecord?id=CVE-2016-0753
nvd.nist.gov/vuln/detail/CVE-2016-0753
access.redhat.com/errata/RHSA-2016:0454
bugzilla.redhat.com/show_bug.cgi?id=1310043
bugzilla.redhat.com/show_bug.cgi?id=1310054
security.access.redhat.com/data/csaf/v2/advisories/2016/rhsa-2016_0454.json
access.redhat.com/security/cve/CVE-2016-2097
cve.org/CVERecord?id=CVE-2016-2097
nvd.nist.gov/vuln/detail/CVE-2016-2097
access.redhat.com/security/cve/CVE-2016-2098
cve.org/CVERecord?id=CVE-2016-2098
nvd.nist.gov/vuln/detail/CVE-2016-2098
suse.com/support/update/announcement/2016/suse-su-20160457-1
bugzilla.suse.com/963329
bugzilla.suse.com/963331
bugzilla.suse.com/963332
bugzilla.suse.com/963335
suse.com/security/cve/CVE-2015-7576
suse.com/security/cve/CVE-2015-7581
suse.com/security/cve/CVE-2016-0751
suse.com/security/cve/CVE-2016-0752
suse.com/support/update/announcement/2016/suse-su-20160858-1
suse.com/support/update/announcement/2016/suse-su-20161146-1
bugzilla.suse.com/963326
bugzilla.suse.com/963327
bugzilla.suse.com/963328
bugzilla.suse.com/963563
bugzilla.suse.com/963604
bugzilla.suse.com/963608
bugzilla.suse.com/963617
bugzilla.suse.com/963625
bugzilla.suse.com/963627
bugzilla.suse.com/969943
suse.com/security/cve/CVE-2015-7577
suse.com/security/cve/CVE-2015-7578
suse.com/security/cve/CVE-2015-7579
suse.com/security/cve/CVE-2015-7580
suse.com/security/cve/CVE-2016-0753
suse.com/security/cve/CVE-2016-2098
ubuntu.com/security/CVE-2015-7581
marc.info?l=oss-security&m=145375099828815&w=2
Left out here: 36 versions. The JSON record has them.