Skip to content
Heist/ feed
Back to feed
Medium

Security advisory

Type: advisorySources: OSVCVE: CVE-2019-16779

In RubyGem excon before 0.71.0, there was a race condition around persistent connections, where a connection which is interrupted (such as by a timeout) would leave data on the socket. Subsequent requests would then read this data, returning content from the previous response. The race condition window appears to be short, and it would be difficult to purposefully exploit this.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2019-16779
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 11:02 UTC · Revision 1

Source evidence

CVE-2019-16779

core-osv · Original source

Published 16 Dec 2019, 20:15 UTC

In RubyGem excon before 0.71.0, there was a race condition around persistent connections, where a connection which is interrupted (such as by a timeout) would leave data on the socket. Subsequent requests would then read this data, returning content from the previous response. The race condition window appears to be short, and it would be difficult to purposefully exploit this.

osv:CVE-2019-16779
Complete source record
{
  "id": "d4807597dc8f3bf69f5b16d2a2583af71aa945c1a041667f33ce1aad2e6c86b9",
  "url": "https://osv.dev/vulnerability/CVE-2019-16779",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CVE-2019-16779",
    "summary": "In RubyGem excon before 0.71.0, there was a race condition around persistent connections, where a connection which is interrupted (such as by a timeout) would leave data on the socket. Subsequent requests would then read this data, returning content from the previous response. The race condition window appears to be short, and it would be difficult to purposefully exploit this.",
    "evidence": "osv:CVE-2019-16779",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2019-16779",
      "aliases": [
        "CVE-2019-16779",
        "GHSA-q58g-455p-8vw9"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/excon/excon",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "1149d44d921660bcde5e21671e6a10346d177f33"
                },
                {
                  "fixed": "ccb57d7a422f020dc74f1de4e8fb505ab46d8a29"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:excon_project:excon:*:*:*:*:*:ruby:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "0.71.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "ccb57d7a422f020dc74f1de4e8fb505ab46d8a29"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v0.70.0",
            "v0.69.1",
            "v0.69.0",
            "v0.68.0",
            "v0.67.0",
            "v0.66.0",
            "v0.65.0",
            "v0.64.0",
            "v0.63.0",
            "v0.62.0",
            "v0.61.0",
            "v0.60.0",
            "v0.59.0",
            "v0.58.0",
            "v0.57.1",
            "v0.57.0",
            "v0.56.0",
            "v0.55.0",
            "v0.54.0",
            "v0.53.0",
            "v0.52.0",
            "v0.50.1",
            "v0.50.0",
            "v0.49.0",
            "v0.48.0",
            "v0.47.0",
            "v0.46.0",
            "v0.45.4",
            "v0.45.3",
            "v0.45.2",
            "v0.45.1",
            "v0.45.0",
            "v0.44.4",
            "v0.44.3",
            "v0.44.2",
            "v0.44.1",
            "v0.44.0",
            "v0.43.0",
            "v0.42.1",
            "v0.42.0",
            "v0.41.0",
            "v0.40.0",
            "v0.39.6",
            "v0.39.5",
            "v0.39.4",
            "v0.39.3",
            "v0.39.2",
            "v0.39.1",
            "v0.39.0",
            "v0.38.0",
            "v0.37.0",
            "v0.36.0",
            "v0.35.0",
            "v0.34.0",
            "v0.33.0",
            "v0.32.1",
            "v0.32.0",
            "v0.31.0",
            "v0.30.0",
            "v0.29.0",
            "v0.28.0",
            "v0.27.6",
            "v0.27.5",
            "v0.27.4",
            "v0.27.3",
            "v0.27.2",
            "v0.27.1",
            "v0.27.0",
            "v0.26.0",
            "v0.25.3",
            "v0.25.2",
            "v0.25.1",
            "v0.25.0",
            "v0.24.0",
            "v0.23.0",
            "v0.20.1",
            "v0.22.1",
            "v0.22.0",
            "v0.21.0",
            "v0.20.0",
            "v0.19.5",
            "v0.19.4",
            "v0.19.3",
            "v0.19.2",
            "v0.19.1",
            "v0.19.0",
            "v0.18.5",
            "v0.18.4",
            "v0.18.3",
            "v0.18.2",
            "v0.18.1",
            "v0.18.0",
            "v0.17.0",
            "v0.16.10",
            "v0.16.9",
            "v0.16.8",
            "v0.16.7",
            "v0.16.6",
            "v0.16.5",
            "v0.16.4",
            "v0.16.3",
            "v0.16.2",
            "v0.16.1",
            "v0.16.0",
            "v0.15.5",
            "v0.15.4",
            "v0.15.3",
            "v0.15.2",
            "v0.15.1",
            "v0.15.0",
            "v0.14.3",
            "v0.14.2",
            "v0.14.1",
            "v0.14.0",
            "v0.13.4",
            "v0.13.3",
            "v0.13.2",
            "v0.13.1",
            "v0.13.0",
            "v0.12.0",
            "v0.11.0",
            "v0.10.1",
            "v0.10.0",
            "v0.9.6",
            "v0.9.5",
            "v0.9.4",
            "v0.9.3",
            "v0.9.2",
            "v0.9.1",
            "v0.9.0",
            "v0.8.0",
            "v0.7.12",
            "v0.7.11",
            "v0.7.10",
            "v0.7.9",
            "v0.7.8",
            "v0.7.7",
            "v0.7.6",
            "v0.7.5",
            "v0.7.4",
            "v0.7.3",
            "v0.7.2",
            "v0.7.1",
            "v0.7.0",
            "v0.6.6",
            "v0.6.5",
            "v0.6.4",
            "v0.6.3",
            "v0.6.2",
            "v0.6.1",
            "v0.6.0",
            "v0.5.8",
            "v0.5.7",
            "v0.5.6",
            "v0.5.5",
            "v0.5.4",
            "v0.5.3",
            "v0.5.2",
            "v0.5.1",
            "v0.5.0",
            "v0.4.0",
            "v0.3.8",
            "v0.3.7",
            "v0.3.6",
            "v0.3.5",
            "v0.3.4",
            "v0.3.3",
            "v0.3.2",
            "v0.3.1",
            "v0.3.0",
            "v0.2.8",
            "v0.2.7",
            "v0.2.6",
            "v0.2.5",
            "v0.2.4",
            "v0.2.3",
            "v0.2.2",
            "v0.2.1",
            "v0.2.0",
            "v0.1.4",
            "v0.1.3",
            "v0.1.2",
            "v0.1.1",
            "v0.1.0",
            "v0.0.26",
            "v0.0.25",
            "v0.0.24",
            "v0.0.23",
            "v0.0.22"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2019-16779.json"
          }
        }
      ],
      "modified": "2026-10-20T10:52:28.165036146Z",
      "provider": "osv",
      "references": [
        "https://github.com/excon/excon/security/advisories/GHSA-q58g-455p-8vw9",
        "https://lists.debian.org/debian-lts-announce/2020/01/msg00015.html",
        "https://github.com/excon/excon/commit/ccb57d7a422f020dc74f1de4e8fb505ab46d8a29"
      ],
      "provider_metadata": {
        "unresolved_ranges": [
          {
            "cpes": [
              "cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*"
            ],
            "vendor_product": "debian:debian_linux",
            "extracted_events": [
              {
                "range": [
                  {
                    "introduced": "8.0"
                  },
                  {
                    "last_affected": "8.0"
                  }
                ],
                "source": "CPE_STRING"
              }
            ]
          },
          {
            "cpes": [
              "cpe:2.3:a:opensuse:backports_sle:15.0:sp1:*:*:*:*:*:*"
            ],
            "vendor_product": "opensuse:backports_sle",
            "extracted_events": [
              {
                "range": [
                  {
                    "introduced": "15.0-sp1"
                  },
                  {
                    "last_affected": "15.0-sp1"
                  }
                ],
                "source": "CPE_STRING"
              }
            ]
          },
          {
            "cpes": [
              "cpe:2.3:o:opensuse:leap:15.1:*:*:*:*:*:*:*"
            ],
            "vendor_product": "opensuse:leap",
            "extracted_events": [
              {
                "range": [
                  {
                    "introduced": "15.1"
                  },
                  {
                    "last_affected": "15.1"
                  }
                ],
                "source": "CPE_STRING"
              }
            ]
          }
        ]
      }
    },
    "related_cves": [
      {
        "value": "CVE-2019-16779",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 383663,
  "published_at": "2019-12-16T20:15:15.54+00:00"
}