Cloudanix VulnDB

CVE-2016-5419

High · 7.5

CVSS

7.5

EPSS

15.1%

Published

Aug 10, 2016

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

Older versions of a widely used tool for secure network connections could let attackers reuse previous logins and reach data they should not be allowed to access.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Data Exposure
Component
Library
Class
Authentication Bypass
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw permits TLS session resumption even after a client presents a different certificate than the one used to establish the original session, bypassing per-session certificate-based authentication enforcement in libcurl.

Why it matters to the business

Applications relying on curl or libcurl for client-certificate-authenticated connections to sensitive services may grant unauthorized access to resources, increasing exposure of protected data and requiring urgent patching on any remaining legacy deployments across Linux distributions and dependent software ecosystems.

How an attack unfolds

An attacker first completes a TLS handshake using a valid client certificate to obtain a session ticket or identifier, then later resumes that same session while supplying a different or absent certificate; the server incorrectly honors the resumed session state, allowing the attacker to perform actions that should have been restricted to the original certificate holder.

How to fix it

Upgrade libcurl and curl to version 7.50.1 or later on all affected systems; rebuild or redeploy any statically linked applications that embed the vulnerable library; disable TLS session resumption for client-certificate flows if immediate upgrade is not feasible.

How to confirm the fix worked

Inventory all curl and libcurl installations and confirm versions are at least 7.50.1; perform targeted regression tests that attempt session resumption after certificate change and verify the connection is rejected; review build logs and dependency manifests for embedded copies of the library.

Typical attack path

  1. Perform initial TLS handshake with a legitimate client certificate to establish and cache a resumable session
  2. Capture the session ticket or session ID returned by the server
  3. Initiate a new connection that resumes the prior session while presenting a different certificate or none
  4. Access resources or APIs that the server now treats as authenticated due to the resumed session

How to detect it

Examine application and TLS proxy logs for repeated session resumption events on endpoints that enforce client certificates; correlate resumption indicators with subsequent access attempts that lack matching certificate metadata; search package managers and process listings for curl or libcurl versions older than 7.50.1.

What your security team should do

  • Prioritize upgrade of libcurl to 7.50.1+ across all environments within the next patching cycle
  • Audit code and configurations that use CURLOPT_SSLCERT or equivalent client-certificate settings
  • Add version checks for curl/libcurl to continuous integration and container scanning pipelines
  • Review network logs for anomalous TLS session resumption patterns on authenticated endpoints

The record

curl and libcurl before 7.50.1 do not prevent TLS session resumption when the client certificate has changed, which allows remote attackers to bypass intended restrictions by resuming a session.

Affected packages

