Skip to content
Fencer Vulns
medium 6.8

CVE-2020-11077 json

HTTP Smuggling via Transfer-Encoding Header in Puma

published 2020-05-22 6 y ago modified 2026-09-10 1 mo ago also GHSA-w64w-qqph-5gxm , EUVD-2020-0445

cvss
6.8
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
2.9%
EPSS 2.9% chance of exploitation in 30 days, percentile 86%
public exploits
0
none known

Summary

In Puma (RubyGem) before 4.3.5 and 3.12.6, a client could smuggle a request through a proxy, causing the proxy to send a response back to another unknown client. If the proxy uses persistent connections and the client adds another request in via HTTP pipelining, the proxy may mistake it as the first request's body. Puma, however, would see it as two requests, and when processing the second request, send back a response that the proxy does not expect. If the proxy has reused the persistent connection to Puma to send another request for a different client, the second response from the first client will be sent to the second client. This is a similar but different vulnerability from CVE-2020-11076. The problem has been fixed in Puma 3.12.6 and Puma 4.3.5.

Patch / fix

  • rubygems puma 3.12.6, 4.3.5
  • puma puma 3.12.6, 4.3.5
  • puma Debian 14, Debian 13, Debian 12 4.3.6-1

debian advisories DEBIAN-CVE-2020-11077

  • puma Ubuntu Pro 20.04 LTS 3.12.4-1ubuntu2+esm1

ubuntu advisories UBUNTU-CVE-2020-11077

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

  • rmt-server SLE Module for Server Applications 15 SP1, SLE Module for Public Cloud 15 SP1 2.6.5-3.18.1
  • rmt-server SLES for SAP 15, SLES 15-LTSS, SLE High Performance Computing 15-LTSS +1 more 2.6.5-3.34.1
  • rmt-server SLE Module for Server Applications 15 SP2, SLE Module for Public Cloud 15 SP2 2.6.5-3.3.1
  • kibana OpenStack Cloud 7 4.6.3-5.1
  • ansible OpenStack Cloud 7 2.2.3.0-12.2
  • grafana OpenStack Cloud 7 4.6.5-1.14.1
  • memcached OpenStack Cloud 7 1.5.17-3.6.1
  • python-py OpenStack Cloud 7 1.8.1-11.12.1

suse advisories SUSE-SU-2020:3160-1SUSE-SU-2020:3147-1SUSE-SU-2020:3036-1SUSE-RU-2020:2072-1SUSE-SU-2020:2060-1SUSE-SU-2020:1919-1

  • rmt-server openSUSE Leap 15.1 2.6.5-lp151.2.18.2
  • rmt-server openSUSE Leap 15.2 2.6.5-lp152.2.3.1
  • rubygem-puma openSUSE Leap 15.2 4.3.5-lp152.4.3.1
  • rubygem-puma openSUSE Leap 15.1 4.3.5-lp151.3.3.1

opensuse advisories openSUSE-SU-2020:2000-1openSUSE-SU-2020:1993-1openSUSE-SU-2020:1001-1openSUSE-SU-2020:0990-1

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2020-11077 updated cvss 0.0

rubygem-puma: HTTP Smuggling through a proxy via Transfer-Encoding Header

  • Red Hat CloudForms Management Engine 5 rubygem-puma Red Hat Storage 3 rubygem-puma
    affected: workaround, no fix planned “Will not fix”

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

2.88% chance of exploitation in the next 30 days, higher than 86% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CNA 3.1 6.8 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N
NVD 3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
NVD 2.0 5.0 AV:N/AC:L/Au:N/C:N/I:P/A:N
GitHub 3.1 6.8 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N

Affected packages

ecosystem package affected fixed in
rubygems puma
<3.12.6
>=4.0.0, <4.3.5
3.12.6
4.3.5

Affected products

  • puma puma

Classification

Weakness
  • CWE-444 Inconsistent Interpretation of HTTP Requests

References

Sources

Fencer Vulns 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.