Сейчас на форуме: Adler, asfa, bartolomeo (+8 невидимых)

 eXeL@B —› Вопросы новичков —› Проблемы с распаковкой ASProtect
Посл.ответ Сообщение

Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 21 июня 2012 22:13
· Личное сообщение · #1

ASPrINF показывает, что программа упакована ASProtect 1.56 build 03.17.

DecomAS распаковывает, однако полученный файл не запускается. В Olly он загружается, но при запуске в какой-то момент уходит в аут, а ручная трассировка непременно зацикливается.

Пытаюсь распаковать вручную с помощью скриптов в Olly. Поиск ОЕР проходит нормально. Запускаю скрипт "Восстановление таблицы IAT и вызовов APIs". Работа скрипта останавливается на сообщении: "Ошибка!!! Base Relocation Table: инструкции 'mov dword[const],ebp | cmp ebp.dword[esp+??]' не найдены". В туториале vnekrilov'a (выпуск 2, 16 частей) выход из подобного тупика не увидел.

Как выплыть из этой ситуации?

Программа DVDFab 8.1.8.5 Qt. Оригинальный экзешник: http://rghost.ru/38798893




Ранг: 79.4 (постоянный), 183thx
Активность: 0.110
Статус: Участник

Создано: 21 июня 2012 22:28
· Личное сообщение · #2

Unpacking DVDFab 8.1.xxx by new tiger
part1
http://ar.rghost.net/38799599
part2
http://ar.rghost.net/38799634

pas=asprotect1.4

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

Ранг: 31.0 (посетитель), 70thx
Активность: 0.140
Статус: Участник

Создано: 21 июня 2012 22:40
· Личное сообщение · #3

Chris
попробуй еще плагин CodeDoctor для ольки, вэтом плаге есть распаковка Asprotect, может и поможет!



Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 22 июня 2012 11:31
· Личное сообщение · #4

AKAB
Спасибо!
После знакомства с роликом (просмотр без остановок) стало очевидно, что разобраться в этом материале будет очень сложно. Однако, попытаюсь.

Может всё-таки есть возможность приспособить скрипты vnekrilov'a для распаковки сабжа?..



Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 22 июня 2012 11:54
· Личное сообщение · #5

Chris, хм, про анпакер PE_Kill'a не слышали? Что касаемо скриптов, берёте и дорабатываете ))) Скрипты уже обсуждали, можете на форуме почитать.

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

Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 22 июня 2012 12:16
· Личное сообщение · #6

NikolayD
Хм-м... Про попытку использования unpacker'a PE_Kill'a (DecomAS) я написал в первом сообщении.




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 22 июня 2012 14:01 · Поправил: ClockMan
· Личное сообщение · #7

Chris
Да прога на самом минемале упакованна найдите oep,снимите дамп. В импорте спёрта всего одна функа, восстановите её и спомощью империка прикрутите импорт и пользуйтесь на здоровье...

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.


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

Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 22 июня 2012 14:37
· Личное сообщение · #8

Хммм, точно ))) Странно, что не взял. Ну в любом случае доработать скрипт это уже ваша забота )))

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

Ранг: 42.9 (посетитель), 33thx
Активность: 0.040
Статус: Участник

Создано: 23 июня 2012 16:15 · Поправил: Konstantin
· Личное сообщение · #9

Chris пишет:
Может всё-таки есть возможность приспособить скрипты vnekrilov'a для распаковки сабжа?.

Скрипт работает.
Пользуете StrongOD? Отключите его и всё заработает как надо.
Либо обратите внимание на следующий код скрипта:
Code:
  1. //////////////////////////////////////
  2. // ----------------------------------------------------------------------------
  3. // Получение ImageBase и ImageSize AsProtect.dll
  4. // ----------------------------------------------------------------------------
  5. get_ImageBase_ImageSize_AsProtect_dll:
  6. gpa "GetSystemTime","kernel32.dll"              // Получаем адрес API GetSystemTime на нашей машине
  7. bp $RESULT
  8. esto
  9. bc eip
  10. rtu                                             // Выполняем API GetSystemTime, и переходим в код программы

