Точка входа в ollydbg не соответствует значению ImageBase в PE - PullRequest
0 голосов
/ 18 января 2019

Я новичок в анализе PE, поэтому, пожалуйста, ответьте на вопрос. Загрузка PE в Windows XP и Windows 7 показывает разные точки входа

Hello.exe, созданный в Windows XP.

CFF Explorer показывает ImageBase 0x00400000 и AddressOfEntryPoint 0x00001578 . Но когда я загружаю hello.exe в OllyDbg (работает на Windows 7) , он показывает EP при 0x773201C8

Когда я загружаю hello.exe в OllyDbg (работает в Windows XP) , отображается правильное значение EP при 0x00401578 .

Я хотел бы знать, почему EP отличается в Windows 7.

1 Ответ

0 голосов
/ 15 февраля 2019

Адрес точки входа в PeHeader - это RVA (относительный виртуальный адрес)

это относительно базы изображений

C:\>dumpbin /headers c:\Windows\System32\calc.exe | grep -iE "entry|im.*base"
           12D6C entry point (01012D6C) _WinMainCRTStartup
         1000000 image base (01000000 to 010BFFFF)

База изображений может быть разной для разных нагрузок (Рандомизация макета адресного пространства в режиме чтения при ASLR)

так что вы видите эти различия

...