Ecosystem Package Introduced Fixed
Alpine:v3.10 curl 0 7.50.1-r0
Alpine:v3.11 curl 0 7.50.1
Alpine:v3.12 curl 0 7.50.1-r0
Alpine:v3.13 curl 0 7.50.1-r0
Alpine:v3.14 curl 0 7.50.1-r0
Alpine:v3.15 curl 0 7.50.1-r0
Alpine:v3.16 curl 0 7.50.1-r0
Alpine:v3.17 curl 0 7.50.1-r0
Alpine:v3.18 curl 0 7.50.1-r0
Alpine:v3.19 curl 0 7.50.1-r0
Alpine:v3.2 curl 0 7.49.1-r1
Alpine:v3.20 curl 0 7.50.1-r0
Alpine:v3.21 curl 0 7.50.1-r0
Alpine:v3.22 curl 0 7.50.1-r0
Alpine:v3.3 curl 0 7.49.1-r1
Alpine:v3.4 curl 0 7.50.1-r0
Alpine:v3.5 curl 0 7.50.1-r0
Alpine:v3.6 curl 0 7.50.1
Alpine:v3.7 curl 0 7.50.1
Alpine:v3.8 curl 0 7.50.1
Alpine:v3.9 curl 0 7.50.1-r0
Debian:11 curl 0 7.50.1-1
Debian:12 curl 0 7.50.1-1
Debian:13 curl 0 7.50.1-1
Debian:7 curl 0 7.26.0-1+wheezy14
Debian:8 curl 0 7.38.0-4+deb8u4
Mageia:5 curl 0 7.40.0-3.4.mga5
Red Hat:enterprise_linux:7::client curl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::client curl-debuginfo 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::client libcurl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::client libcurl-devel 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::computenode curl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::computenode curl-debuginfo 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::computenode libcurl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::computenode libcurl-devel 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::server curl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::server curl-debuginfo 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::server libcurl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::server libcurl-devel 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::workstation curl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::workstation curl-debuginfo 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::workstation libcurl 0 0:7.29.0-35.el7
Red Hat:enterprise_linux:7::workstation libcurl-devel 0 0:7.29.0-35.el7
Red Hat:rhel_software_collections:3::el6 httpd24-curl 0 0:7.61.1-1.el6
Red Hat:rhel_software_collections:3::el6 httpd24-curl-debuginfo 0 0:7.61.1-1.el6
Red Hat:rhel_software_collections:3::el6 httpd24-httpd 0 0:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-httpd-debuginfo 0 0:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-httpd-devel 0 0:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-httpd-manual 0 0:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-httpd-tools 0 0:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-libcurl 0 0:7.61.1-1.el6
Red Hat:rhel_software_collections:3::el6 httpd24-libcurl-devel 0 0:7.61.1-1.el6
Red Hat:rhel_software_collections:3::el6 httpd24-libnghttp2 0 0:1.7.1-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-libnghttp2-devel 0 0:1.7.1-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-mod_ldap 0 0:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-mod_proxy_html 0 1:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-mod_session 0 0:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-mod_ssl 0 1:2.4.34-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-nghttp2 0 0:1.7.1-7.el6
Red Hat:rhel_software_collections:3::el6 httpd24-nghttp2-debuginfo 0 0:1.7.1-7.el6
Red Hat:rhel_software_collections:3::el7 httpd24-curl 0 0:7.61.1-1.el7
Red Hat:rhel_software_collections:3::el7 httpd24-curl-debuginfo 0 0:7.61.1-1.el7
Red Hat:rhel_software_collections:3::el7 httpd24-httpd 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-httpd-debuginfo 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-httpd-devel 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-httpd-manual 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-httpd-tools 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-libcurl 0 0:7.61.1-1.el7
Red Hat:rhel_software_collections:3::el7 httpd24-libcurl-devel 0 0:7.61.1-1.el7
Red Hat:rhel_software_collections:3::el7 httpd24-libnghttp2 0 0:1.7.1-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-libnghttp2-devel 0 0:1.7.1-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-mod_ldap 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-mod_md 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-mod_proxy_html 0 1:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-mod_session 0 0:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-mod_ssl 0 1:2.4.34-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-nghttp2 0 0:1.7.1-7.el7
Red Hat:rhel_software_collections:3::el7 httpd24-nghttp2-debuginfo 0 0:1.7.1-7.el7
SUSE:Linux Enterprise Desktop 12 SP1 curl 0 7.37.0-28.1
SUSE:Linux Enterprise Point of Sale 11 SP3 curl 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server 11 SP3-LTSS curl 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server 11 SP3-LTSS curl-openssl1 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server 11 SP3-TERADATA curl 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server 11 SP3-TERADATA curl-openssl1 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server 11 SP4 curl 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server 11-SECURITY curl-openssl1 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server 12 SP1 curl 0 7.37.0-28.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 curl 0 7.19.7-1.61.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 curl 0 7.37.0-28.1
SUSE:Linux Enterprise Software Development Kit 11 SP4 curl 0 7.19.7-1.61.1
SUSE:Linux Enterprise Software Development Kit 12 SP1 curl 0 7.37.0-28.1
SUSE:Manager 2.1 curl 0 7.19.7-1.61.1
SUSE:Manager Proxy 2.1 curl 0 7.19.7-1.61.1
SUSE:OpenStack Cloud 5 curl 0 7.19.7-1.61.1
SUSE:Studio Onsite 1.3 curl 0 7.19.7-1.20.42.1
Ubuntu:14.04:LTS curl 0 7.35.0-1ubuntu2.8
Ubuntu:16.04:LTS curl 0 7.47.0-1ubuntu2.1

Related vulnerabilities