curl / Docs / Security Problems / TLS and SSH connection too eager reuse

TLS and SSH connection too eager reuse

Project curl Security Advisory, May 11 2022 - Permalink

VULNERABILITY

libcurl would reuse a previously created connection even when a TLS or SSH related option had been changed that should have prohibited reuse.

libcurl keeps previously used connections in a connection pool for subsequent transfers to reuse if one of them matches the setup. However, several TLS and SSH settings were left out from the configuration match checks, making them match too easily.

We are not aware of any exploit of this flaw.

INFO

Here are the list of options that were not considered in the check, so curl would reuse a connection even if the subsequent transfer would have changed one or more of these options.

TLS options

SSH options

This flaw was initially introduced in curl 7.16.1 and has been widened several times since then. See table above for details

The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2022-27782 to this issue.

CWE-305: Authentication Bypass by Primary Weakness

Severity: Medium

AFFECTED VERSIONS

libcurl is used by many applications, but not always advertised as such!

THE SOLUTION

The two patches for CVE-2022-27782: TLS-fix and SSH-fix

RECOMMENDATIONS

A - Upgrade curl to version 7.83.1

B - Apply the patch to your local version

TIMELINE

This issue was reported to the curl project on May 1, 2022. We contacted distros@openwall on May 5.

libcurl 7.83.1 was released on May 11 2022, coordinated with the publication of this advisory.

CREDITS

Thanks a lot!