Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

nvd логотип

CVE-2022-42915

Опубликовано: 29 окт. 2022
Источник: nvd
CVSS3: 8.1
EPSS Низкий

Уязвимость двойного освобождения памяти в curl при использовании HTTP-прокси для передачи данных через не-HTTP(S) URL

Описание

В curl существует уязвимость двойного освобождения памяти. Если curl настроен использовать HTTP-прокси для передачи данных с не-HTTP(S) URL, он устанавливает соединение с удаленным сервером через отправку запроса CONNECT прокси-серверу, а затем передает остальную часть протокола через туннель. Однако HTTP-прокси может отказаться от выполнения этого запроса (часто прокси разрешают исходящие соединения только на определенные порты, например, 443 для HTTPS) и вернуть клиенту статус-код, отличный от 200. Из-за недостатков в обработке ошибок/очистке памяти, это может привести к ситуации двойного освобождения памяти в curl, если в URL-передачи использовались следующие схемы: dict, gopher, gophers, ldap, ldaps, rtmp, rtmps или telnet.

Затронутые версии ПО

  • Начальная затронутая версия: 7.77.0
  • Уязвимость устранена в версии: 7.86.0

Тип уязвимости

Двойное освобождение памяти (double free)

Ссылки

Уязвимые конфигурации

Конфигурация 1
cpe:2.3:a:haxx:curl:*:*:*:*:*:*:*:*
Версия от 7.77.0 (включая) до 7.86.0 (исключая)
Конфигурация 2

Одно из

cpe:2.3:o:fedoraproject:fedora:35:*:*:*:*:*:*:*
cpe:2.3:o:fedoraproject:fedora:36:*:*:*:*:*:*:*
cpe:2.3:o:fedoraproject:fedora:37:*:*:*:*:*:*:*
Конфигурация 3

Одновременно

cpe:2.3:o:netapp:h300s_firmware:-:*:*:*:*:*:*:*
cpe:2.3:h:netapp:h300s:-:*:*:*:*:*:*:*
Конфигурация 4

Одновременно

cpe:2.3:o:netapp:h500s_firmware:-:*:*:*:*:*:*:*
cpe:2.3:h:netapp:h500s:-:*:*:*:*:*:*:*
Конфигурация 5

Одновременно

cpe:2.3:o:netapp:h700s_firmware:-:*:*:*:*:*:*:*
cpe:2.3:h:netapp:h700s:-:*:*:*:*:*:*:*
Конфигурация 6

Одновременно

cpe:2.3:o:netapp:h410s_firmware:-:*:*:*:*:*:*:*
cpe:2.3:h:netapp:h410s:-:*:*:*:*:*:*:*
Конфигурация 7
cpe:2.3:a:netapp:ontap_9:-:*:*:*:*:*:*:*
Конфигурация 8

Одно из

cpe:2.3:o:apple:macos:*:*:*:*:*:*:*:*
Версия от 12.0.0 (включая) до 12.6.3 (исключая)
cpe:2.3:o:apple:macos:*:*:*:*:*:*:*:*
Версия от 13.0 (включая) до 13.2 (исключая)
Конфигурация 9

Одно из

cpe:2.3:a:splunk:universal_forwarder:*:*:*:*:*:*:*:*
Версия от 8.2.0 (включая) до 8.2.12 (исключая)
cpe:2.3:a:splunk:universal_forwarder:*:*:*:*:*:*:*:*
Версия от 9.0.0 (включая) до 9.0.6 (исключая)
cpe:2.3:a:splunk:universal_forwarder:9.1.0:*:*:*:*:*:*:*

EPSS

Процентиль: 62%
0.00432
Низкий

8.1 High

CVSS3

Дефекты

CWE-415
CWE-415

Связанные уязвимости

CVSS3: 8.1
ubuntu
больше 2 лет назад

curl before 7.86.0 has a double free. If curl is told to use an HTTP proxy for a transfer with a non-HTTP(S) URL, it sets up the connection to the remote server by issuing a CONNECT request to the proxy, and then tunnels the rest of the protocol through. An HTTP proxy might refuse this request (HTTP proxies often only allow outgoing connections to specific port numbers, like 443 for HTTPS) and instead return a non-200 status code to the client. Due to flaws in the error/cleanup handling, this could trigger a double free in curl if one of the following schemes were used in the URL for the transfer: dict, gopher, gophers, ldap, ldaps, rtmp, rtmps, or telnet. The earliest affected version is 7.77.0.

CVSS3: 7.5
redhat
больше 2 лет назад

curl before 7.86.0 has a double free. If curl is told to use an HTTP proxy for a transfer with a non-HTTP(S) URL, it sets up the connection to the remote server by issuing a CONNECT request to the proxy, and then tunnels the rest of the protocol through. An HTTP proxy might refuse this request (HTTP proxies often only allow outgoing connections to specific port numbers, like 443 for HTTPS) and instead return a non-200 status code to the client. Due to flaws in the error/cleanup handling, this could trigger a double free in curl if one of the following schemes were used in the URL for the transfer: dict, gopher, gophers, ldap, ldaps, rtmp, rtmps, or telnet. The earliest affected version is 7.77.0.

CVSS3: 8.1
msrc
больше 2 лет назад

Описание отсутствует

CVSS3: 8.1
debian
больше 2 лет назад

curl before 7.86.0 has a double free. If curl is told to use an HTTP p ...

CVSS3: 9.8
github
больше 2 лет назад

curl before 7.86.0 has a double free. If curl is told to use an HTTP proxy for a transfer with a non-HTTP(S) URL, it sets up the connection to the remote server by issuing a CONNECT request to the proxy, and then tunnels the rest of the protocol through. An HTTP proxy might refuse this request (HTTP proxies often only allow outgoing connections to specific port numbers, like 443 for HTTPS) and instead return a non-200 status code to the client. Due to flaws in the error/cleanup handling, this could trigger a double free in curl if one of the following schemes were used in the URL for the transfer: dict, gopher, gophers, ldap, ldaps, rtmp, rtmps, or telnet. The earliest affected version is 7.77.0.

EPSS

Процентиль: 62%
0.00432
Низкий

8.1 High

CVSS3

Дефекты

CWE-415
CWE-415