HexBrain

Internet Bug Bounty · Report #1912782

CVE-2023-27536: GSS delegation too eager connection re-use

Validstatus
lowseverity
$480bounty
12upvotes
20 Mar 2023disclosed

Summary

CVE-2023-27536: GSS delegation too eager connection re-use

Project curl Security Advisory, March 20th 2023 - Permalink

VULNERABILITY

libcurl would reuse a previously created connection even when the GSS delegation (CURLOPT_GSSAPI_DELEGATION) option had been changed that could have changed the user's permissions in a second transfer.

libcurl keeps previously used connections in a connection pool for subsequent transfers to reuse if one of them matches the setup. However, this GSS delegation setting was left out from the configuration match checks, making them match too easily, affecting krb5/kerberos/negotiate/GSSAPI transfers.

We are not aware of any exploit of this flaw.

INFO

CVE-2023-27536 was introduced in commit ebf42c4be76df4, shipped in curl 7.22.0.

CWE-305: Authentication Bypass by Primary Weakness

Severity: Low

AFFECTED VERSIONS

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

THE SOLUTION

A fix for CVE-2023-27536

RECOMMENDATIONS

A - Upgrade curl to version 8.0.0

B - Apply the patch to your local version

C - Do not use the CURLOPT_GSSAPI_DELEGATION option

How it was found

libcurl would reuse a previously created connection even when the GSS delegation (CURLOPT_GSSAPI_DELEGATION) option had been changed that could have changed the user's permissions in a second transfer.

libcurl keeps previously used connections in a connection pool for subsequent transfers to reuse if one of them matches the setup. However, this GSS delegation setting was left out from the configuration match checks, making them match too easily, affecting krb5/kerberos/negotiate/GSSAPI transfers.

Hackerone report

#1895135

Impact

Existing connection that was established via more lax delegation will be reused for connection that should not succeed due to more restrictive delegation requested.

This report was disclosed publicly on HackerOne and belongs to its author and the program. See the original