Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 июня!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

АРХИВ ФОРУМА eXeL@B
https://exelab.ru/f/

   

KLAUS Нахождение OEP Народ подскажите как прогрммно найтит и изменить OEP на...


KLAUS Нахождение OEP Народ подскажите как прогрммно найтит и изменить OEP на asm или Delphi??
MoonShiner :: Читай инфу по PE-заголовку.

KLAUS Re: MoonShiner :: А конечно понимаю, что проще всего дать мутный ответ, чем дать конкретный и тем самым помощь человеку.
Ну а точнее можно!

MozgC [TSRh] :: Мде, ленится народ...

KLAUS :: Народ спрашивает у знающих людей, когда сам не смог найти ответ на свой вопрос!

MoonShiner :: KLAUS пишет:
цитата:
Ну а точнее можно!


Находишь PE-заголовок (например, сигнатурку PE для начала), отсчитываешь от ее начала 28 десятичное, и двойное слово, лежащее по получившемуся адресу и есть EP.

KLAUS :: Угу...Спасибо!!
А получившиеся Dword всегда будет OEP, не зависимо от того, запакован файл или нет...
И как всё таки программно определить тогда PE заголовок (хотя бы примерноо)??

Kerghan :: Bad_guy пишет:

цитата:
Как найти EP место в файле, назовем этот адрес REP. Берем наш экзешник. Читаем по адресу 3Ch dword число - это адрес заголовка PE, прибавляем к этому числу 28h и читаем по получившемуся адресу снова dword (это будет виртуальный адрес EP (VEP) (без imagebase). Кароче надо перебрать атрибуты всех секций (длина заголовка секции - 28h), число секций хранится по адресу заголовка PE+6, надо считать word. Теперь нужен адрес заголовка первой секции: его получаем складывая адрес заголовка PE, константу 18h и word по адресу (адрес заголовка PE+14h). Теперь читаем атрибуты первой секции: нам нужен будет VOffSet(0Ch), VSize(08h), Roffset(14h). В скобках указаны смещения относительно адреса заголовка этой секции, читать каждый раз dword. А потом определяем, физический адрес EP (REP). Если (VEP - VOffset ‹ VSize) and (VEP - VOffset ›= 0) тогда наш REP = VEP - VOffset + Roffset, а если нет, то надо искать REP в следующих секциях.


mnalex :: KLAUS
Слушай а ты часом непутаешь ОЕР и ЕР ? Отличие то знаешь в чем?

DEMON :: KLAUS

Не хочешь париться?? Скачай PE Tools v1.5 Xmas Edition!!!

Bad_guy :: А я кажется понял - Клаусу нужно не EP экзешника, а OEP запакованного экзешника найти. В дампе файла можно искать по сигнатурам - такой будет ответ. Где ты возьмешь дамп и как ты будешь искать - твое дело.

Python_Max :: А какой прогой можно изменить именно OEP запакованного файла?
Чтобы не вручную...
Или нет таких? Вроде в одной из статей проскакивало, что это может ProcDump...

DEMON :: Python_Max пишет:
цитата:
Вроде в одной из статей проскакивало, что это может ProcDump...


Не видел такой статьи, но мне кажеться что ProcDump говно!!!!

-= ALEX =- :: Python_Max я тебе уже ответил насчет OEP в теме -=alex=- patcher

DEMON :: Так че он конкретно хочет???

KLAUS :: Народ смысл такой у проги OEP=****DF92 нужно чтоб стал ****E0AD , но сделать это ПРОГРАММНО ( не HIEW, не ProceDUMP...ни какой либо другой прогой)......я знаю как заменить, но не знаю как определить ПРОГРММНО OEP!!!!

KLAUS :: ПРограммно (.т.е на ASM, Delphi).....ну самый край С++

MozgC [TSRh] :: ПРога упакована ?

KLAUS :: ДА

MozgC [TSRh] :: И разницу между EP и OEP ты понимаешь ?

KLAUS :: Тебе сказать в чём разница? (Понимаю)

Bad_guy :: А чем упакована то ?

KLAUS :: Так в этом то и дело...нужно чтоб автоматом определяло ( не зависимо чем упакованна прога)!!

MozgC [TSRh] :: Никак ты не сделаешь этого, не запуская прогу. А запуская можешь использовать genoep.dll, но ты не сможешь в общем случае изменить OEP.

KLAUS :: Мля, косяк!
Ну а тогда EP как ПРОГРАММНО определить??

Madness :: KLAUS

цитата:
PE Header:
...
28h - DWord Entry point RVA - адрес, относительно Image Base по которому передается управление при запуске программы или адрес инициализации/завершения библиотеки.
...







   
Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS