4 / 4 / 4
Регистрация: 15.07.2014
Сообщений: 28
|
|
1 | |
Структура PE файла25.12.2014, 14:38. Просмотров 1271. Ответов 7
Метки нет Все метки)
(
Доброго времени суток!
Пытаюсь вручную создать исправный Exe файл, в котором PE-заголовок находится в конце файла. Т.к. код программы совсем минимален (только одна секция с кодом команды завершения работы), я перенес заголовок и поправил поле e_lfanew, но программа не запускается.. Подскажите что я делаю не так? Информацию о размещении заголовка взял тут: Кликните здесь для просмотра всего текста
PE-заголовок начинается непосредственно за концом old-exe программ, но может быть расположен в любом месте файла ― в его середине или конце, загрузчик определяет положение PE-заголовка по двойному слову e_lfanew, смещенному на 3Ch байт от начала файла. https://www.cyberforum.ru/post3945127.html
0
|
|
25.12.2014, 14:38 | |
Структура файла CDW.
Структура файла Структура файла |
|
22 / 22 / 5
Регистрация: 05.12.2013
Сообщений: 215
|
|
26.12.2014, 07:54 | 2 |
То есть ты в 61-м, 62-м, 63-м и 64-м байтах прописываешь адрес PE-заголовка?
0
|
4 / 4 / 4
Регистрация: 15.07.2014
Сообщений: 28
|
|
26.12.2014, 16:19 [ТС] | 3 |
Да, все верно. Если перемещаю заголовок по адресу 3F0, то записываю туда F0 03 00 00.
0
|
286 / 192 / 56
Регистрация: 25.12.2012
Сообщений: 640
|
|
28.12.2014, 20:28 | 4 |
А смысл его переносить ? Секции хоть как должны идти за PE (а не перед), причём никаких пустот между ними быть не должно.
0
|
4 / 4 / 4
Регистрация: 15.07.2014
Сообщений: 28
|
|
29.12.2014, 03:34 [ТС] | 6 |
Секции могут идти перед PE заголовком, и пустоты между ними допускаются. Вот только заголовок дальше 0x1С8 не получается отодвинуть. Да и почему такое магическое число - я информации не нашел.
0
|
4 / 4 / 4
Регистрация: 15.07.2014
Сообщений: 28
|
|
29.12.2014, 03:45 [ТС] | 7 |
elfanew 0x1C8
Pic
0
|
286 / 192 / 56
Регистрация: 25.12.2012
Сообщений: 640
|
|
30.12.2014, 01:31 | 8 |
![]() Решение
Если вы имели виду в самом файле (raw data offset) то да , я имел виду уже загруженный образ.
При переносе нужно учитывать ещё такие параметры как NtHeader->OptionalHeader->SizeOfHeaders (размер всех заголовков). А если двигаете дальше чем (Section align) тогда придется менять ещё больше (AddressOfEntryPoint,SizeOfImage,SizeOfHeaders,Section->VirtualAddress).
0
|
30.12.2014, 01:31 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь. Структура из файла Структура и чтение файла Структура *.ithmb файла. Структура бинарного файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |