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

 eXeL@B —› Протекторы —› Анализ ASProtect
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 38 . 39 . >>
Посл.ответ Сообщение

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

Создано: 28 марта 2008 15:30 · Поправил: vnekrilov
· Личное сообщение · #1

Я выложил свой первый туториал по анализу ASProtect v2.4 build 12.20 (Анализ подпрограммы эмуляции инструкций.rar http://dump.ru/files/o/o489862518/ ). В этом туториале я подробно описал процесс восстановления эмулированных инструкций типа:
Code:
  1. PUSH 0
  2. PUSH 0CC5850
  3. PUSH 0DB180C
  4. CALL 00CEB814


Полный цикл статей по распаковке ASProtect (Актуальная версия 25 декабря 2009):
ASProtect_Unpacking_Tutorial_2009-12-25.rar http://rapidshare.com/files/325720799/ASProtect_Unpacking_Tutorial_2009-12-25.rar 7,9 МБ
Программы, рассматриваемые в статьях:
ASProtect_Unpacking_Apps_2009-12-25.rar http://rapidshare.com/files/325718084/ASProtect_Unpacking_Apps_2009-12-25.rar 22,2 МБ

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

Скрипты:
Текущая рекомендуемая версия ODBGScript [1.78.3]:
ecf1_03.06.2010_CRACKLAB.rU.tgz - ODbgScript.dll

Последний текущий комплект скриптов [от 19 февраля 2011]:
69ca_18.02.2011_CRACKLAB.rU.tgz - Скрипты для распаковки Asprotect от 19 февраля 2011.rar

Статьи по частям:
Актуальная версия статей [Последняя - 25.11.2010]:
Выпуск 2
0754_29.11.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 1
2844_29.11.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 2
8e06_30.11.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 3
50a0_03.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 4
1b51_05.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 5
0ff8_05.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 5 (продолжение)
a182_06.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 6
82b8_15.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 7
74e4_16.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 8
b2e1_17.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 9
532c_18.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 10
76af_20.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 11
fe67_22.12.2009_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 12
079c_20.01.2010_CRACKLAB.rU.tgz - Распаковка ASProtect - Часть 13
8415_03.06.2010_CRACKLAB.rU.tgz - Распаковка Asprotect - Часть 14
0a66_18.02.2011_CRACKLAB.rU.tgz - Распаковка Asprotect - Части 15 и 16

DriEm конвертировал мой цикл статей в формате PDF, который можно скачать по ссылке --> Link <--



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

Создано: 10 февраля 2009 21:33
· Личное сообщение · #2

спасибо за статьи. ждем продолжения.



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

Создано: 11 февраля 2009 04:34
· Личное сообщение · #3

Ultras пишет:
Несколько лет назад писал такой для 1.x


А нельзя ли посмотреть на этот эмулятор?

Ultras пишет:
Версию аспра смотрю: ASProtect 2.41 build 04.01.


Безуспешно ищу дистрибутивы ASProtect 2.41 SKE build 04.01 и ASProtect 1.41 build 04.01. В них реализована новая схема выполнения эмулированных инструкций. Так, например, если в старых версиях Аспра было:
0 - Это CALL; 1 - JMP; 2 - Jcc и 3 - CMP+Jcc
то в этой версии стало:
0 - CMP+Jcc; 1 - CALL; 2 - JMP и 3 - Jcc

А также ряд других нюансов (Это я подсмотрел на одной программе, упакованной ASProtect 1.41 build 04.01).



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 11 февраля 2009 09:23 · Поправил: Ultras
· Личное сообщение · #4

vnekrilov пишет:
А нельзя ли посмотреть на этот эмулятор?


Вечером постараюсь закинуть в ПМ.

vnekrilov пишет:
Безуспешно ищу дистрибутивы ASProtect 2.41 SKE build 04.01

Я снял DLL с памяти и изучаю её. Самого дистра тоже нету

-----
.[ rE! p0w4 ].




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

Создано: 16 февраля 2009 12:17
· Личное сообщение · #5

Сегодня я выкладываю 3-ю часть из цикла статей по распаковке Asprotect, в которой описан процесс восстановления таблицы импорта IAT и вызовов эмулируемых APIs. К этой статье также приложен универсальный скрипт для восстановления таблицы IAT, который работает на всех версиях Asprotect.dll. Буду, как всегда, очень признателен за отзывы, замечания, критику и пожелания.

5b83_16.02.2009_CRACKLAB.rU.tgz - ASProtect - Распаковка по vnekrilov (Часть 3).rar



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 16 февраля 2009 12:52
· Личное сообщение · #6

vnekrilov, спасибо! Может есть еще смысл описать способ получение asprotect.dll для самостоятельного исследования. Ведь сама библиотека без header'a в памяти. А чтобы ее изучить, надо вставить и скорректировать его. Если влом описывать, то можно просто приложить эту DLL для одной из последних версий например. Для новичков я думаю будет полезно. К тому же в скриптах есть моменты, где поиск идет по шаблонам инструкций. А загрузив asprotect.DLL в ИДА человек сразу найдет требуемые места, и тем самым лучше будет представлять всю картину.

-----
.[ rE! p0w4 ].




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

Создано: 16 февраля 2009 13:49
· Личное сообщение · #7

Ultras пишет:
Может есть еще смысл описать способ получение asprotect.dll для самостоятельного исследования.


Имеется прекрасная статья Deroko "ASProtect VM Analyze", к которой приложена утилита AsprDllDumper, позволяющая получить Asprotect.dll. В статье "ASProtect SKE 2.3 unpacking approach" Deroko описал ручной способ получения Asprotect.dll.

А вот предложение приложить Asprotect.dll какой-либо версии, это хорошая идея, поскольку действительно, она занимает небольшой размер, но на ней можно посмотреть все волшебные точки, о которых я упоминаю в статьях.



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

Создано: 21 февраля 2009 23:14
· Личное сообщение · #8

В последнее время я проанализировал две программы (которые мне попались), упакованные Asprotect v1.41 build 04.01. В них Asprotect.dll расположена в предпоследней секции файла. Поэтому у меня возник вопрос - то ли это уловка программиста, то ли так работает эта версия Asprotect. Возможно, что кто-то еще встречался с программами, упакованными пакером этой версии, поэтому подскажите или ссылки на такие программы, или скажите, это работа протектора, или программиста?



Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 22 февраля 2009 00:23 · Поправил: Smon
· Личное сообщение · #9

ну если программист распакует купленный аспр, затем отреверсит его и пропатчит для изменения функционала, тогда это будет работой программиста Такая работа для обычного программиста не под силу, а вот для разработчика протектора более чем реально

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels




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

Создано: 22 февраля 2009 02:06
· Личное сообщение · #10

vnekrilov пишет:
ссылки на такие программы

в форуме для новичков есть топик
http://www.exelab.ru/f/action=vthread&forum=5&topic=13798
там речь идет о длл накрытой аспром, так в ней как раз Asprotect.dll расположена в предпоследней секции файла. Не знаю правда что за версия аспра.



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

Создано: 22 февраля 2009 07:51
· Личное сообщение · #11

Smon пишет:
Такая работа для обычного программиста не под силу, а вот для разработчика протектора более чем реально


Я тоже склоняюсь к тому, что так работает оригинальный пакер, но хотелось бы в этом убедиться на все 100%.

Konstantin

Спасибо за подсказку, обязательно посмотрю. Может быть, DLL, указанная тобой в топике, упакована Asprotect v1.41 (2.41 SKE) build 04.01. Поскольку дистрибутив Asprotect v1.41 (2.41 SKE) build 04.01 мне достать не удается, приходится искать обходные пути анализа этой версии протектора.




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 22 февраля 2009 23:55 · Поправил: Hellspawn
· Личное сообщение · #12

воевал тут с одной софтиной, там версия аспра 1.4 build 04.01 Beta, скрипт оер не нашёл, руками анпакнуть не получилось, я заинлайнил. по теме, волшебная точка выглядела так:
Code:
  1. 00575E2A     8945 DC            MOV DWORD PTR SS:[EBP-24],EAX
  2. 00575E2D     A1 E4385800        MOV EAX,DWORD PTR DS:[5838E4]
  3. 00575E32     C600 E1            MOV BYTE PTR DS:[EAX],0E1
  4. 00575E35     A1 38395800        MOV EAX,DWORD PTR DS:[583938]
  5. 00575E3A     8B00               MOV EAX,DWORD PTR DS:[EAX]
  6. 00575E3C     66:8B40 28         MOV AX,WORD PTR DS:[EAX+28]
  7. 00575E40     66:8945 FE         MOV WORD PTR SS:[EBP-2],AX
  8. 00575E44     D96D FE            FLDCW WORD PTR SS:[EBP-2]
  9. 00575E47     A1 2C545800        MOV EAX,DWORD PTR DS:[58542C]
  10. 00575E4C     E8 4F88FFFF        CALL md5(md5(.0056E6A0 
  11. 00575E51     A1 44545800        MOV EAX,DWORD PTR DS:[585444] // EAX = 00C60284
  12. 00575E56     8945 D4            MOV DWORD PTR SS:[EBP-2C],EAX
  13. 00575E59     8B45 F4            MOV EAX,DWORD PTR SS:[EBP-C]
  14. 00575E5C     8945 E0            MOV DWORD PTR SS:[EBP-20],EAX
  15. ...
  16. 00C60284     6A 18              PUSH 18
  17. 00C60286     6A 1A              PUSH 1A
  18. 00C60288     2E:EB 01           JMP SHORT 00C6028C
  19. 00C6028B     F2:66:             PREFIX REPNE:
  20. 00C6028D     9C                 PUSHFD
  21. 00C6028E     51                 PUSH ECX
  22. 00C6028F     81F1 1E5BE830      XOR ECX,30E85B1E
  23. 00C60295     81E1 B68EAD2D      AND ECX,2DAD8EB6
  24. 00C6029B     EB 01              JMP SHORT 00C6029E

хотя оеп не спёрт

з.ы. я отключил крк в аспре похучив пару апи, а вообще можно более универсальнее? бес поиска мест для патча с помощью сигнатур?

-----
[nice coder and reverser]




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

Создано: 23 февраля 2009 01:45
· Личное сообщение · #13

Hellspawn пишет:
воевал тут с одной софтиной, там версия аспра 1.4 build 04.01 Beta, скрипт оер не нашёл, руками анпакнуть не получилось


Я еще надыбал несколько прог, упакованных аспром 1.41 build 04.01. Во всех них Asprotect.dll располагается в предпоследней секции аспра, поэтому традиционные скрипты, которые прекрасно работают на старых версиях, здесь не работают. В аттаче я прикладываю новые скрипты для прохождения на OEP-SBOEP, восстановления таблиц INIT и IAT (скрипт для таблицы IAT предусматривает и восстановление вызовов эмулируемых APIs), и скрипт для поиска прыжков из области кода в области со Stolen Code с восстановлением эмулированных инструкций CALL, JMP, Jcc и CMP+Jcc. Работа этих скриптов проверена и на аспре 1.41 build 04.01. Работают они нормально. Завершаю четвертую часть туториала по распаковке аспра, и скоро выложу ее в топике.

35c0_22.02.2009_CRACKLAB.rU.tgz - Новые скрипты для Asprotect (c учетом версии 1.41 build 04.01).rar



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

Создано: 23 февраля 2009 02:09
· Личное сообщение · #14

Кстати, аспр 1.41 build 04.01 достаточно сильно усложняет распаковку. При написании скрипта для переноса кода из областей со Stolen Code в одну секцию, я столкнулся с еще одной проблемой: в области SBOEP протектор создает несколько эмулированных CALLов, которые имеют адрес назначения в этой-же области SBOEP. При копировании кода в объединенную секцию, приходится включать дополнительную проверку адреса назначения всех CALL, что усложняет скрипт, и я пока тормознулся на этой проблеме.



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

Создано: 23 февраля 2009 14:42
· Личное сообщение · #15

Сегодня я выкладываю 4-ю часть из цикла статей по распаковке Asprotect, в которой описан процесс восстановления эмулированных инструкций в областях памяти со Stolen Code, и объединение этих областей памяти в одну физическую память. К этой статье также приложены универсальные скрипты, которые выполняют эту работу на всех версиях Asprotect.dll. Буду, как всегда, очень признателен за отзывы, замечания, критику и пожелания.

4e48_23.02.2009_CRACKLAB.rU.tgz - ASProtect - Распаковка по vnekrilov (Часть 4).rar



Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 23 февраля 2009 14:55
· Личное сообщение · #16

vnekrilov пишет:
Безуспешно ищу дистрибутивы ASProtect 2.41 SKE build 04.01 и ASProtect 1.41 build 04.01.


Имеется дистриб ASProtect 1.41 build 04.01 но без ключа. Ключ теоретически тоже могу достать, но там активация через интернет. Без ключа пойдёт?



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

Создано: 23 февраля 2009 15:30 · Поправил: vnekrilov
· Личное сообщение · #17

progopis пишет:
Имеется дистриб ASProtect 1.41 build 04.01 но без ключа. Ключ теоретически тоже могу достать, но там активация через интернет. Без ключа пойдёт?


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



Ранг: 11.4 (новичок)
Активность: 0=0
Статус: Участник

Создано: 24 февраля 2009 12:34
· Личное сообщение · #18

Извините, я полный нуб в этом, но при работе скрипта "Восстановление таблицы IAT и вызовов APIs" выскакивает ошибка:

"Error on line 208
Text: asm temp_1,$RESULT
Unknown identifier"

PS: как раз на dll из моей темы: http://www.exelab.ru/f/action=vthread&forum=5&topic=13798



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

Создано: 24 февраля 2009 13:17
· Личное сообщение · #19

hypeartist пишет:
Извините, я полный нуб в этом, но при работе скрипта "Восстановление таблицы IAT и вызовов APIs" выскакивает ошибка:


В 3-й части туториала имеется такая фраза "Для восстановления таблицы IAT наиболее стабильно работает plugin OdbgScript v1.48, который я и рекомендую использовать." Дело в том, что все последние версии OdbgScript при выполнении этого кода дают такой сбой, а вот версия 1.48 такого сбоя не дает. Все остальные скрипты нормально работают на остальных версиях OdbgScript. И обрати внимание на примечание в самом скрипте "Скрипт тестировался только на WinXP, OllyDbg 1.10, ODBGScript 1.48 (эта версия plugin корректно обрабатывает ассемблирование инструкций)".



Ранг: 11.4 (новичок)
Активность: 0=0
Статус: Участник

Создано: 24 февраля 2009 14:54 · Поправил: hypeartist
· Личное сообщение · #20

vnekrilov

.......с 1.48 выдает ту-же ошибку (OllyDbg 1.10, WinXP SP2)



Ранг: 123.0 (ветеран), 10thx
Активность: 0.060
Статус: Участник

Создано: 24 февраля 2009 23:46
· Личное сообщение · #21

hypeartist, абсолютно такой же набор Олли 1.10 и скрипта 1.48 - Скрипт отрабатывает ОК.
Система: WinXP SP3.

-----
.[ rE! p0w4 ].




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

Создано: 25 февраля 2009 07:52
· Личное сообщение · #22

Ultras пишет:
абсолютно такой же набор Олли 1.10 и скрипта 1.48 - Скрипт отрабатывает ОК.
Система: WinXP SP3.


У меня то же самое - система нормально отрабатывает скрипт. До WinXP SP3 у меня была WinXP SP2, и этот скрипт тоже нормально работал.



Ранг: 11.4 (новичок)
Активность: 0=0
Статус: Участник

Создано: 25 февраля 2009 11:33 · Поправил: hypeartist
· Личное сообщение · #23

vnekrilov

а выложи, пожалуйста, свой ODBGScript 1.48

PS: а ты можешь попробовать свой скрипт на выложенной мной dll'ке? может в ней дело?



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

Создано: 25 февраля 2009 11:46
· Личное сообщение · #24

hypeartist пишет:
а выложи, пожалуйста, свой ODBGScript 1.48


Лови!!!

f1b0_25.02.2009_CRACKLAB.rU.tgz - ODbgScript 1.48.rar



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

Создано: 25 февраля 2009 11:56
· Личное сообщение · #25

hypeartist пишет:
PS: а ты можешь попробовать свой скрипт на выложенной мной dll'ке? может в ней дело?


Проверил, скрипт нормально отработал и восстановил таблицу IAT.



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

Создано: 28 февраля 2009 08:41
· Личное сообщение · #26

Сегодня я выкладываю 5-ю часть из цикла статей по распаковке Asprotect, в которой описан процесс создания новой секции файла, содержащей код из областей памяти со Stolen Code, переадресация прыжков из области кода программы в новую секцию файла, поиск и устранение проверок целостности кода (CRC). К этой статье также приложены универсальные скрипты, которые выполняют эту работу на всех версиях Asprotect.dll. Буду, как всегда, очень признателен за отзывы, замечания, критику и пожелания.

ce31_28.02.2009_CRACKLAB.rU.tgz - ASProtect - Распаковка по vnekrilov (Часть 5).rar




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

Создано: 28 февраля 2009 09:49
· Личное сообщение · #27

Валентин, небольшое пожелание: прикладывай к статье также .asm файл с кодом использованных "прививок"

Спасибо за проделанную работу.

-----
EnJoy!




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

Создано: 28 февраля 2009 12:56
· Личное сообщение · #28

Jupiter пишет:
Валентин, небольшое пожелание: прикладывай к статье также .asm файл с кодом использованных "прививок"


Я в максимальной степени стараюсь сжать размер статей, чтобы вложиться в размер аттача не более 500 КБ. А файл кода использованных прививок можно очень легко получить, открыв в Оле любой файл, скопировать из приложенных скриптов код прививок, и вставить его в файл. Для себя я давно сделал пустышку на базе Asprotect.dll, в эту пустышку записываю разрабатываемый код прививок, затем произвожу отладку прививок, записываю код прививок в скрипт, и очищаю пустышку от кода. Кстати, эту пустышку я сделал как файл .exe, чтобы не заморачиваться с подгрузкой .dll.



Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 28 февраля 2009 13:46
· Личное сообщение · #29

vnekrilov пишет:
Я в максимальной степени стараюсь сжать размер статей

Сохраняй как "веб-страница с фильтром".




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 28 февраля 2009 14:21
· Личное сообщение · #30

Будет ли в туторах описан обход блеклиста ключей?



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

Создано: 28 февраля 2009 17:46
· Личное сообщение · #31

Nightshade пишет:
Будет ли в туторах описан обход блеклиста ключей?


Пока не знаю, об этом не думал.


<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 38 . 39 . >>
 eXeL@B —› Протекторы —› Анализ ASProtect
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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