![]() |
eXeL@B —› Вопросы новичков —› Востановление IAT (ASPack 2.12) |
Посл.ответ | Сообщение |
|
Создано: 16 февраля 2009 15:06 · Поправил: Модератор · Личное сообщение · #1 День добрый. 1. Имеется dll упакованная ASPack v2.12 (PEiD) 2. Найдена OEP (ESP-trick) 3. Снят дамп (LordPE v0.95) 4. "Загружена" в ImpREC v1.7c 5. Получена след. картина: ![]() В принципе все реально импортируемы библиотеки имеют место быть, однако непонятно, что делать с этой кучей "unresolved pointers"? Заранее благодарен за помощь. PS: в заголовке читать "IAT"! ( не могу исправить ![]() исправил я твой IAT в заголовке ![]() |
|
Создано: 16 февраля 2009 17:12 · Личное сообщение · #2 |
|
Создано: 16 февраля 2009 17:17 · Личное сообщение · #3 |
|
Создано: 16 февраля 2009 18:19 · Личное сообщение · #4 |
|
Создано: 16 февраля 2009 19:02 · Личное сообщение · #5 |
|
Создано: 16 февраля 2009 23:39 · Поправил: hypeartist · Личное сообщение · #6 |
|
Создано: 17 февраля 2009 00:05 · Поправил: Konstantin · Личное сообщение · #7 |
|
Создано: 17 февраля 2009 01:06 · Поправил: hypeartist · Личное сообщение · #8 2 Konstantin Обновил... да действительно обнаруживает именно ASProtect SKE 2.1x... но при этом: 1. Тот же PEiD, но с VerA -> "Error, may be it's not ASProtect!" 2. RDG Packer Detector v0.6.6 2k8 -> ASPack 2.12 3. PE Detective -> ASPack 2.12 ну и наконец сразу после загрузки нашей dll в ollydbg мы оказываемся здесь: Code:
Разве это не типичный ASPack? ![]() |
|
Создано: 17 февраля 2009 01:33 · Личное сообщение · #9 |
|
Создано: 17 февраля 2009 10:04 · Личное сообщение · #10 |
|
Создано: 17 февраля 2009 13:44 · Личное сообщение · #11 |
|
Создано: 18 февраля 2009 18:48 · Личное сообщение · #12 |
|
Создано: 18 февраля 2009 18:49 · Личное сообщение · #13 |
|
Создано: 18 февраля 2009 19:05 · Личное сообщение · #14 |
|
Создано: 21 февраля 2009 17:47 · Личное сообщение · #15 В ожидании тутора от Konstantin'а я тут решил сам покапаться... Вот чего (и как) я "добился": Во первых, за исходную предпосылку я взял, что это все-же ASProtect. На Tuts4You мне подсказали поискать в образе памяти моей dll вот эту строчку - "ASProtect\SpecData" и я ее действительно нашел (хотя ни в одном туторе я об этом не слышал): Code:
Далее у меня возникли проблемы с дампом. При попытке загрузить дамп, сделаный с помощью LordPE, в Olly я получал сначала ошибку о том, что это типа не Win32 файл ("Rebuild PE" вроде исправило), а затем и "Unable to load dll". После чего мне посоветовали сделать дамп из ImpREC! Хм... И ведь помогло!!! OEP я нашел тупым поиском последовательности "55 8B EC 83 C4 B4 B8" опять таки прямо в памяти загруженной dll. "Auto search" выдал IAT без проблем и каких бы то ни было "uresolved pointers". Только одно интересно - все проходит столь гладко только если я загружау dll используя прогу которая ее юзает, через Olly'вский LoadDll IAT не находится катигорически!!! Вот. Итак на данный момент у меня есть дамп который нормально видится и понимается Olly, четко останавливается на EP: Code:
...но не работает!!! ![]() Протрассировав в (1): Code:
я обнаруживаю, что (2) в моем дампе ведет не ТУДА!!! У меня веде сюда: Code:
а в оригинальной dll сюда: Code:
Причем, как видно из адресации, эти участки кода расположены непосредственно над входом в (1) Что не так? Почему получился такой разный код? ![]() |
|
Создано: 21 февраля 2009 19:44 · Поправил: Konstantin · Личное сообщение · #16 hypeartist пишет: ...но не работает!!! А с чего он должен работать? Импорт ты не восстановил. Если сделаеш поиск в оле - "правая клавиша мыши -> Serch for -> All intermodular calls" то увидишь кучу call-ов ведущих в выделенную аспротектом виртуальную память, эти call-ы так называемые переходники виртуальных апи, вот их то и надо иcправить в этой длл на код типа jmp [адр апи в IAT], кроме того если посмотреть секцию с импортом, то среди нормальных адресов увидиш кучу мусора, он мешает imprec-у правильно определить импорт, с этом тоже нужно что то сделать (забить мусор нулями), либо воспользоваться Universal Import Fixer он пофиксит импорт на место, которое ты укажешь. hypeartist пишет: я обнаруживаю, что (2) в моем дампе ведет не ТУДА!!! И не только это, в той длл что ты выложил(которую я распаковал) OEP выглядит следующим образом: Code:
Ты же приводишь в качестве OEP следующий код: Code:
Чем то отличаются, не так ли? Ломаешь другую длл, или дамп чего ты сделал? ![]() |
|
Создано: 22 февраля 2009 07:46 · Личное сообщение · #17 |
|
Создано: 22 февраля 2009 13:46 · Личное сообщение · #18 |
|
Создано: 22 февраля 2009 14:04 · Личное сообщение · #19 |
|
Создано: 22 февраля 2009 14:27 · Личное сообщение · #20 Konstantin Konstantin пишет: увидишь кучу call-ов ведущих в выделенную аспротектом виртуальную память Типа вот этого?: Code:
И значит ли это, что мне нужно смотреть туторы на тему ASProtect+VM? Konstantin пишет: это не просто код Asprotect.dll, это ее EP Так это не OEP моей dll????!!! ![]() Konstantin пишет: в той длл что ты выложил(которую я распаковал) OEP выглядит следующим образом Точно так! Я практиковался на другой dll. Но она абсолютно аналогична, в плане защиты, той, что была выложена... ![]() |
|
Создано: 22 февраля 2009 15:05 · Личное сообщение · #21 |
![]() |
eXeL@B —› Вопросы новичков —› Востановление IAT (ASPack 2.12) |