Последнюю команду - rtu, замените на следующие две:
Code:
  1. RTR
  2. STI


ClockMan пишет:
В импорте спёрта всего одна функа, восстановите её и спомощью империка прикрутите импорт и пользуйтесь на здоровье...

А как же stolen code? Ну, и фиг с ним, всё равно работает?

Chris пишет:
DecomAS распаковывает, однако полученный файл не запускается.

В DOS Header-е в поле Bytes on last page пропишите значение - 90 (там будет - 5344). И распакованный файл запустится.

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


Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 23 июня 2012 17:26
· Личное сообщение · #10

Konstantin пишет:
А как же stolen code? Ну, и фиг с ним, всё равно работает?

где вы там столен коде увядили?

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 42.9 (посетитель), 33thx
Активность: 0.040
Статус: Участник

Создано: 23 июня 2012 17:44 · Поправил: Konstantin
· Личное сообщение · #11

ClockMan
Code:
  1. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  2.             * Адрес прыжка в области кода: 00A7BECB
  3.             * Дистанция прыжка: 03360000
  4. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  5.             * Адрес прыжка в области кода: 00A7C14E
  6.             * Дистанция прыжка: 03360195
  7. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  8.             * Адрес прыжка в области кода: 00A7C0E7
  9.             * Дистанция прыжка: 033600F2
  10. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  11.             * Адрес прыжка в области кода: 00A7C120
  12.             * Дистанция прыжка: 033603D1
  13. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  14.             * Адрес прыжка в области кода: 00A7C144
  15.             * Дистанция прыжка: 03360228
  16. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  17.             * Адрес прыжка в области кода: 00B1FCDC
  18.             * Дистанция прыжка: 033B0000
  19. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  20.             * Адрес прыжка в области кода: 00B1FD77
  21.             * Дистанция прыжка: 033B01DD
  22. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  23.             * Адрес прыжка в области кода: 00B1FD9E
  24.             * Дистанция прыжка: 033C0000
  25. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  26.             * Адрес прыжка в области кода: 00B1FF31
  27.             * Дистанция прыжка: 033C0276
  28. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  29.             * Адрес прыжка в области кода: 00B201AA
  30.             * Дистанция прыжка: 033D0000
  31. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  32.             * Адрес прыжка в области кода: 00B2064F
  33.             * Дистанция прыжка: 033E0000
  34. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  35.             * Адрес прыжка в области кода: 00B20680
  36.             * Дистанция прыжка: 033E0199
  37. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  38.             * Адрес прыжка в области кода: 00B206E3
  39.             * Дистанция прыжка: 033F0000
  40. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  41.             * Адрес прыжка в области кода: 00B20714
  42.             * Дистанция прыжка: 033F0530
  43. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  44.             * Адрес прыжка в области кода: 00B207F8
  45.             * Дистанция прыжка: 033F054B
  46. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  47.             * Адрес прыжка в области кода: 00B211C7
  48.             * Дистанция прыжка: 03600000
  49. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  50.             * Адрес прыжка в области кода: 00B21938
  51.             * Дистанция прыжка: 036010A9
  52. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  53.             * Адрес прыжка в области кода: 00B21938
  54.             * Дистанция прыжка: 036010A9
  55. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  56.             * Адрес прыжка в области кода: 00B21938
  57.             * Дистанция прыжка: 036010A9
  58. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  59.             * Адрес прыжка в области кода: 00B21938
  60.             * Дистанция прыжка: 036010A9
  61. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  62.             * Адрес прыжка в области кода: 00B21938
  63.             * Дистанция прыжка: 036010A9
  64. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  65.             * Адрес прыжка в области кода: 00B21938
  66.             * Дистанция прыжка: 036010A9
  67. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  68.             * Адрес прыжка в области кода: 00B21390
  69.             * Дистанция прыжка: 03600549
  70. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  71.             * Адрес прыжка в области кода: 00B21390
  72.             * Дистанция прыжка: 03600549
  73. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  74.             * Адрес прыжка в области кода: 00B21944
  75.             * Дистанция прыжка: 0360168E
  76. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  77.             * Адрес прыжка в области кода: 00B2193F
  78.             * Дистанция прыжка: 036010B0
  79. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  80.             * Адрес прыжка в области кода: 00B21944
  81.             * Дистанция прыжка: 0360168E
  82. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  83.             * Адрес прыжка в области кода: 00B2193F
  84.             * Дистанция прыжка: 036010B0
  85. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  86.             * Адрес прыжка в области кода: 00B2156C
  87.             * Дистанция прыжка: 036012E8
  88. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  89.             * Адрес прыжка в области кода: 00B21944
  90.             * Дистанция прыжка: 0360168E
  91. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  92.             * Адрес прыжка в области кода: 00B2152C
  93.             * Дистанция прыжка: 0360266D
  94. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  95.             * Адрес прыжка в области кода: 00B21576
  96.             * Дистанция прыжка: 03601171
  97. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  98.             * Адрес прыжка в области кода: 00B217D0
  99.             * Дистанция прыжка: 036011BD
  100. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  101.             * Адрес прыжка в области кода: 00B217E4
  102.             * Дистанция прыжка: 0360073B
  103. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  104.             * Адрес прыжка в области кода: 00B2195D
  105.             * Дистанция прыжка: 03602686
  106. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  107.             * Адрес прыжка в области кода: 00B21944
  108.             * Дистанция прыжка: 0360168E
  109. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  110.             * Адрес прыжка в области кода: 00B21993
  111.             * Дистанция прыжка: 036020C2
  112. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  113.             * Адрес прыжка в области кода: 00B21944
  114.             * Дистанция прыжка: 0360168E
  115. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  116.             * Адрес прыжка в области кода: 00B22012
  117.             * Дистанция прыжка: 03700000
  118. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  119.             * Адрес прыжка в области кода: 00B22104
  120.             * Дистанция прыжка: 037003CA
  121. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  122.             * Адрес прыжка в области кода: 00B220E8
  123.             * Дистанция прыжка: 03700220
  124. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  125.             * Адрес прыжка в области кода: 00B221F9
  126.             * Дистанция прыжка: 03700229
  127. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  128.             * Адрес прыжка в области кода: 00B222E6
  129.             * Дистанция прыжка: 037005C0
  130. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  131.             * Адрес прыжка в области кода: 00B222FB
  132.             * Дистанция прыжка: 037002CF
  133. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  134.             * Адрес прыжка в области кода: 00B22314
  135.             * Дистанция прыжка: 037008DB
  136. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  137.             * Адрес прыжка в области кода: 00B2232C
  138.             * Дистанция прыжка: 03700476
  139. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  140.             * Адрес прыжка в области кода: 00B2233A
  141.             * Дистанция прыжка: 03700D41
  142. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  143.             * Адрес прыжка в области кода: 00B2234F
  144.             * Дистанция прыжка: 0370047B
  145. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  146.             * Адрес прыжка в области кода: 00B2240F
  147.             * Дистанция прыжка: 0370035B
  148. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  149.             * Адрес прыжка в области кода: 00B226CA
  150.             * Дистанция прыжка: 03710000
  151. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  152.             * Адрес прыжка в области кода: 00B22725
  153.             * Дистанция прыжка: 03710014
  154. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  155.             * Адрес прыжка в области кода: 00B2275A
  156.             * Дистанция прыжка: 03720000
  157. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  158.             * Адрес прыжка в области кода: 00B2276F
  159.             * Дистанция прыжка: 03720019
  160. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  161.             * Адрес прыжка в области кода: 00B22844
  162.             * Дистанция прыжка: 0372011E
  163. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  164.             * Адрес прыжка в области кода: 00CE6C59
  165.             * Дистанция прыжка: 03A10000
  166. 01882EE7   Breakpoint at DVDFab_d.01882EE7
  167.             * Адрес прыжка в области кода: 00CE6E27
  168.             * Дистанция прыжка: 03A100F7
  169. 0188332B   Breakpoint at DVDFab_d.0188332B
  170.             * Адрес массива данных: 03588BC4
  171.             * Область со Stolen Code: 03360000
  172. 0188332B   Breakpoint at DVDFab_d.0188332B
  173.             * Адрес массива данных: 03588C58
  174.             * Область со Stolen Code: 033B0000
  175. 0188332B   Breakpoint at DVDFab_d.0188332B
  176.             * Адрес массива данных: 03588CEC
  177.             * Область со Stolen Code: 033C0000
  178. 0188332B   Breakpoint at DVDFab_d.0188332B
  179.             * Адрес массива данных: 03588D80
  180.             * Область со Stolen Code: 033D0000
  181. 0188332B   Breakpoint at DVDFab_d.0188332B
  182.             * Адрес массива данных: 03588E14
  183.             * Область со Stolen Code: 033E0000
  184. 0188332B   Breakpoint at DVDFab_d.0188332B
  185.             * Адрес массива данных: 03588EA8
  186.             * Область со Stolen Code: 033F0000
  187. 0188332B   Breakpoint at DVDFab_d.0188332B
  188.             * Адрес массива данных: 03588F3C
  189.             * Область со Stolen Code: 03600000
  190. 0188332B   Breakpoint at DVDFab_d.0188332B
  191.             * Адрес массива данных: 03588FD0
  192.             * Область со Stolen Code: 03700000
  193. 0188332B   Breakpoint at DVDFab_d.0188332B
  194.             * Адрес массива данных: 03589064
  195.             * Область со Stolen Code: 03710000
  196. 0188332B   Breakpoint at DVDFab_d.0188332B
  197.             * Адрес массива данных: 035890F8
  198.             * Область со Stolen Code: 03720000
  199. 0188332B   Breakpoint at DVDFab_d.0188332B
  200.             * Адрес массива данных: 0358918C
  201.             * Область со Stolen Code: 03A10000
  202. 018738AC   Breakpoint at DVDFab_d.018738AC
  203. 018860B4   Hardware breakpoint 1 at DVDFab_d.018860B4
  204. 01883E8C   Hardware breakpoint 1 at DVDFab_d.01883E8C
  205. 00CB994D   Conditional pause: eip < 03330000
  206.             * OEP: 00CB994D
  207. 019C00BC   Breakpoint at 019C00BC
  208. 019C0048   Breakpoint at 019C0048
  209.             * OEP (SBOEP): 00000000
  210.             * RVA OEP для ImpRec: 00000000

