Сейчас на форуме: asfa, bartolomeo (+6 невидимых) |
![]() |
eXeL@B —› Вопросы новичков —› Борьба с Asprotect ом |
Посл.ответ | Сообщение |
|
Создано: 22 апреля 2012 15:21 · Личное сообщение · #1 Помогите разобратся с програмой накрытой Asprotect. Скрипт от Vnekrilov не распаковали. Decomas от PeKill распаковывал но не запускается. Ошибка здесь 00547E14 FF15 0C2C6100 CALL DWORD PTR DS:[612C0C] в дампе по адресу 612C0C нули а в запакованной там 0060935C. Пробовал прописать так CALL StartUp.0060935C. Не помогло. Сама структура 612C0C заполняется здесь 00547E04 55 PUSH EBP 00547E05 8BEC MOV EBP,ESP 00547E07 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8] 00547E0A A3 0C2C6100 MOV DWORD PTR DS:[612C0C],EAX 00547E0F 5D POP EBP 00547E10 C2 0400 RETN 4 я так думаю этоаспровская апишка какаята, потому после её вызова идут работы со строками вида regfile.key. Ещё если поставить брейкпоинт по адресу вызова этой апишки 00D0BD77 FFD0 CALL EAX ; StartUp.00547E04 то в стеке будет такое 0012FF40 00D4A768 ASCII "6666666666666666666666666666666666666666666" 0012FF44 00D39958 ASCII "gF9h9ABYWcQ=" 0012FF48 00D39924 ASCII "76FDB18D-1CBC" Похоже на хвид. Прошу помощи у опытных крякеров. Ссылка на программу http://www.absolutestartup.com/download/Absolutestartupsetup.exe Мне не нужен рабочий лучше расскажите как вы это сделаете. Я распаковывать пытаюсь для интереса надейюсь все меня поймут. ![]() |
|
Создано: 22 апреля 2012 22:45 · Личное сообщение · #2 msvc Эта программа упакована аспром версии 1.32 с длинным ключом. В протекторах с длинным ключом APIs Asprotect вызываются из Asprotect.dll, и выполняются в теле этой dll до прихода на OEP программы. По адресу [612C0C] могут быть записаны адреса двух подпрограмм - ExecuteApplication (0060935C) или ExecuteTrial (00609378). Сначала записывается первый адрес, а когда заканчивается триальный период работы программы (30 дней), записывается второй адрес, и программа указывает на необходимость ее покупки. При распаковке протектора с длинным ключом, за счет вызова APIs Asprotect из Asprotect.dll, выполняется часть основного кода программы, связанная с выполнением этих APIs Asprotect. При этом программа выделяет некоторые области памяти, необходимые для ее работы, и ставит соответствующий флажок о том, что память уже выделена. При запуске же распакованной программы, она видит флажки о выделении памяти, и пытается найти эти области памяти, которые отсутствуют в распакованной программе, и, поэтому, выдает исключение, и падает. Поэтому Вашей задачей является поиск этих флажков, и их обнуление, чтобы распакованная программа сама выделяла эти области памяти, для своей работы. Выполнить это можно двумя путями: 1. Запустить скрипт "Asprotect-Восстановление таблицы IAT и вызовов APIs", остановиться на строке 1654, выполнить вручную вызываемые APIs Asprotect, и посмотреть, где ставятся флажки о выделении памяти (01) 2. Или выполнить трассирование распакованной и упакованной программ, и посмотреть, где падает программа (в этом случае в распакованной программе нужно заменить два условных прыжка JNZ, расположенных после инструкций CMP EAX,0B7 на адресах 00609BD6 и 00609C30, которые не дают одновременно запустить две копии программы). Проделайте эти шаги, и Вы запустите программу. ![]() |
|
Создано: 24 апреля 2012 17:56 · Личное сообщение · #3 Спасибо за ваше внимание только я новичек. Расскажите поподробней. Скрипт у меня осстановился на этом адресе 00D0B5D6 8B47 10 MOV EAX,DWORD PTR DS:[EDI+10] ; StartUp.00547EBC, а дальше "выполнить вручную вызываемые APIs Asprotect, и посмотреть, где ставятся флажки о выделении памяти (01)" как это сделать? Помогите разобратся пожалуйста. ![]() |
|
Создано: 24 апреля 2012 18:03 · Личное сообщение · #4 |
|
Создано: 24 апреля 2012 18:25 · Личное сообщение · #5 |
|
Создано: 26 апреля 2012 16:55 · Поправил: sivorog · Личное сообщение · #6 |
|
Создано: 12 августа 2012 19:03 · Личное сообщение · #7 набросал простой скрипт трассировки до вирт OEP для аспр 2.1 (по статье "Распаковка ASProtect 2.13 на примере Icolover.exe." от SergSh): var addr var voep mov voep,0E802E7 mov addr,0C9F569 eoe Label run Label: cmp eip,addr je label2 esto label2: add addr,44 bp addr esto bc addr bp voep run bp voep ret но почемуто начиная с bp addr все идет наперекосяк и выводится странное сообщение зы. почему на последнем исключении запакованных прог если нажать f9 вместо shift+f9 тебя заставляют прыгать по еще куче других исключений? ![]() ![]() |
|
Создано: 12 августа 2012 20:15 · Личное сообщение · #8 |
|
Создано: 13 августа 2012 00:24 · Личное сообщение · #9 |
|
Создано: 13 августа 2012 00:57 · Личное сообщение · #10 |
|
Создано: 13 августа 2012 09:40 · Личное сообщение · #11 |
![]() |
eXeL@B —› Вопросы новичков —› Борьба с Asprotect ом |