Посл.ответ |
Сообщение |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 06 апреля 2005 20:17 · Личное сообщение · #1
Щас скрипт пишу для восстановления комманд, выполняемых на ВМ. С call, jmp и условными jmp разобрался (они восстанавливаюцца правильно), а вот с cmp косяк. Как определить размер сравниваемой области (т.е. будет cmp byte, word или dword ptr [XXX]? К тому же опкодов у всех подобных команд будет слишком много, чтобы всё в скрипте вручную прописывать Можно ли это автоматизировать как-то?
| Сообщение посчитали полезным: |
|
Ранг: 332.0 (мудрец) Активность: 0.18↘0 Статус: Участник •Pr0tEcToRs KiLLeR•
|
Создано: 06 апреля 2005 21:09 · Личное сообщение · #2
sanniassin пишет:
Как определить размер сравниваемой области (т.е. будет cmp byte, word или dword ptr [XXX]?
в аспровой процедуре эмуляции cmp это есть, копай ;)
sanniassin пишет:
К тому же опкодов у всех подобных команд будет слишком много, чтобы всё в скрипте вручную прописывать
угу, поэтому я написал свою функцию эмуляции cmp (чтобы она работала аналогично аспровой), при работе скрипт записывает необходимые для работы функции параметры (берет из аспра в момент когда он их считает/находит) в дамп и добавляет эту мою функцию эмуляции. Тоесть было call aspr_vm стало jmp to call My_cmp_emul, и прям под этим call скрипт располагает параметры.
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 07 апреля 2005 03:52 · Личное сообщение · #3
Я ламер, поэтому с My_cmp_emul не разобрался (да и лень было). Но восстанавление cmp + jcc вроде работает правильно Там для word-ов правда не писал поддержку, ну да они и встречаются редко Для сравнения вида cmp dword/byte ptr [123456], XXXXXXXX нужно было прописать два опкода, а для сравнений cmp dword/byte [eax], XXXXXXXXX опкоды генерятся на основе данных о типе джампа ;)
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 07 апреля 2005 13:13 · Поправил: sanniassin · Личное сообщение · #4
Почти доделал скрипт. Терь все команды восстанавливаюцца (кроме cmp ... ptr [esp] - лень, ибо нафиг оно нужно). Но я не знаю, как выглядит эмуляция cmp word ptr [xxx]... Дайте кто-нить прогу с ВМ и эмуляцией cmp word ptr [xxx]. И ещё, я не совсем понял, когда при определении размера сравниваемой области (byte, word, dword) ф-ция (по моему такая)
call edx
and eax, 7F
cmp eax, 4
ja somewhere
call edx возвращает 4, то это что означает? вроде похоже на cmp dword ptr...
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 08 апреля 2005 01:07 · Поправил: sanniassin · Личное сообщение · #5
Поетстируйте работу с ВМ. Восстановление импорта пока реализовано криво ;)
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 08 апреля 2005 01:09 · Личное сообщение · #6 |
Ранг: 12.8 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 08 апреля 2005 01:53 · Личное сообщение · #7
sanniassin пишет:
Сам скрипт.
Сигнатуры какие-то в скрипте странные у меня таких нет - искал вручную.
И скрипт не пашет наверно нужно его под каждую прогу подгонять
83C404 add esp,004
010424 add [esp],eax
C3 retn
5B pop ebx
5E pop esi
5F pop edi
5D pop ebp
8038E8 cmp b,[eax],0E8
7407 je 00000414D
40 inc eax
3BC3 cmp eax,ebx
72F6 jb 000004141
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 08 апреля 2005 12:35 · Личное сообщение · #8
Хм... а на чём проверял? Мож там аспр старый (1.32 beta, 2.0 beta и младше)?
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 08 апреля 2005 16:41 · Личное сообщение · #9
Уфф... наконец-то распаковал полностью аспр со всеми фичами (сам ASProtect 2.1 build 02.19 Release). Патчинг, имхо, проще ;)
| Сообщение посчитали полезным: |
Ранг: 42.0 (посетитель) Активность: 0.04↘0 Статус: Участник
|
Создано: 09 апреля 2005 08:31 · Личное сообщение · #10
sanniassin пишет:
распаковал полностью аспр со всеми фичами (сам ASProtect 2.1 build 02.19 Release)
Вот это сила, круто!
| Сообщение посчитали полезным: |
Ранг: 28.0 (посетитель) Активность: 0.02↘0 Статус: Участник anarchist
|
Создано: 09 апреля 2005 13:03 · Личное сообщение · #11
Молодец. А для меня этот ВМ все еще дремучий лес
| Сообщение посчитали полезным: |
Ранг: 303.7 (мудрец), 4thx Активность: 0.19↘0 Статус: Участник tPORt Manager
|
Создано: 09 апреля 2005 16:59 · Личное сообщение · #12
vins пишет:
Молодец. А для меня этот ВМ все еще дремучий лес
Надо разбомбить будет эту штуку. Я посмотрел топ не реверсинг.нет. Там не очень хорошие отзывы о нём=>надо попробовать Если бы там была настоящая VM, тогда бы можно было забыть А там лажа
| Сообщение посчитали полезным: |
Ранг: 332.0 (мудрец) Активность: 0.18↘0 Статус: Участник •Pr0tEcToRs KiLLeR•
|
Создано: 09 апреля 2005 20:28 · Личное сообщение · #13
sanniassin пишет:
Сам скрипт.
хмм... таже ошибка в определение типа некоторых jcc какая и у меня раньше была ;)
и сам принцип работы скрипта мне что-то знакомое сильно напоминает =))
| Сообщение посчитали полезным: |
Ранг: 303.7 (мудрец), 4thx Активность: 0.19↘0 Статус: Участник tPORt Manager
|
Создано: 09 апреля 2005 21:21 · Личное сообщение · #14
Mario555 пишет:
таже ошибка
А у меня вообще вылазит, что типа бряк по адресу 000000Е нельзя поставить, удаляем Не катит скрипт Может дашь прогу, на которой поэксперементировать?
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 10 апреля 2005 01:16 · Личное сообщение · #15
Mario555 пишет:
таже ошибка в определение типа некоторых jcc какая и у меня раньше была
А что за ошибка?
| Сообщение посчитали полезным: |
Ранг: 332.0 (мудрец) Активность: 0.18↘0 Статус: Участник •Pr0tEcToRs KiLLeR•
|
Создано: 10 апреля 2005 16:36 · Личное сообщение · #16
sanniassin пишет:
А что за ошибка?
говорю же
Mario555 пишет:
ошибка в определение типа некоторых jcc
тоесть не все аспровые типы jcc соответствуют опкодам этих jcc, см. эмуляцию каждой jcc ;)
| Сообщение посчитали полезным: |
Ранг: 303.7 (мудрец), 4thx Активность: 0.19↘0 Статус: Участник tPORt Manager
|
Создано: 10 апреля 2005 16:50 · Личное сообщение · #17
sanniassin
Может прогу дашь, которую этот скрипт анпакнуть сможет.
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 11 апреля 2005 00:41 · Личное сообщение · #18
Удаляет ВМ например в ImageDupeless h__p://www.imagedupeless.com
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 11 апреля 2005 00:46 · Личное сообщение · #19
Пофиксил пару багов (не связанных с jcc (т.к. ВМ разбирал не я ;))
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 11 апреля 2005 00:57 · Личное сообщение · #20 |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 11 апреля 2005 01:05 · Личное сообщение · #21
Mario555
Или ты имеешь ввиду:
06 - JBE=JPE
0A - JPE=JBE
?
| Сообщение посчитали полезным: |
Ранг: 303.7 (мудрец), 4thx Активность: 0.19↘0 Статус: Участник tPORt Manager
|
Создано: 11 апреля 2005 10:52 · Личное сообщение · #22
sanniassin пишет:
Удаляет ВМ например в ImageDupeless h__p://www.imagedupeless.com
Но скрипт до конца не дорабатывает, прога падает На какой проге скрипт доробатывает полностью?
| Сообщение посчитали полезным: |
Ранг: 12.8 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 11 апреля 2005 10:58 · Личное сообщение · #23
sanniassin пишет:
Удаляет ВМ например в ImageDupeless h__p://www.imagedupeless.com
Зарелись сам aspr - если всё так действительно просто таким образом ведь можно каждую версию релизить и 1.x и 2.x ..
| Сообщение посчитали полезным: |
Ранг: 209.5 (наставник), 42thx Активность: 0.1↘0 Статус: Участник WinCE ARM M@sTeR
|
Создано: 11 апреля 2005 10:59 · Личное сообщение · #24
У меня на LearnWords (http://www.learnwords.com/rus/download/learnwords.exe) дорабатывает полностью вроде (VM removed пишет). Там ASProtect 2.0x.
Только вот думаю теперь что это мне дает?
----- Get busy living or get busy dying © | Сообщение посчитали полезным: |
Ранг: 303.7 (мудрец), 4thx Активность: 0.19↘0 Статус: Участник tPORt Manager
|
Создано: 11 апреля 2005 11:23 · Личное сообщение · #25
evix пишет:
Зарелись сам aspr - если всё так действительно просто таким образом ведь можно каждую версию релизить и 1.x и 2.x ..
Ага, а как куски кода расприптовывать? Не подумал? Без ключа не анпакнуть.
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 11 апреля 2005 11:45 · Личное сообщение · #26
Bit-hack пишет:
Но скрипт до конца не дорабатывает, прога падает На какой проге скрипт доробатывает полностью?
Странно, у меня не падает. Только сёдня ночью скриптом этим (правда я там ещё один баг пофиксил, но это не важно, т.к. из-за него падать не должно (тока джампы неправильно генерятся)) распаковывал Easy Autorun Creator. По крайней мере до VM removed должно доходить. Какая у тебя ось?
evix пишет:
Зарелись сам aspr
Не имею правов таких ;)
Bit-hack пишет:
Без ключа не анпакнуть
Во-первых анпакнуть то можно, а вот юзать нормально нельзя. А во-вторых, кто сказал, что у меня нет ключа
| Сообщение посчитали полезным: |
Ранг: 303.7 (мудрец), 4thx Активность: 0.19↘0 Статус: Участник tPORt Manager
|
Создано: 11 апреля 2005 11:56 · Личное сообщение · #27
sanniassin пишет:
Какая у тебя ось?
XP. До VM removed доходит, но хочется дальше И где байты, которые востановли скрипт? Почему постоянна вылазит левая мессага?
sanniassin пишет:
А во-вторых, кто сказал, что у меня нет ключа
sanniassin пишет:
Не имею правов таких ;)
А чё так:_?
| Сообщение посчитали полезным: |
Ранг: 332.0 (мудрец) Активность: 0.18↘0 Статус: Участник •Pr0tEcToRs KiLLeR•
|
Создано: 11 апреля 2005 18:27 · Личное сообщение · #28
sanniassin пишет:
Или ты имеешь ввиду:
06 - JBE=JPE
0A - JPE=JBE
да, и ещё 07 <--> 0B
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 12 апреля 2005 00:16 · Поправил: sanniassin · Личное сообщение · #29
Вобщем забил я пока на восстановление ВМ, т.к. проще её скопировать Лень разбирацца в эмуляции cmp типа cmp регистр, регистр
| Сообщение посчитали полезным: |
Ранг: 31.0 (посетитель), 1thx Активность: 0.04↘0 Статус: Участник
|
Создано: 12 апреля 2005 00:25 · Личное сообщение · #30
Bit-hack пишет:
А чё так
Вот так случилось, слово пришлось дать, что никому не дам аспр...
| Сообщение посчитали полезным: |