CVE-2019-16254 json
Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 allows HTTP Response Splitting.
published 6y ago modified 4mo ago also EUVD-2019-7060
- cvss
- 5.3
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 4.6%
- EPSS 4.6% chance of exploitation in 30 days, percentile 91%
- public exploits
- 0
- none known
Summary
Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 allows HTTP Response Splitting. If a program using WEBrick inserts untrusted input into the response header, an attacker can exploit it to insert a newline character to split a header, and inject malicious content to deceive clients. NOTE: this issue exists because of an incomplete fix for CVE-2017-17742, which addressed the CRLF vector, but did not address an isolated CR or an isolated LF.
Patch / fix
- jruby Debian 14, Debian 13, Debian 12 9.3.9.0+ds-1
debian advisories DEBIAN-CVE-2019-16254
- ruby2.3 Ubuntu 16.04 LTS 2.3.1-2~ubuntu16.04.14
- ruby2.5 Ubuntu 18.04 LTS 2.5.1-1ubuntu1.6
- jruby Ubuntu Pro 14.04 LTS 1.5.6-9+deb8u2build0.14.04.1~esm2
ubuntu advisories UBUNTU-CVE-2019-16254
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- ruby4.0 hummingbird 1 4.0.0-33.3.hum1
- ruby4.0-libs hummingbird 1 4.0.0-33.3.hum1
- ruby4.0-bundled-gems hummingbird 1 4.0.0-33.3.hum1
- ruby4.0-default-gems hummingbird 1 4.0.0-33.3.hum1
- ruby3.3 hummingbird 1 3.3.10-23.1.hum1
- ruby3.3-libs hummingbird 1 3.3.10-23.1.hum1
- ruby3.3-bundled-gems hummingbird 1 3.3.10-23.1.hum1
- ruby3.3-default-gems hummingbird 1 3.3.10-23.1.hum1
red hat advisories RHSA-2026:8838RHSA-2026:7305RHSA-2026:7307RHSA-2022:0582RHSA-2022:0581RHSA-2021:2588
- ruby2.1 SLES for SAP 12 SP5, SLES for SAP 12 SP4, SLES for SAP 12 SP3 +14 more 2.1.9-19.3.2
- yast2-ruby-bindings SLES for SAP 12 SP2, SLES 12 SP2-LTSS, SLES 12 SP2-BCL +1 more 3.1.53-9.8.1
- ruby2.5 SLES for SAP 15, SLES 15-LTSS, SLE Module for Basesystem 15 SP1 +2 more 2.5.7-4.8.1
suse advisories SUSE-SU-2020:1570-1SUSE-SU-2020:0737-1
- ruby2.5 openSUSE Leap 15.1 2.5.7-lp151.4.6.1
opensuse advisories openSUSE-SU-2020:0395-1
- rubygem-pg AlmaLinux 8 1.1.4-1.module_el8.5.0+250+ba22dbf7
- rubygem-pg AlmaLinux 8 1.1.4-1.module_el8.5.0+2623+08a8ba32
- rubygem-abrt AlmaLinux 8 0.3.0-4.module_el8.5.0+259+8cec6917
- rubygem-abrt AlmaLinux 8 0.3.0-4.module_el8.5.0+2623+08a8ba32
- rubygem-bson AlmaLinux 8 4.5.0-1.module_el8.5.0+2623+08a8ba32
- rubygem-bson AlmaLinux 8 4.5.0-1.module_el8.5.0+250+ba22dbf7
- rubygem-mongo AlmaLinux 8 2.8.0-1.module_el8.5.0+250+ba22dbf7
- rubygem-mongo AlmaLinux 8 2.8.0-1.module_el8.5.0+2623+08a8ba32
almalinux advisories ALSA-2021:2588ALSA-2021:2587
- ruby Rocky Linux 8 2.6.7-107.module+el8.4.0+593+8d7f9f0c
- rubygem-pg Rocky Linux 8 1.1.4-1.module+el8.5.0+738+032c9c02
- rubygem-pg Rocky Linux 8 1.1.4-1.module+el8.4.0+446+80b53620
- rubygem-pg Rocky Linux 8 1.1.4-1.module+el8.4.0+593+8d7f9f0c
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.5.0+738+032c9c02
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.3.0+167+5c390590
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.4.0+592+03ff458a
- rubygem-bson Rocky Linux 8 4.5.0-1.module+el8.4.0+593+8d7f9f0c
rocky linux advisories RLSA-2021:2588RLSA-2021:2587
- ruby Alpine 3.10, Alpine 3.9, Alpine 3.8 2.5.7-r0
- ruby Alpine 3.24, Alpine 3.23, Alpine 3.22 +11 more 2.6.5-r0
- ruby Alpine 3.7 2.4.10-r0
alpine advisories ALPINE-CVE-2019-16254
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- ruby Arch Linux 2.6.5-1
arch linux advisories AVG-1039
Is CVE-2019-16254 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2019-16254 updated cvss 5.3
ruby: HTTP response splitting in WEBrick
-
Red Hat 3scale API Management Platform 2 3amp-system 3amp-systemaffected: no fix available “Fix deferred”
-
Red Hat Enterprise Linux 5 ruby Red Hat Enterprise Linux 6 ruby, ruby-ri, ruby-irb, ruby-libs, ruby-rdoc, ruby-tcltkaffected: no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 7 ruby, ruby-irb, rubygems, ruby-libs, ruby-tcltk, rubygem-json, +6 more Red Hat Software Collections rh-ruby24-ruby, rh-ruby24-ruby-irb, rh-ruby24-rubygems, rh-ruby24-ruby-libs, rh-ruby24-rubygem-json, rh-ruby24-rubygem-rake, +11 moreaffected: no fix available “Fix deferred”
-
Red Hat Enterprise Linux AppStream (v. 8) ruby 2.5.9-107.module+el8.4.0+10822+fe4fffb1, ruby 2.6.7-107.module+el8.4.0+10830+bbd85cce, rubygem-pg 1.0.0-2.module+el8.1.0+3656+f80bfa1d, rubygem-pg 1.1.4-1.module+el8.1.0+3653+beb38eb0, ruby-irb 2.5.9-107.module+el8.4.0+10822+fe4fffb1, ruby-libs 2.5.9-107.module+el8.4.0+10822+fe4fffb1, +40 morefixed: vendor fix RHSA-2021:2587
-
Red Hat Enterprise Linux AppStream E4S (v. 8.1) ruby 2.6.9-107.module+el8.1.0+14088+04cf326e, rubygem-pg 1.1.4-1.module+el8.1.0+3653+beb38eb0, ruby-libs 2.6.9-107.module+el8.1.0+14088+04cf326e, rubygem-abrt 0.3.0-4.module+el8.1.0+3653+beb38eb0, rubygem-bson 4.5.0-1.module+el8.1.0+3653+beb38eb0, rubygem-mongo 2.8.0-1.module+el8.1.0+3653+beb38eb0, +17 morefixed: vendor fix RHSA-2022:0581
-
Red Hat Enterprise Linux AppStream EUS (v. 8.2) ruby 2.6.9-107.module+el8.2.0+14086+86d863af, rubygem-pg 1.1.4-1.module+el8.1.0+3653+beb38eb0, ruby-libs 2.6.9-107.module+el8.2.0+14086+86d863af, rubygem-abrt 0.3.0-4.module+el8.1.0+3653+beb38eb0, rubygem-bson 4.5.0-1.module+el8.1.0+3653+beb38eb0, rubygem-mongo 2.8.0-1.module+el8.1.0+3653+beb38eb0, +17 morefixed: vendor fix RHSA-2022:0582
-
Red Hat Hardened Images ruby3.4 3.4.8-31.1.hum1, ruby4.0 4.0.0-33.3.hum1, ruby3.3 3.3.10-23.1.hum1, ruby3.4-libs 3.4.8-31.1.hum1, ruby4.0-libs 4.0.0-33.3.hum1, ruby3.3-libs 3.3.10-23.1.hum1, +6 morefixed: vendor fix RHSA-2026:7305
-
Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby26-ruby 2.6.7-119.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby26-ruby-libs 2.6.7-119.el7, +29 more Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.6) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby25-rubygem-json 2.1.0-9.el7, rh-ruby25-rubygem-psych 3.0.2-9.el7, +11 more Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.7) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby26-ruby 2.6.7-119.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby26-ruby-libs 2.6.7-119.el7, +29 more Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby26-ruby 2.6.7-119.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby26-ruby-libs 2.6.7-119.el7, +29 morefixed: vendor fix RHSA-2021:2104
show 1 moreshow fewer
-
Red Hat Hardened Images rubygem3.3-rbs 3.4.0-23.1.hum1, rubygem3.3-rss 0.3.1-23.1.hum1, rubygem3.4-rbs 3.8.0-31.1.hum1, rubygem3.4-rss 0.3.1-31.1.hum1, rubygem4.0-rss 0.3.2-33.3.hum1, rubygem3.3-irb 1.13.1-23.1.hum1, +45 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
4.57% chance of exploitation in the next 30 days, higher than 91% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N |
| NVD | 2.0 | 5.0 | AV:N/AC:L/Au:N/C:N/I:P/A:N |
Classification
- Weakness
-
- CWE-74 Improper Neutralization of Special Elements in Output Used by a Downstream Component
References
-
debian.org
/security/2019/dsa-4587
vendor-advisory
-
debian.org
/security/2019/dsa-4586
vendor-advisory
-
security.gentoo.org
/glsa/202003-06
vendor-advisory
-
lists.opensuse.org
/opensuse-security-announce/2020-03/msg00041.html
vendor-advisory
-
ruby-lang.org
/ja/news/2019/10/01/http-response-splitting-in-webrick-cve-2019-16254/
vendor-advisory
-
ruby-lang.org
/ja/news/2019/10/01/ruby-2-6-5-released/
vendor-advisory
-
ruby-lang.org
/ja/news/2019/10/01/ruby-2-5-7-released/
vendor-advisory
-
ruby-lang.org
/ja/news/2019/10/01/ruby-2-4-8-released/
vendor-advisory
-
hackerone.com
/reports/331984
third-party-advisory
-
lists.debian.org
/debian-lts-announce/2019/11/msg00025.html
mailing-list, third-party-advisory
-
lists.debian.org
/debian-lts-announce/2019/12/msg00009.html
mailing-list
-
seclists.org
/bugtraq/2019/Dec/31
mailing-list
-
seclists.org
/bugtraq/2019/Dec/32
mailing-list
- oracle.com /security-alerts/cpujan2020.html
-
lists.debian.org
/debian-lts-announce/2020/08/msg00027.html
mailing-list
-
lists.debian.org
/debian-lts-announce/2023/04/msg00033.html
mailing-list
Sources
- CVE List CVE-2019-16254
- NVD CVE-2019-16254
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.