CVE-2021-22924
Published: 21 July 2021
libcurl keeps previously used connections in a connection pool for subsequenttransfers to reuse, if one of them matches the setup.Due to errors in the logic, the config matching function did not take 'issuercert' into account and it compared the involved paths *case insensitively*,which could lead to libcurl reusing wrong connections.File paths are, or can be, case sensitive on many systems but not all, and caneven vary depending on used file systems.The comparison also didn't include the 'issuer cert' which a transfer can setto qualify how to verify the server certificate.
Notes
Author | Note |
---|---|
mdeslaur | introduced in 7.10.4 |
rodrigo-zaiden | although the issue was introduced in 7.10.4, versions earlier than 7.52.0 would need at least parts of commit cb4e2be7 so the fix for this CVE can be applied. this change seems quite intrusive and there is a high risk of regressions. hence, versions earlier than 7.52 will be ignored. |
Priority
Status
Package | Release | Status |
---|---|---|
curl Launchpad, Ubuntu, Debian |
bionic |
Released
(7.58.0-2ubuntu3.14)
|
focal |
Released
(7.68.0-1ubuntu2.6)
|
|
groovy |
Ignored
(reached end-of-life)
|
|
hirsute |
Released
(7.74.0-1ubuntu2.1)
|
|
impish |
Released
(7.74.0-1.2ubuntu4)
|
|
jammy |
Released
(7.74.0-1.2ubuntu4)
|
|
kinetic |
Released
(7.74.0-1.2ubuntu4)
|
|
lunar |
Released
(7.74.0-1.2ubuntu4)
|
|
trusty |
Ignored
(changes too intrusive)
|
|
upstream |
Released
(7.78.0)
|
|
xenial |
Ignored
(changes too intrusive)
|
|
Patches: upstream: https://github.com/curl/curl/commit/5ea3145850ebff1dc2b13d17440300a01ca38161 |
Severity score breakdown
Parameter | Value |
---|---|
Base score | 3.7 |
Attack vector | Network |
Attack complexity | High |
Privileges required | None |
User interaction | None |
Scope | Unchanged |
Confidentiality | Low |
Integrity impact | None |
Availability impact | None |
Vector | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N |