Несколько дней назад я эксперементировал с обьектами в Internet Explorer. Как результат, мной была найденна уязвимость, позволяющая атакующему критичесски завершить процесс броузера.
то Internet Explorer завершит свою работу по причине попытки доступа к адресу 0x00000000.
Исключительная ситуация (0х00000005) происходит в модуле "srchui.dll". После чего появляется ссобщение "A file that is required to run search companion cannot be found. You may need to run setup".
После дополнительных проверок, оказалось что ошибка в результате которой появляется данное сообщение уже была найдена в начале 2002 года и к ней существует патч Q319949(он входит в состав WIndowsXP SP1). Поскольку патч к данной узвимости в моей системе уже установлен, то возможно предположить что уязвимость действительно новая.
Самое интерессное происходит если запустить отладку процесса. В дизассемблированном виде этот фрагмент кода выглядит следующим образом:
...
[1] push ebx
[2] push ebp
[3] push esi
[4] mov esi,ecx
[5] mov eax,dword ptr [esi+14F4h]
[6] push eax
[7] mov ecx,dword ptr [eax] <- в этом месте происходит ошибка
[8] call dword ptr [ecx+20h]
...
---
В eсx хранится значение по адресу eax. Но обратите внимание на сроку [8].Эта строчка делает переход по адресу, который хранится по адресу ecx+20h. Следовательно если есть возможность контроллировать данные в стеке(а именно оттуда берется значение регистра eax), то вполне возможно говорить о возможности удалленного выполнения шеллкода.
Но к сожалению мне так и не удалось достигнуть цели и по этому я решил опубликовать данный материал, дав вам пищу для размышлений.
Надеюсь на сотрудничество с вашей стороны.
IE 5.0, wni2k sp4, глюков нет.. может дело в версии IE, или системе?13.01.04 10:21 Автор: !mm <Ivan Ch.> Статус: Elderman