Skip to content
Heist/ feed
Back to feed
Medium

Reusing connections with wrong client cert

Type: advisorySources: OSV

libcurl did not consider client certificates when reusing TLS connections. libcurl supports reuse of established connections for subsequent requests. It does this by keeping a few previous connections "alive" in a connection pool so that a subsequent request that can use one of them instead of creating a new connection. When using a client certificate for a connection that was then put into the connection pool, that connection could then wrongly get reused in a subsequent request to that same server that either did not use a client certificate at all or that asked to use a different client certificate thus trying to tell the user that it is a different entity. This mistakenly using the wrong connection could of course lead to applications sending requests to the wrong realms of the server using authentication that it was not supposed to have for those operations.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2016-5420
Confirmed fixed CVEs
Not specified
Updated in this feed
1 Nov 2026, 09:36 UTC · Revision 1

Source evidence

Reusing connections with wrong client cert

core-osv · Original source

Published 3 Aug 2016, 08:00 UTC

libcurl did not consider client certificates when reusing TLS connections. libcurl supports reuse of established connections for subsequent requests. It does this by keeping a few previous connections "alive" in a connection pool so that a subsequent request that can use one of them instead of creating a new connection. When using a client certificate for a connection that was then put into the connection pool, that connection could then wrongly get reused in a subsequent request to that same server that either did not use a client certificate at all or that asked to use a different client certificate thus trying to tell the user that it is a different entity. This mistakenly using the wrong connection could of course lead to applications sending requests to the wrong realms of the server using authentication that it was not supposed to have for those operations.

osv:CURL-CVE-2016-5420
Complete source record
{
  "id": "393bf2bef0b31ec7d708ddb70d3c170a8cbc31f997791a06e0cd90830307fdbd",
  "url": "https://osv.dev/vulnerability/CURL-CVE-2016-5420",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Reusing connections with wrong client cert",
    "summary": "libcurl did not consider client certificates when reusing TLS connections. libcurl supports reuse of established connections for subsequent requests. It does this by keeping a few previous connections \"alive\" in a connection pool so that a subsequent request that can use one of them instead of creating a new connection. When using a client certificate for a connection that was then put into the connection pool, that connection could then wrongly get reused in a subsequent request to that same server that either did not use a client certificate at all or that asked to use a different client certificate thus trying to tell the user that it is a different entity. This mistakenly using the wrong connection could of course lead to applications sending requests to the wrong realms of the server using authentication that it was not supposed to have for those operations.",
    "evidence": "osv:CURL-CVE-2016-5420",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CURL-CVE-2016-5420",
      "aliases": [
        "CURL-CVE-2016-5420",
        "CVE-2016-5420"
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "SEMVER",
              "events": [
                {
                  "introduced": "7.7"
                },
                {
                  "fixed": "7.50.1"
                }
              ]
            }
          ],
          "versions": [
            "7.50.0",
            "7.49.1",
            "7.49.0",
            "7.48.0",
            "7.47.1",
            "7.47.0",
            "7.46.0",
            "7.45.0",
            "7.44.0",
            "7.43.0",
            "7.42.1",
            "7.42.0",
            "7.41.0",
            "7.40.0",
            "7.39.0",
            "7.38.0",
            "7.37.1",
            "7.37.0",
            "7.36.0",
            "7.35.0",
            "7.34.0",
            "7.33.0",
            "7.32.0",
            "7.31.0",
            "7.30.0",
            "7.29.0",
            "7.28.1",
            "7.28.0",
            "7.27.0",
            "7.26.0",
            "7.25.0",
            "7.24.0",
            "7.23.1",
            "7.23.0",
            "7.22.0",
            "7.21.7",
            "7.21.6",
            "7.21.5",
            "7.21.4",
            "7.21.3",
            "7.21.2",
            "7.21.1",
            "7.21.0",
            "7.20.1",
            "7.20.0",
            "7.19.7",
            "7.19.6",
            "7.19.5",
            "7.19.4",
            "7.19.3",
            "7.19.2",
            "7.19.1",
            "7.19.0",
            "7.18.2",
            "7.18.1",
            "7.18.0",
            "7.17.1",
            "7.17.0",
            "7.16.4",
            "7.16.3",
            "7.16.2",
            "7.16.1",
            "7.16.0",
            "7.15.5",
            "7.15.4",
            "7.15.3",
            "7.15.2",
            "7.15.1",
            "7.15.0",
            "7.14.1",
            "7.14.0",
            "7.13.2",
            "7.13.1",
            "7.13.0",
            "7.12.3",
            "7.12.2",
            "7.12.1",
            "7.12.0",
            "7.11.2",
            "7.11.1",
            "7.11.0",
            "7.10.8",
            "7.10.7",
            "7.10.6",
            "7.10.5",
            "7.10.4",
            "7.10.3",
            "7.10.2",
            "7.10.1",
            "7.10",
            "7.9.8",
            "7.9.7",
            "7.9.6",
            "7.9.5",
            "7.9.4",
            "7.9.3",
            "7.9.2",
            "7.9.1",
            "7.9",
            "7.8.1",
            "7.8",
            "7.7.3",
            "7.7.2",
            "7.7.1",
            "7.7"
          ],
          "database_specific": {
            "source": "https://curl.se/docs/CURL-CVE-2016-5420.json"
          }
        }
      ],
      "modified": "2026-10-24T23:29:53Z",
      "provider": "osv",
      "references": [],
      "provider_metadata": {
        "CWE": {
          "id": "CWE-305",
          "desc": "Authentication Bypass by Primary Weakness"
        },
        "URL": "https://curl.se/docs/CVE-2016-5420.json",
        "www": "https://curl.se/docs/CVE-2016-5420.html",
        "affects": "both",
        "package": "curl",
        "severity": "Medium",
        "last_affected": "7.50.0"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2016-5420",
        "evidence": "/aliases"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/database_specific/severity"
  },
  "source_id": "core-osv",
  "document_id": 444213,
  "published_at": "2016-08-03T08:00:00+00:00"
}