![]() |
eXeL@B —› Вопросы новичков —› Распаковываю dll, вопрос по IAT |
Посл.ответ | Сообщение |
|
Создано: 04 августа 2013 23:08 · Личное сообщение · #1 Добрый вечер. Распаковываю dll, вышел на оеп, снял дамп, и вот вопрос правильно ли определил границы в IAT кусочек из ImpRec-а Code:
или надо было остановиться после winmm.dll. Смущает вот это Code:
как бы 2 раза нули после dll . ![]() |
|
Создано: 04 августа 2013 23:38 · Личное сообщение · #2 |
|
Создано: 04 августа 2013 23:50 · Поправил: alexpol · Личное сообщение · #3 |
|
Создано: 05 августа 2013 00:07 · Поправил: daFix · Личное сообщение · #4 |
|
Создано: 05 августа 2013 00:11 · Личное сообщение · #5 |
|
Создано: 05 августа 2013 00:42 · Личное сообщение · #6 |
|
Создано: 05 августа 2013 00:54 · Поправил: alexpol · Личное сообщение · #7 |
|
Создано: 05 августа 2013 10:06 · Личное сообщение · #8 |
|
Создано: 05 августа 2013 11:32 · Личное сообщение · #9 alexpol пишет: это я понимаю, нужно будет найти что это такое 0 000C6238 ? 0000 80000004 0 000C623C ? 0000 8000000C Иногда импорт вызывается по ординалу, ну так это больше похоже на то что какаято библиотека была не инициалезирована а может конвертор просто нагадил в табличку чтоб запутать, вообще инфы мало и любой следующий ответ будет сделан на предположении... ----- Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли. ![]() |
|
Создано: 05 августа 2013 13:05 · Личное сообщение · #10 |
|
Создано: 05 августа 2013 13:31 · Личное сообщение · #11 |
|
Создано: 11 февраля 2015 18:38 · Личное сообщение · #12 Чтобы не плодить подобную тему спрошу здесь. В 33 главе крекинга с нуля, где объясняется принцип работы иат, говорится, что адреса функций заполняются в таблице через GetProcAddress до останова на точке входа. А адрес самой функции GetProcAddress от версии к версии константа? Или pe-загрузчик имеет какой-то свой механизм обращения к ней? ![]() |
|
Создано: 11 февраля 2015 19:28 · Личное сообщение · #13 shiroko пишет: А адрес самой функции GetProcAddress от версии к версии константа? 2 разные версии ос покажут что к чему.Если импорт берется по ординалам, а они, как и адресация, различны в зависимости от версии ОС, то такая прога не будет работать нигде, кроме этой самой оси.PE-загрузчик должен вызывать функцию по ее имени, тогда ему будет абсолютно все равно на то, в какой адресной области она расположена и под какой ОС юзается прога. ----- TEST YOUR MIGHT ![]() |
|
Создано: 11 февраля 2015 21:16 · Личное сообщение · #14 |
|
Создано: 12 февраля 2015 06:26 · Личное сообщение · #15 HiEndsoft зачем мне что-то менять если я говорю об обновлениях винды , в которых коррективы в библу повлияют на адрес функции в ней, а соответственно и на импорт к обращающимся к ним экзешникам Добавлено спустя 7 минут unknownproject или я не вполне вкурил твою идею... или я прогадал , влепя сюда загрузчик, а на самом деле там все сложнее ... или я нихрена не могу понять из твоего письма P.S. есть вероятность предвзятого недопонимания ввиду твоего рейтинга но это лишь догадка ![]() ![]() |
|
Создано: 12 февраля 2015 10:55 · Личное сообщение · #16 |
|
Создано: 12 февраля 2015 11:00 · Личное сообщение · #17 |
|
Создано: 12 февраля 2015 12:53 · Поправил: dosprog · Личное сообщение · #18 shiroko пишет: Чтобы не плодить подобную тему спрошу здесь. В 33 главе крекинга с нуля, где объясняется принцип работы иат, говорится, что адреса функций заполняются в таблице через GetProcAddress до останова на точке входа. А адрес самой функции GetProcAddress от версии к версии константа? Или pe-загрузчик имеет какой-то свой механизм обращения к ней? Так и есть, как сказал Archer. Но есть и кое-какие костыли. ![]() |
|
Создано: 15 февраля 2015 04:48 · Личное сообщение · #19 TryAga1n пишет: Наверное ты плохо знаком с форматом PE, советую почитать соответствующую литератур Да насчет этого вопросов не имею благодаря статьям из васма ..... а вот насчет того чем объясняется вызов функции GetProcAddress пока что не уверен... но возможно найду ответ в решениях Archer или dosprog. И пользуясь моментом хотелось бы уточнить момент корректировки иат... в некоторых случаях распаковки вручную не вполне понятен размер иат... как его определить при условии если нет в коде косвенных переходов ![]() |
|
Создано: 15 февраля 2015 13:23 · Поправил: dosprog · Личное сообщение · #20 |
|
Создано: 09 августа 2016 12:20 · Личное сообщение · #21 |
|
Создано: 09 августа 2016 20:41 · Личное сообщение · #22 |
![]() |
eXeL@B —› Вопросы новичков —› Распаковываю dll, вопрос по IAT |