CVE-2023-27535
FTP too eager connection reuse
Project curl Security Advisory, March 20th 2023 - Permalink
VULNERABILITY
libcurl would reuse a previously created FTP connection even when one or more options had been changed that could have made the effective user a very different one, thus leading to doing the second transfer with the wrong credentials.
libcurl keeps previously used connections in a connection pool for
subsequent transfers to reuse if one of them matches the setup. However,
several FTP settings were left out from the configuration match checks,
making them match too easily. The settings in questions are
CURLOPT_FTP_ACCOUNT
,
CURLOPT_FTP_ALTERNATIVE_TO_USER
,
CURLOPT_FTP_SSL_CCC
and CURLOPT_USE_SSL
level.
INFO
CWE-305: Authentication Bypass by Primary Weakness
Severity: Medium
AFFECTED VERSIONS
- Affected versions: curl 7.13.0 to and including 7.88.1
- Not affected versions: curl < 7.13.0 and curl >= 8.0.0
- Introduced-in: https://github.com/curl/curl/commit/177dbc7be07125582
libcurl is used by many applications, but not always advertised as such!
SOLUTION
RECOMMENDATIONS
A - Upgrade curl to version 8.0.0
B - Apply the patch to your local version
TIMELINE
This issue was reported to the curl project on March 5, 2023. We contacted distros@openwall on March 13, 2023.
curl 8.0.0 was released on March 20 2023, coordinated with the publication of this advisory.
CREDITS
- Reported-by: Harry Sintonen
- Patched-by: Daniel Stenberg
Thanks a lot!