в EBX взялись эти злощастные
Но откуда в EBX взялись эти злощастные 1Ah? Поднимаясь по дизассемблерному листингу вверх, мы находим инструкцию MOV EBX, EAX, копирующую содержимое EAX в EBX. Значение самого же EAX возвращается функцией DllGetClassObject+0x1f573, расположенной по адресу 75AD7E43h. Важно понять, что к самой DllGetClassObject
никакого отношения она не имеет! Просто, не найдя символьной информации, Др. Ватсон взял адрес ближайшей известной ему функции и назначил его в качестве базового.
Кое-что начинает проясняться. Функция 75AD7E43h должна возвращать указатель на структуру данных, по смещению 34h от начала которой лежит еще один указатель, но накурившись exploit'а она возвратила какую-то хрень. Напоминаю, что сбой произошел при закрытии IE, то есть, когда обработка HTML-кода уже была завершена. Следовательно, сама функция 75AD7E43h тут не причем (ее можно даже не дизассемблировать) и причину следует искать в разрушении структур данных, с которыми эта функция работает.
Теперь исследуем сбой, относящийся к IEdie2-3, дизассемблерные окрестности которого выглядят так:
eax=00000000 ebx=000af334 ecx=00000428 edx=01340294 esi=01480007 edi=01481990
eip=75acc4da esp=0006dba0 ebp=0006dbcc iopl=0 nv up ei pl nz na pe nc
функция: <nosymbols>
75acc4bd 60 pushad
75acc4be 8501 test [ecx],eax ds:00000428=?????
75acc4c0 56 push esi
75acc4c1 8bf1 mov esi,ecx
75acc4c3 e8555cfcff call 75a9211d
75acc4c8 668b766c mov si,[esi+0x6c] ds:01efd5de=????
75acc4cc 6685f6 test si,si
75acc4cf 7418 jz DllGetClassObject+0x14b19 (75acd3e9)
75acc4d1 0fb7ce movzx ecx,si
75acc4d4 69c998000000 imul ecx,ecx,0x98
СБОЙ -> 75acc4da 8b8020040000 mov eax,[eax+0x420] ds:00000420=??????
75acc4e0 5e pop esi
75acc4e8 c3 ret
FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 Function Name
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий