Сейчас на форуме: tyns777, bezumchik (+5 невидимых)

 eXeL@B —› Вопросы новичков —› Распаковка dll, запакованной ASPack v2.12
Посл.ответ Сообщение

Ранг: 12.4 (новичок)
Активность: 0.020.05
Статус: Участник

Создано: 08 октября 2019 22:47 · Поправил: gabryelle
· Личное сообщение · #1

Всем привет!
Пытаюсь тут распаковать dll, действую по мануалам, но что-то не клеится...
RDG Packer Detector v0.7.1 определяет пакер ASPack v2.12
Открываю в олли, жму F9 до кода:
Code:
  1. CPU Disasm
  2. Address   Hex dump          Command                                  Comments
  3. CPU Disasm
  4. Address   Hex dump          Command                                  Comments
  5. 60A0D416   /75 08           JNE SHORT macro.60A0D420
  6. 60A0D418   |B8 01000000     MOV EAX,1
  7. 60A0D41D   |C2 0C00         RET 0C
  8. 60A0D420   \68 2A419F60     PUSH macro.609F412A
  9. 60A0D425    C3              RET

Дойдя до RET, снимаю дамп с помощью OllyDumpEx v1.72:

Изначально Entry Point там 0001D001. Жму Get EIP as OEP я получаю 0000412A (вроде верно, по адресу 60A0D420 именно она и указана). Жму на Dump, сохраняю macro_dump.dll. Плагин в догонку дает следующую инфу:
Saved Size: 131072
Requested Size: 131072
EntryPoint RVA: 0000412A
EntryPoint VA: 609F412A

Открываю Import REC, нахожу процесс ollydbg/loaddll.exe, PickDLL - выбираю macro.dll
Меняю OEP на 0000412A, жму IAT AutoSearch, получаю RVA 00010000 и Size 00000130
Жму Get Imports и Fix Dump:

Ну и в результате нифига. Файл сохраняется без ошибок, но не работает ни в олли, ни подключенным к исполняемому файлу (в олли ntdll просто не переходит на macro.dll, крутится на месте).
Буду благодарен, если поможете с распаковкой или укажете мне на ошибки, которые я допустил - желательно в подробностях, с процессом распаковки я знаком очень поверхностно.


0991_08.10.2019_EXELAB.rU.tgz - macro.dll




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 09 октября 2019 11:23
· Личное сообщение · #2

Как минимум не видно ничего про восстановление релоков.



Ранг: 10.8 (новичок), 4thx
Активность: 0.17=0.17
Статус: Участник

Создано: 09 октября 2019 11:31
· Личное сообщение · #3

gabryelle пишет:
но не работает ни в олли, ни подключенным к исполняемому файлу

вот и что означает эта фраза?

1. loaddll, насколько я знаю, предназначен лишь для загрузки длл в пространство и все....так что если под фразой не работает ни в олли имелось в виду это, то это нормально...
2. как конкретно не работает подключенным к исполняемому файлу



Ранг: 12.4 (новичок)
Активность: 0.020.05
Статус: Участник

Создано: 09 октября 2019 17:43
· Личное сообщение · #4

AE пишет:
1. loaddll, насколько я знаю, предназначен лишь для загрузки длл в пространство и все....так что если под фразой не работает ни в олли имелось в виду это, то это нормально...

Когда я в олли открываю запакованную длл, то попадаю в модуль macro.dll. Дальше по гайду ставлю Hardware Breakpoint и тут уже начинаю с ntdll, проматываю ее, directx, снова ntdll и тогда уже попадаю в macro, откуда и снимаю дамп. В распакованной версии зажимаю F9, но дальше ntdll дело не идет, в списке модулей даже нет macro.dll

AE пишет:
2. как конкретно не работает подключенным к исполняемому файлу

Эта dll кастомная, добавляет дополнительный функционал программе (игре). Распакованная версия этот функционал, соответственно, не добавляет, хотя приложение запускается.

Про восстановление релоков сейчас буду гуглить...




Ранг: 622.6 (!), 521thx
Активность: 0.330.89
Статус: Участник
_Вечный_Студент_

Создано: 10 октября 2019 00:09 · Поправил: plutos
· Личное сообщение · #5

gabryelle пишет:
Про восстановление релоков сейчас буду гуглить...


глянь --> тут <--

-----
Give me a HANDLE and I will move the Earth.





Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 10 октября 2019 02:46
· Личное сообщение · #6

gabryelle

Нужно не гадать, а ошибку определить, почему не загружается. Вот тут аналогично было --> Link <--

> В распакованной версии зажимаю F9, но дальше ntdll дело не идет

Дальше и не нужно никуда идти --> Link <--

-----
vx





Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 10 октября 2019 02:55
· Личное сообщение · #7

gabryelle пишет:
RDG Packer Detector v0.7.1 определяет пакер ASPack v2.12

Там не 2.12, а 2.28.
Если застрял, то могу выложить статически распакованный "как есть".

-----
EnJoy!




Ранг: 12.4 (новичок)
Активность: 0.020.05
Статус: Участник

Создано: 10 октября 2019 17:38
· Личное сообщение · #8

Jupiter пишет:
Если застрял, то могу выложить статически распакованный "как есть".

Был бы признателен. Предложенные выше ссылки так с наскоку не осилил, нужно настроение нужное поймать, чтобы уже основательно разобраться.
У вас распаковщик в скрипте? Мне бы посмотреть на последовательность действий "от и до", а потом сверху уже теория легче пойдет.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 10 октября 2019 17:58
· Личное сообщение · #9

gabryelle пишет:
Был бы признателен.

Во вложении:
CabalDev.dll.ASPack.unpacked.7z
72ab_10.10.2019_EXELAB.rU.tgz

gabryelle пишет:
Предложенные выше ссылки так с наскоку не осилил, нужно настроение нужное поймать, чтобы уже основательно разобраться.

Заставить себя разбираться - это задачка не из лёгких

gabryelle пишет:
У вас распаковщик в скрипте?

Нет, программа.

gabryelle пишет:
Мне бы посмотреть на последовательность действий "от и до", а потом сверху уже теория легче пойдет.

В случае со статической распаковкой действие "от" начинается с упаковки известных файлов с помощью исследуемой версии упаковщика. Вряд ли тебе это интересно, учитывая "нужно настроение нужное поймать".

-----
EnJoy!




Ранг: 12.4 (новичок)
Активность: 0.020.05
Статус: Участник

Создано: 10 октября 2019 18:55
· Личное сообщение · #10

Jupiter пишет:
Заставить себя разбираться - это задачка не из лёгких

Да нет то чтобы, я это дело наоборот люблю и, бывает, по несколько дней без перерывов на сон осваиваю новые для себя инструменты =) Без знаний и опыта работы с дизассемблером у меня только так и получалось решать некоторые прикладные задачи. Опыт лишним не бывает. Но бывает, что просто туман в голове и дополнительная информация туда ну никак не лезет. В следующий раз уже заново все прочитаю и, скорее всего, освою процесс распаковки на свежую голову.
За помощь огромное спасибо всем.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 10 октября 2019 21:27
· Личное сообщение · #11

gabryelle
Чтобы информация легче усваивалась, имеет смысл её осваивать постепенно, по мере увеличения сложности, разбирая каждый шаг на простых и понятных примерах, тогда и весь процесс пойдёт гораздо легче.
Рекомендую ознакомиться с классикой: "Об упаковщиках в последний раз", оригинал был на олдскульном WASM, гуглится без проблем.

-----
EnJoy!


| Сообщение посчитали полезным: mak

Ранг: 12.4 (новичок)
Активность: 0.020.05
Статус: Участник

Создано: 11 октября 2019 12:56
· Личное сообщение · #12

Jupiter пишет:
Об упаковщиках в последний раз

Спасибо, почитаю.




Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 12 октября 2019 06:40
· Личное сообщение · #13

gabryelle

> бывает, по несколько дней без перерывов на сон осваиваю новые для себя инструменты

Не правильный подход к задаче. Ты ведь и не пытался найти суть ошибки, я это выше указал. С танцами и бубном при таком подходе ничего не изменится, так и будешь сутками копаться в примитивных вещах без какого либо прогресса.

-----
vx



 eXeL@B —› Вопросы новичков —› Распаковка dll, запакованной ASPack v2.12
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати