Уязвимость чрезмерного выделения ресурсов в curl из-за отсутствия ограничения на количество шагов декомпрессии в цепочке HTTP-компрессии
Описание
Уязвимость избыточного выделения ресурсов существует в curl в связи с использованием "цепных" (chained) алгоритмов HTTP-компрессии. Серверный ответ может быть сжат многократно, потенциально с применением различных алгоритмов. Количество допустимых "ссылок" в такой "цепочке декомпрессии" ограничено, однако это ограничение применяется к каждому заголовку по отдельности. Это позволяет злоумышленнику добавить практически неограниченное количество шагов компрессии, используя множество заголовков. Использование такой цепочки декомпрессии может привести к malloc bomb
, заставляя curl выделять огромное количество памяти в куче или возвращать ошибку из-за нехватки памяти.
Затронутые версии ПО
- curl < 7.88.0
Тип уязвимости
Чрезмерное выделение ресурсов
Ссылки
- ExploitIssue Tracking
- Mailing ListThird Party Advisory
- Mailing ListThird Party Advisory
- Third Party Advisory
- Third Party Advisory
- Third Party Advisory
- ExploitIssue Tracking
- Mailing ListThird Party Advisory
- Mailing ListThird Party Advisory
- Third Party Advisory
- Third Party Advisory
- Third Party Advisory
Уязвимые конфигурации
Одно из
Одновременно
Одновременно
Одновременно
Одновременно
Одно из
EPSS
6.5 Medium
CVSS3
Дефекты
Связанные уязвимости
An allocation of resources without limits or throttling vulnerability exists in curl <v7.88.0 based on the "chained" HTTP compression algorithms, meaning that a server response can be compressed multiple times and potentially with differentalgorithms. The number of acceptable "links" in this "decompression chain" wascapped, but the cap was implemented on a per-header basis allowing a maliciousserver to insert a virtually unlimited number of compression steps simply byusing many headers. The use of such a decompression chain could result in a "malloc bomb", making curl end up spending enormous amounts of allocated heap memory, or trying to and returning out of memory errors.
An allocation of resources without limits or throttling vulnerability exists in curl <v7.88.0 based on the "chained" HTTP compression algorithms, meaning that a server response can be compressed multiple times and potentially with differentalgorithms. The number of acceptable "links" in this "decompression chain" wascapped, but the cap was implemented on a per-header basis allowing a maliciousserver to insert a virtually unlimited number of compression steps simply byusing many headers. The use of such a decompression chain could result in a "malloc bomb", making curl end up spending enormous amounts of allocated heap memory, or trying to and returning out of memory errors.
An allocation of resources without limits or throttling vulnerability ...
EPSS
6.5 Medium
CVSS3