Это лог работы скрипта vnekrilov-а. И в файле, распакованном DecomAS-ом, наличие секции stolen вас не смущает?




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 24 июня 2012 01:50 · Поправил: ClockMan
· Личное сообщение · #12

Konstantin
Есть там столен коде или нет его там всё настолько просто.
Konstantin пишет:
скрипта vnekrilov-а. И в файле, распакованном DecomAS-ом

Ну вам то видней вы то привыкли пользоватся чужими скриптами тузлами а потом кричать какой вы мегаанпакер ,

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




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

Создано: 24 июня 2012 07:28
· Личное сообщение · #13

Не понял ошибки работы скриптов. У меня скрипты нормально отработали. В OllyDBG я применяю следующие настройки плагинов:
Code:
  1. [Plugin StrongOD]
  2. CreateProcessMode=2
  3. HidePEB=1
  4. IsPatchFloat=0
  5. IsAdvGoto=1
  6. KernelMode=1
  7. KillPEBug=0
  8. SuperEnumMod=0
  9. AdvAttach=0
  10. SkipExpection=0
  11. OrdFirst=0
  12. BreakOnLdr=0
  13. BreakOnTls=0
  14. RemoveEpOneShot=1
  15. ShowBar=16
  16. LoadSym=0
  17. HideWindow=1
  18. HideProcess=1
  19. ProtectProcess=1
  20. DriverKey=-82693034
  21. DriverName=fujitsu
  22. AutoUpdate=0
  23. UpdateURL=http://www.safengine.com/download/update/update.txt


