Атака на Windows с использованием SetWindowLong

15/10/2004 14:21

Неутомимый Brett Moore из Security-Assessment.com продолжает радовать подробностями уязвимостей в Windows. На сей раз Бретт описывает метод атаки на ОС Windows с использованием API SetWindowLong()/SetWindowLongPtr(). Как описано в MSDN, SetWindowLong изменяет атрибуты соответствующего окна. Помимо этого, функция устанавливает 32-bit (long) значение смещения внутри экстра-памяти окна. С SendMessage() функцией любой пользователь может подменить данные, сохранённые в памяти применяемого окна. В резултате манипуляций с различными параметрами функции SetWindowLong() существует возможность загрузки собственного кода в известные области памяти с его дальнейшим выполнением. Самое примечательное, что M$ была извещена о подобной "особенности" ещё 5 февраля. Для устранения её рекомендуется применить патч, описанный в MS04-032. Уязвимость присутствует в: Windows 98, 98SE, ME, NT 4.0, 2000 Service Pack 4, XP, Microsoft Windows XP Service Pack 1, Windows Server 2003.
Описание в PDF-формате