Посл.ответ |
Сообщение |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 24 января 2009 16:54 · Личное сообщение · #1
Щас пишется прога, одной с ее ф-ий есть получение импорта. Столкнулись с такой проблемой, что при работе с прогами упаковаными WinUPack'ом 0.39 идет не коректное получение импорта, я подключил к этой проблеме знакомого, после нескольких дней иследования, получили заключение, что в прогах упакованых WinUPack'ом 0.39 импорта вобще нет. Тогда интересно как его получают тот же самый PEiD или DiE.
Где истина?
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
|
 Ранг: 529.0 (!), 110thx Активность: 0.29↘0.04 Статус: Участник 5KRT
|
Создано: 24 января 2009 17:06 · Поправил: daFix · Личное сообщение · #2
Одна поправка - импорт я не несколько дней смотрел, а минут 10. И вторая поправка - я только вчера вечером взялся помогать. Этот знакомый - это я
Натолкните на мысль...
----- Research For Food | Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 24 января 2009 17:08 · Личное сообщение · #3
кури доки по пе формату и директории импорта
----- [nice coder and reverser] | Сообщение посчитали полезным: |
 Ранг: 355.4 (мудрец), 55thx Активность: 0.32↘0 Статус: Uploader 5KRT
|
Создано: 24 января 2009 17:19 · Поправил: coderess · Личное сообщение · #4
мб стоит кусок кода привести, который ответственен за получения импорта?
ЗЫ: динамически API подгружаются, через, LoadLibrary/GetProcAddress
----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes | Сообщение посчитали полезным: |
 Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 24 января 2009 17:45 · Личное сообщение · #5
Импорта не может не быть. Сейчас практически ни 1 программа не работает без функций импорта. Значит невосстановление их грозит неработоспособностью дампа. Либо я чо-то не понял, и вопрос не в восстановлении импорта, а просто чтении его из пе-файла (через пе-тулз тогда прогони). Сформулируй вопрос конкретно и кодес дай.
| Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 24 января 2009 17:55 · Личное сообщение · #6
Archer пишет:
чтении его из пе-файла
имено, нужно его прочесть с файла
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
 Ранг: 529.0 (!), 110thx Активность: 0.29↘0.04 Статус: Участник 5KRT
|
Создано: 24 января 2009 17:56 · Личное сообщение · #7
Опишу ситуацию - вопрос заключается именно в получении импорта из стаба пакера. Это анализатор
файлов, который читает импорт из файла. Видать стаб упака работает без импорта - бинарно находит
функции LoadLibrary/GetProcAddress и с их помощью динамически подгружает все остальные функции.
Пните, если я не прав
----- Research For Food | Сообщение посчитали полезным: |
Ранг: 1045.7 (!!!!), 31thx Активность: 0.57↘0 Статус: Участник
|
Создано: 24 января 2009 18:07 · Личное сообщение · #8
daFix пишет:
Видать стаб упака работает без импорта - бинарно находит
функции LoadLibrary/GetProcAddress
;) В табличке упака как раз только эти функи и есть
| Сообщение посчитали полезным: |
 Ранг: 529.0 (!), 110thx Активность: 0.29↘0.04 Статус: Участник 5KRT
|
Создано: 24 января 2009 18:36 · Личное сообщение · #9
Спасибо, тихий гром тоже уже тыкнул носом... Остальсь только подумать что же с хидером там. Мож кто сталкивался?
----- Research For Food | Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 24 января 2009 18:52 · Поправил: Hellspawn · Личное сообщение · #10
daFix пишет:
Спасибо, тихий гром тоже уже тыкнул носом... Остальсь только подумать что же с хидером там. Мож кто сталкивался?
а что с ним не так то?
для примера возьмём файл WinUpackR 0.39
ну как-то так
----- [nice coder and reverser] | Сообщение посчитали полезным: |
 Ранг: 529.0 (!), 110thx Активность: 0.29↘0.04 Статус: Участник 5KRT
|
Создано: 24 января 2009 19:18 · Личное сообщение · #11
Hellspawn
Продуктивно! Спасибо)) Сейчас покопаю в чём косяк. Кстати, CFF Explorer тоже не видет там импорта
----- Research For Food | Сообщение посчитали полезным: |
 Ранг: 605.2 (!), 341thx Активность: 0.47↘0.25 Статус: Модератор Research & Development
|
Создано: 24 января 2009 22:38 · Личное сообщение · #12
ключевое слово: выравнивание
перепиши свой преобразователь виртуальных адресов в файловые офсеты с учётом выравнивания!
тогда и импорт увидишь
тема поднималась неоднократно
----- EnJoy! | Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 24 января 2009 22:41 · Личное сообщение · #13
если файл мапится с флагом SEC_IMAGE то перевод в оффсеты не нужен
----- [nice coder and reverser] | Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 24 января 2009 22:51 · Поправил: borov · Личное сообщение · #14
Jupiter пишет:
перепиши свой преобразователь виртуальных адресов в файловые офсеты
имено здесь и был баг, переписал щас нормально
Hellspawn пишет:
если файл мапится с флагом SEC_IMAGE то перевод в оффсеты не нужен
не знал, запомню
спс всем, но тему пока закрывать не буду, вдруг еще что-то найду  (все мы допускаем ошиПки)
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 28 января 2009 17:27 · Личное сообщение · #15
borov пишет:
Jupiter пишет:
перепиши свой преобразователь виртуальных адресов в файловые офсеты
имено здесь и был баг, переписал щас нормально
да, нормально но не все, потом начило падать на экспорте файлов накрытых PECompact'ом, но ...
Hellspawn пишет:
если файл мапится с флагом SEC_IMAGE то перевод в оффсеты не нужен
вот это спасло, вобще прелесть
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 28 января 2009 20:57 · Личное сообщение · #16
borov пишет:
вот это спасло, вобще прелесть
на самом деле написать корректную rvatofileoffset и обратно не так уж и сложно
----- [nice coder and reverser] | Сообщение посчитали полезным: |
Ранг: 39.0 (посетитель) Активность: 0.04↘0 Статус: Участник
|
Создано: 28 января 2009 21:10 · Личное сообщение · #17
Хороший пример RVAToOffset приведен в статье про написание UnScrambler для UPX - www.azsoft.nm.ru/art/n0.htm.
Только надо подключить imagehlp.pas))
| Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 28 января 2009 21:18 · Личное сообщение · #18
это прокатит на всем кроме FSG 2.0 и WinUPack 0.39
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 28 января 2009 21:25 · Личное сообщение · #19
SVIN95
нету выравнивания =\ ужс.
----- [nice coder and reverser] | Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 30 января 2009 11:46 · Личное сообщение · #20
Вопрос скорее к Hellspawn'у, но если еще кто-то знает выслушаю, почему файлы под некоторыми пакерами не хотят мапится с параметром SEC_IMAGE
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 30 января 2009 13:13 · Личное сообщение · #21
гетластеррор что возвращает?
----- [nice coder and reverser] | Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 30 января 2009 14:15 · Личное сообщение · #22
ERROR_BAD_EXE_FORMAT
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
Ранг: 39.0 (посетитель) Активность: 0.04↘0 Статус: Участник
|
Создано: 30 января 2009 16:02 · Личное сообщение · #23
Hellspawn пишет:
если файл мапится с флагом SEC_IMAGE то перевод в оффсеты не нужен
А hMap надо прибавлять?
| Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 30 января 2009 16:07 · Личное сообщение · #24
SVIN95 пишет:
А hMap надо прибавлять?
конечно, это же база, по который смаплен файл.
borov пишет:
ERROR_BAD_EXE_FORMAT
ой хз, походу обламывается CreateSection а вот почему не знаю.
----- [nice coder and reverser] | Сообщение посчитали полезным: |
Ранг: 39.0 (посетитель) Активность: 0.04↘0 Статус: Участник
|
Создано: 30 января 2009 16:16 · Поправил: SVIN95 · Личное сообщение · #25
Hellspawn
Я что-то туплю. Поставил:
но все-равно приходится конвертить в оффсеты (если RVA подсунуть вылетит exception). Что не так?
| Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 30 января 2009 16:27 · Личное сообщение · #26
SVIN95
есть не много:
----- [nice coder and reverser] | Сообщение посчитали полезным: |
Ранг: 39.0 (посетитель) Активность: 0.04↘0 Статус: Участник
|
Создано: 30 января 2009 16:36 · Поправил: SVIN95 · Личное сообщение · #27
Hellspawn
Ну у меня и стояло:
Я тебе тогда только 1 строку кинул
Почему-то не работает... (с оффсетами норм, а с RVA...)
| Сообщение посчитали полезным: |
 Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 30 января 2009 16:44 · Личное сообщение · #28
ты действительно не видишь разницы между моим кодом и твоим??  ))) SEC_IMAGE - у тебя не там стоит.
----- [nice coder and reverser] | Сообщение посчитали полезным: |
Ранг: 39.0 (посетитель) Активность: 0.04↘0 Статус: Участник
|
Создано: 30 января 2009 16:48 · Личное сообщение · #29
Блин, действительно!
Спасибо.
| Сообщение посчитали полезным: |
 Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 30 января 2009 16:53 · Поправил: borov · Личное сообщение · #30
SVIN95, SEC_IMAGE нужно добавлять не MapViewOfFile, а в CreateFileMapping
add:
опоздал
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |