Описание
Уязвимость функции Curl_ntlm_core_mk_nt_hash программного средства для взаимодействия с серверами curl связана с переполнением буфера в ходе проверки подлинности кода аутентификации NTLM. Функция Curl_ntlm_core_mk_nt_hash умножает длину пароля на два (SUM), чтобы определить достаточный размер выделяемой временной области памяти из кучи. Затем значение длины используется для итеграции по паролю и выработки выходного значения хеша в выделенный буфер хранения. В системах с типом данных size_t, равным 32-м битам, попытка вычисления значения SUM приводит к целочисленному переполнению в случае, когда длина пароля превышает 2 ГБ (2^31 байт). Это целочисленное переполнение обычно приводит к тому, что очень маленький буфер выделяется вместо предполагаемого очень большого, и, соответственно, использование маленького буфера, в свою очередь, приводит к переполнению буфера кучи. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, вызвать отказ в обслуживании или выполнить произвольный код
Вендор
Наименование ПО
Версия ПО
Тип ПО
Операционные системы и аппаратные платформы
Уровень опасности уязвимости
Возможные меры по устранению уязвимости
Статус уязвимости
Наличие эксплойта
Информация об устранении
Идентификаторы других систем описаний уязвимостей
- CVE
EPSS
9.8 Critical
CVSS3
10 Critical
CVSS2
Связанные уязвимости
curl before version 7.61.1 is vulnerable to a buffer overrun in the NTLM authentication code. The internal function Curl_ntlm_core_mk_nt_hash multiplies the length of the password by two (SUM) to figure out how large temporary storage area to allocate from the heap. The length value is then subsequently used to iterate over the password and generate output into the allocated storage buffer. On systems with a 32 bit size_t, the math to calculate SUM triggers an integer overflow when the password length exceeds 2GB (2^31 bytes). This integer overflow usually causes a very small buffer to actually get allocated instead of the intended very huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is almost identical to CVE-2017-8816.)
curl before version 7.61.1 is vulnerable to a buffer overrun in the NTLM authentication code. The internal function Curl_ntlm_core_mk_nt_hash multiplies the length of the password by two (SUM) to figure out how large temporary storage area to allocate from the heap. The length value is then subsequently used to iterate over the password and generate output into the allocated storage buffer. On systems with a 32 bit size_t, the math to calculate SUM triggers an integer overflow when the password length exceeds 2GB (2^31 bytes). This integer overflow usually causes a very small buffer to actually get allocated instead of the intended very huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is almost identical to CVE-2017-8816.)
curl before version 7.61.1 is vulnerable to a buffer overrun in the NTLM authentication code. The internal function Curl_ntlm_core_mk_nt_hash multiplies the length of the password by two (SUM) to figure out how large temporary storage area to allocate from the heap. The length value is then subsequently used to iterate over the password and generate output into the allocated storage buffer. On systems with a 32 bit size_t, the math to calculate SUM triggers an integer overflow when the password length exceeds 2GB (2^31 bytes). This integer overflow usually causes a very small buffer to actually get allocated instead of the intended very huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is almost identical to CVE-2017-8816.)
curl before version 7.61.1 is vulnerable to a buffer overrun in the NT ...
EPSS
9.8 Critical
CVSS3
10 Critical
CVSS2