Code:
  1. [Plugin PhantOm]
  2. PEB=0
  3. GETCOUNT=0
  4. DRX=1
  5. SETCONTEXT=0
  6. DEBSTRING=1
  7. WINVER=0
  8. GETTIMES=0
  9. REMOVEEP=0
  10. HANDLE=0
  11. WINDOWS=0
  12. DRIVER=0
  13. CAPTION=1
  14. RDTSC=0
  15. VERSION=154
  16. DELTARDTSC=99988
  17. HIDENAME=Paliha
  18. RDTSCNAME=Queen
  19. CAPTEXT=Enigma
  20. PRETEXT=LTD
  21. SINGLE=0
  22. BLOCK=0


Chris
Просто внимательно прочитайте мои туториалы, и нужно немного подумать, что нужно делать. Можно, конечно, распаковывать автоматом. Но это не всегда можно сделать, особенно при запуске распакованной программы, когда скрипты не записывают адреса подпрограмм, связанных с триальными версиями.

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

Ранг: 42.9 (посетитель), 33thx
Активность: 0.040
Статус: Участник

Создано: 24 июня 2012 12:12 · Поправил: Konstantin
· Личное сообщение · #14

vnekrilov
Так ведёт себя скрипт под Win7 x64. Точнее глючит команда скрипта - rtu.



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

Создано: 24 июня 2012 12:54
· Личное сообщение · #15

Konstantin пишет:
Так ведёт себя скрипт под Win7 x64.


Спасибо за пояснение. Реверсинг программ я провожу только под WinXP, поэтому с проблемами такого типа я не встречался.



Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 25 июня 2012 15:56
· Личное сообщение · #16

Konstantin пишет:
В DOS Header-е в поле Bytes on last page пропишите значение - 90

Оказывается так просто! - Спасибо за науку. Сказалось отсутствие опыта: не пришло в голову глянуть на DOS Header.
В результате имею рабочий распакованный файл.


vnekrilov пишет:
Просто внимательно прочитайте мои туториалы, и нужно немного подумать, что нужно делать.

Ваш туториал изучил почти наизусть. Он построен в ключе, когда процесс идёт "как надо". Если же возникает нештатная ситуация, то выкарабкиваться приходится уже самому. Бывает, что не получается, тогда и появляются вопросы в этом разделе. Извините.



Ранг: 281.8 (наставник), 272thx
Активность: 0.250.01
Статус: Участник
Destroyer of protectors

Создано: 25 июня 2012 16:00
· Личное сообщение · #17

Chris пишет:
Ваш туториал изучил почти наизусть. Он построен в ключе, когда процесс идёт "как надо".

так устроенна вся документация.

Chris пишет:
Если же возникает нештатная ситуация, то выкарабкиваться приходится уже самому.

как бэ намекает, что нужны мозги для этого.



Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 25 июня 2012 16:29
· Личное сообщение · #18

MasterSoft пишет:
так устроенна вся документация.

Извините, не вся. Строится в зависимости от поставленной задачи и требований.
А намёк понял.



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

Создано: 26 июня 2012 08:57
· Личное сообщение · #19

Chris пишет:
Если же возникает нештатная ситуация, то выкарабкиваться приходится уже самому


При отработке скриптов мной было распаковано более сотни разных программ, упакованных Asprotect. Казалось бы, что сбоев быть не должно, но иногда появляются программы, которые подбрасывают задачки. Для этих целей я ввел в скрипты диагностические сообщения, которые показываются во внештатных ситуациях, и предлагают включить серое вещество. Это, как правило, связано с отсутствием какой-то последовательности байтов, которые ищет скрипт. Поэтому Вам и предлагается найти нужную цепочку байтов, и откорректировать скрипт.


 eXeL@B —› Вопросы новичков —› Проблемы с распаковкой ASProtect
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати