Уязвимость утечки информации в curl при HTTP(S) передачах из-за некорректного использования функции чтения
Описание
В curl версий до 8.1.0 присутствует уязвимость утечки информации при выполнении HTTP(S) передач. Библиотека libcurl может некорректно использовать функцию чтения CURLOPT_READFUNCTION
для запроса данных к отправке, даже если установлена опция CURLOPT_POSTFIELDS
. Это происходит в случае, если тот же дескриптор ранее использовался для отправки запроса PUT
, в котором применялась эта функция. Эта ошибка может привести к некорректному поведению приложения, такому как отправка неправильных данных или использование памяти после освобождения при второй передаче данных. Проблема заключается в логике повторного использования дескриптора, когда ожидается изменение метода с PUT
на POST
.
Затронутые версии ПО
- curl <v8.1.0
Тип уязвимости
Утечка информации
Ссылки
- Mailing ListThird Party Advisory
- Mailing ListThird Party Advisory
- Mailing ListThird Party Advisory
- ExploitPatchThird Party Advisory
- Third Party Advisory
- Third Party Advisory
- Third Party Advisory
- Third Party Advisory
- Third Party Advisory
- Mailing ListThird Party Advisory
- Mailing ListThird Party Advisory
- Mailing ListThird Party Advisory
- ExploitPatchThird Party Advisory
- Third Party Advisory
Уязвимые конфигурации
Одно из
Одно из
Одно из
Одновременно
Одновременно
Одновременно
Одновременно
EPSS
3.7 Low
CVSS3
Дефекты
Связанные уязвимости
An information disclosure vulnerability exists in curl <v8.1.0 when doing HTTP(S) transfers, libcurl might erroneously use the read callback (`CURLOPT_READFUNCTION`) to ask for data to send, even when the `CURLOPT_POSTFIELDS` option has been set, if the same handle previously wasused to issue a `PUT` request which used that callback. This flaw may surprise the application and cause it to misbehave and either send off the wrong data or use memory after free or similar in the second transfer. The problem exists in the logic for a reused handle when it is (expected to be) changed from a PUT to a POST.
An information disclosure vulnerability exists in curl <v8.1.0 when doing HTTP(S) transfers, libcurl might erroneously use the read callback (`CURLOPT_READFUNCTION`) to ask for data to send, even when the `CURLOPT_POSTFIELDS` option has been set, if the same handle previously wasused to issue a `PUT` request which used that callback. This flaw may surprise the application and cause it to misbehave and either send off the wrong data or use memory after free or similar in the second transfer. The problem exists in the logic for a reused handle when it is (expected to be) changed from a PUT to a POST.
An information disclosure vulnerability exists in curl <v8.1.0 when do ...
An information disclosure vulnerability exists in curl <v8.1.0 when doing HTTP(S) transfers, libcurl might erroneously use the read callback (`CURLOPT_READFUNCTION`) to ask for data to send, even when the `CURLOPT_POSTFIELDS` option has been set, if the same handle previously wasused to issue a `PUT` request which used that callback. This flaw may surprise the application and cause it to misbehave and either send off the wrong data or use memory after free or similar in the second transfer. The problem exists in the logic for a reused handle when it is (expected to be) changed from a PUT to a POST.
EPSS
3.7 Low
CVSS3