Дата публикации: | 16.12.2002 |
Всего просмотров: | 1085 |
Опасность: | |
Наличие исправления: | |
Количество уязвимостей: | 1 |
CVE ID: | Нет данных |
Вектор эксплуатации: | |
Воздействие: | |
CWE ID: | Нет данных |
Наличие эксплоита: | Нет данных |
Уязвимые продукты: | |
Описание: | Обнаружено две различных уязвимости в интерпретации PNG изображений в Microsoft Windows. Первая уязвимость связанна с обработкой IDAT заголовка и не представляет большой угрозы. Вторая уязвимость может использоваться для выполнения произвольного кода при просмотре злонамеренного PNG изображения. Из-за сложности этих уязвимостей eEye решил только подробно описать только последнюю. Уязвимость искажения динамической памяти существует в пути, которым функция inflate_fast () в pngfilt.dll, обрабатывает некоторые недопустимые данные во входящем потоке данных "deflate" в PNG изображении. Спецификация сжатия "deflate" использует копии образцов, которые присутствуют в сжатых данных. Это достигается, определяя пару специальных кодов, которые сообщают подпрограмме декомпрессии информацию о промежуточном коде (distance code) и длине кода (length code). Подпрограмма inflate_fast() не в состоянии правильно обработать недопустимую длину кода (согласно спецификации), и в результате, атакующий может переполнить стек, и выполнить произвольный код, внедренный в кодированный "deflate" поток данных внутри PNG изображения. Переполнение кучи, описанное выше, происходит в механизме интерпретации сжатого блока, которые используют коды Хаффмана (BTYPE = 1). Длина кода #286 и #287, помеченная как недопустимая в программной спецификации (RFC 1951), не отвергается подпрограммой, и вместо этого обрабатывается как код нулевой длины. Однако из-за неправильной работы программы декомпрессии, счетчик длины уменьшиться до оценки цикла, в результате произойдет целочисленное переполнение буфера. В результате, наш образец циклически пройдет все доступное адресное пространство (4 Gb (0xFFFFFFFF) ), перезапишет на 32 КБ наш выходной буфер и выдаст ошибку доступа к памяти. Уязвимость обнаружена в Internet Explorer 5.5-6.0 и устранена в патче MS02-066 |
Ссылки: | PNG (Portable Network Graphics) Deflate Heap Corruption Vulnerability |