GSD-2019-16779
Vulnerability from gsd - Updated: 2019-12-16 00:00Details
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.
Users can workaround the problem by disabling persistent connections, though
this may cause performance implications.
Aliases
Aliases
{
"GSD": {
"alias": "CVE-2019-16779",
"description": "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.",
"id": "GSD-2019-16779",
"references": [
"https://www.suse.com/security/cve/CVE-2019-16779.html"
]
},
"gsd": {
"metadata": {
"exploitCode": "unknown",
"remediation": "unknown",
"reportConfidence": "confirmed",
"type": "vulnerability"
},
"osvSchema": {
"affected": [
{
"package": {
"ecosystem": "RubyGems",
"name": "excon",
"purl": "pkg:gem/excon"
}
}
],
"aliases": [
"CVE-2019-16779",
"GHSA-q58g-455p-8vw9"
],
"details": "There was a race condition around persistent connections, where a connection\nwhich is interrupted (such as by a timeout) would leave data on the socket.\nSubsequent requests would then read this data, returning content from the\nprevious response. The race condition window appears to be short, and it\nwould be difficult to purposefully exploit this.\n\nUsers can workaround the problem by disabling persistent connections, though\nthis may cause performance implications.",
"id": "GSD-2019-16779",
"modified": "2019-12-16T00:00:00.000Z",
"published": "2019-12-16T00:00:00.000Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/excon/excon/security/advisories/GHSA-q58g-455p-8vw9"
},
{
"type": "WEB",
"url": "https://github.com/excon/excon/commit/ccb57d7a422f020dc74f1de4e8fb505ab46d8a29"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": 5.8,
"type": "CVSS_V3"
}
],
"summary": "Race condition when using persistent connections"
}
},
"namespaces": {
"cve.org": {
"CVE_data_meta": {
"ASSIGNER": "security-advisories@github.com",
"ID": "CVE-2019-16779",
"STATE": "PUBLIC",
"TITLE": "In RubyGem excon, interrupted Persistent Connections May Leak Response Data"
},
"affects": {
"vendor": {
"vendor_data": [
{
"product": {
"product_data": [
{
"product_name": "excon",
"version": {
"version_data": [
{
"version_affected": "\u003c",
"version_name": "\u003c 0.71.0",
"version_value": "0.71.0"
}
]
}
}
]
},
"vendor_name": "excon"
}
]
}
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "eng",
"value": "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."
}
]
},
"impact": {
"cvss": {
"attackComplexity": "HIGH",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 5.8,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "HIGH",
"integrityImpact": "NONE",
"privilegesRequired": "LOW",
"scope": "CHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:N/A:N",
"version": "3.1"
}
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "eng",
"value": "CWE-664 Improper Control of a Resource Through its Lifetime"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://github.com/excon/excon/security/advisories/GHSA-q58g-455p-8vw9",
"refsource": "CONFIRM",
"url": "https://github.com/excon/excon/security/advisories/GHSA-q58g-455p-8vw9"
},
{
"name": "https://github.com/excon/excon/commit/ccb57d7a422f020dc74f1de4e8fb505ab46d8a29",
"refsource": "MISC",
"url": "https://github.com/excon/excon/commit/ccb57d7a422f020dc74f1de4e8fb505ab46d8a29"
},
{
"name": "openSUSE-SU-2020:0036",
"refsource": "SUSE",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00021.html"
},
{
"name": "[debian-lts-announce] 20200119 [SECURITY] [DLA 2070-1] ruby-excon security update",
"refsource": "MLIST",
"url": "https://lists.debian.org/debian-lts-announce/2020/01/msg00015.html"
},
{
"name": "openSUSE-SU-2020:0139",
"refsource": "SUSE",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00062.html"
}
]
},
"source": {
"advisory": "GHSA-q58g-455p-8vw9",
"discovery": "UNKNOWN"
},
"work_around": [
{
"lang": "eng",
"value": "Users can workaround the problem by disabling persistent connections, though this may cause performance implications."
}
]
},
"github.com/rubysec/ruby-advisory-db": {
"cve": "2019-16779",
"cvss_v3": 5.8,
"date": "2019-12-16",
"description": "There was a race condition around persistent connections, where a connection\nwhich is interrupted (such as by a timeout) would leave data on the socket.\nSubsequent requests would then read this data, returning content from the\nprevious response. The race condition window appears to be short, and it\nwould be difficult to purposefully exploit this.\n\nUsers can workaround the problem by disabling persistent connections, though\nthis may cause performance implications.",
"gem": "excon",
"ghsa": "q58g-455p-8vw9",
"patched_versions": [
"\u003e= 0.71.0"
],
"related": {
"url": [
"https://github.com/excon/excon/commit/ccb57d7a422f020dc74f1de4e8fb505ab46d8a29"
]
},
"title": "Race condition when using persistent connections",
"url": "https://github.com/excon/excon/security/advisories/GHSA-q58g-455p-8vw9"
},
"gitlab.com": {
"advisories": [
{
"affected_range": "\u003c0.71.0",
"affected_versions": "All versions before 0.71.0",
"cvss_v2": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
"cvss_v3": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N",
"cwe_ids": [
"CWE-1035",
"CWE-20",
"CWE-937"
],
"date": "2019-12-30",
"description": "In RubyGem excon, 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.",
"fixed_versions": [
"0.71.0"
],
"identifier": "CVE-2019-16779",
"identifiers": [
"CVE-2019-16779",
"GHSA-q58g-455p-8vw9"
],
"not_impacted": "All versions starting from 0.71.0",
"package_slug": "gem/excon",
"pubdate": "2019-12-16",
"solution": "Upgrade to version 0.71.0 or above.",
"title": "Improper Input Validation",
"urls": [
"https://nvd.nist.gov/vuln/detail/CVE-2019-16779"
],
"uuid": "6bc843fc-c9f0-4e2a-b028-c87b38822d4f"
}
]
},
"nvd.nist.gov": {
"configurations": {
"CVE_data_version": "4.0",
"nodes": [
{
"children": [],
"cpe_match": [
{
"cpe23Uri": "cpe:2.3:a:excon_project:excon:*:*:*:*:*:*:*:*",
"cpe_name": [],
"versionEndExcluding": "0.71.0",
"vulnerable": true
}
],
"operator": "OR"
},
{
"children": [],
"cpe_match": [
{
"cpe23Uri": "cpe:2.3:a:opensuse:backports_sle:15.0:sp1:*:*:*:*:*:*",
"cpe_name": [],
"vulnerable": true
},
{
"cpe23Uri": "cpe:2.3:o:opensuse:leap:15.1:*:*:*:*:*:*:*",
"cpe_name": [],
"vulnerable": true
}
],
"operator": "OR"
},
{
"children": [],
"cpe_match": [
{
"cpe23Uri": "cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*",
"cpe_name": [],
"vulnerable": true
}
],
"operator": "OR"
}
]
},
"cve": {
"CVE_data_meta": {
"ASSIGNER": "security-advisories@github.com",
"ID": "CVE-2019-16779"
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "en",
"value": "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."
}
]
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "en",
"value": "CWE-362"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://github.com/excon/excon/security/advisories/GHSA-q58g-455p-8vw9",
"refsource": "CONFIRM",
"tags": [
"Third Party Advisory"
],
"url": "https://github.com/excon/excon/security/advisories/GHSA-q58g-455p-8vw9"
},
{
"name": "https://github.com/excon/excon/commit/ccb57d7a422f020dc74f1de4e8fb505ab46d8a29",
"refsource": "MISC",
"tags": [
"Patch",
"Third Party Advisory"
],
"url": "https://github.com/excon/excon/commit/ccb57d7a422f020dc74f1de4e8fb505ab46d8a29"
},
{
"name": "openSUSE-SU-2020:0036",
"refsource": "SUSE",
"tags": [
"Third Party Advisory"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00021.html"
},
{
"name": "[debian-lts-announce] 20200119 [SECURITY] [DLA 2070-1] ruby-excon security update",
"refsource": "MLIST",
"tags": [
"Mailing List",
"Third Party Advisory"
],
"url": "https://lists.debian.org/debian-lts-announce/2020/01/msg00015.html"
},
{
"name": "openSUSE-SU-2020:0139",
"refsource": "SUSE",
"tags": [
"Third Party Advisory"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00062.html"
}
]
}
},
"impact": {
"baseMetricV2": {
"acInsufInfo": false,
"cvssV2": {
"accessComplexity": "MEDIUM",
"accessVector": "NETWORK",
"authentication": "NONE",
"availabilityImpact": "NONE",
"baseScore": 4.3,
"confidentialityImpact": "PARTIAL",
"integrityImpact": "NONE",
"vectorString": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
"version": "2.0"
},
"exploitabilityScore": 8.6,
"impactScore": 2.9,
"obtainAllPrivilege": false,
"obtainOtherPrivilege": false,
"obtainUserPrivilege": false,
"severity": "MEDIUM",
"userInteractionRequired": false
},
"baseMetricV3": {
"cvssV3": {
"attackComplexity": "HIGH",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 5.9,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "HIGH",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N",
"version": "3.1"
},
"exploitabilityScore": 2.2,
"impactScore": 3.6
}
},
"lastModifiedDate": "2021-10-28T13:38Z",
"publishedDate": "2019-12-16T20:15Z"
}
}
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…