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

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

Ранг: 12.6 (новичок), 5thx
Активность: 0.010
Статус: Участник

Создано: 31 августа 2014 19:11
· Личное сообщение · #1

Хочу спросить, какой смысл в inline патче, например, если в коде запакованной цели не удается обнаружить даже вызов MsgBox с надписью вроде "Unregistered" (они или зашифрованы или завиртуалены)?



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

Создано: 31 августа 2014 19:35
· Личное сообщение · #2

Отличный вопрос.
В чём смысл лечения зубов, если после посещения стоматолога машина всё равно не едет ?

Инлайн нужен в основном, если программу трудоемко распаковывать (антидампы, проверка на запакованность и т.д.). Ну и наконец - патч в несколько килобайт красивее выглядит чем 10-100 мегабайтная распакованная программа



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

Создано: 31 августа 2014 20:28
· Личное сообщение · #3

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



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

Создано: 31 августа 2014 20:34
· Личное сообщение · #4

kola1357 пишет:
tihiy_grom, только если упакована игра, особенно старфорсом, который имеет виртуальную машину, то лучше все-таки распаковка. Этим вы повысите производительность игры, так как исполнение на виртуальной машине протектора значительно замедляет работу.


То есть вы еще при снятии пакера будете декомпилить виртуализированые функции ? =)
Снятие пакера лишь ускорит старт подопытного , ну никак не производительность виртуальной машины.



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

Создано: 31 августа 2014 21:04
· Личное сообщение · #5

kid пишет:
То есть вы еще при снятии пакера будете декомпилить виртуализированые функции ? =)

Изучать виртальную машину ? Зачем ? Есть алгоритмы как снимать, нужно туторы смотреть.

kid пишет:
ну никак не производительность виртуальной машины.

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




Ранг: 392.8 (мудрец), 108thx
Активность: 0.260.01
Статус: Участник
REVENGE сила, БеХоЦе могила

Создано: 31 августа 2014 21:06 · Поправил: Maximus
· Личное сообщение · #6

kid, просто kola1357 думает что после распаковки виртуальная машина развиртуализируется сама.

PASAf ответ в вопросе. Патч нужен для того что бы патчить

-----
StarForce и Themida ацтой!




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

Создано: 31 августа 2014 21:08 · Поправил: kola1357
· Личное сообщение · #7

Maximus, я так не думаю. Ее тоже нужно снимать ручками. Вот к примеру в аспре есть виртуальная машина, которая тырит апи функции, а в код проги вставляет вызовы CALL 00220000, естественно после снятия дампа нам нужно восстановить все вызовы апи, иначе программа просто не заработает, ведь в дампе не будет адресов 00220000.



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

Создано: 31 августа 2014 22:02
· Личное сообщение · #8

kola1357

Вы вообще разницу между "похереным" импортом и виртуализированым кодом чувствуете ?



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

Создано: 31 августа 2014 22:05
· Личное сообщение · #9

kid, я выше писал про виртуалку аспра и способ ее снятия. А вы еще говорите, чуствую ли я разницу.))

Мне прям смешно стало.



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

Создано: 31 августа 2014 22:40
· Личное сообщение · #10

kola1357 пишет:
Вот к примеру в аспре есть виртуальная машина, которая тырит апи функции, а в код проги вставляет вызовы CALL 00220000


аспр на столько суров что виртуалит kernel32 ? =)
Или вы будете все таки разделять тела методов и API ?

Ну и напоследок , вмпрот пожалуйста декомпильните ВМ , а то тут народ уж умаялся с ним , вас ждут .



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

Создано: 31 августа 2014 22:47
· Личное сообщение · #11

kid пишет:
аспр на столько суров что виртуалит kernel32 ? =)

Он тырит апи и исполняет их в виртуальной машине. Вы лучше почитайте лекции Некрылова по аспру, чтобы такие глупости не писать.
Для вмпрота умные люди давно скрипт написали, вам осталось только разобраться в его коде.



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

Создано: 31 августа 2014 22:48
· Личное сообщение · #12

я понял , пойду уроки учить , завтра вставать рано =)




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

Создано: 31 августа 2014 23:49
· Личное сообщение · #13

kola1357 пишет:
Для вмпрота умные люди давно скрипт написали, вам осталось только разобраться в его коде.

Ага, этот скрипт как компресс на голову при больных зубах.

-----
Everything is relative...


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

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

Создано: 31 августа 2014 23:51 · Поправил: microxa
· Личное сообщение · #14

ну как сказать.. как сказать.. мне аспротекченые проги попадались лишь пару тройку раз, которые весьма относительно стоили времени траха с ними (FLStudio5 и MilkShape3D), проблем с их полнофункциональной регой небыло, скорей чувство омерзения, из за покрытия протом.

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

Хотя опятьже можно было бы и забить если, к некоторому удивлению он работал если в каталоге был файл ресурсов русификатора.. нормально, чо))

Фанатеть же интересом к этому замороченому триперру как аспрот... одного того что творилось в стриппере/его драйвере, было достаточно чтоб забыть об этом как о страшном ужосе.

ммм.. в любом случае снимаю шляпу перед PE_Kill, DecomAS, творил чтото нереальное по реинкарнации имеджей...
/me потерял мысль... чтоб подытожить. ну вы поняли, да..

PASAf ну почему же.. смотря как, и каким из стопицот способов.. инлайнить, хучить сплайсить и собствено патчить..
DimitarSerg
пожалуй соглашусь, с приписаной ко мне цитатой...
сам ценю лишь наиболее простые и тупые методики, (которые будучи перед носом, не всегда очевидны..)))



Ранг: 12.6 (новичок), 5thx
Активность: 0.010
Статус: Участник

Создано: 31 августа 2014 23:59
· Личное сообщение · #15

Стало быть, инлайн никак не поможет, если функции связанные с регистрацией находятся в вм либо подменены?




Ранг: 253.5 (наставник), 684thx
Активность: 0.260.25
Статус: Участник
radical

Создано: 01 сентября 2014 00:15
· Личное сообщение · #16

microxa пишет:
Стало быть, инлайн никак не поможет, если функции связанные с регистрацией находятся в вм либо подменены?

Поможет, когда достигнешь элитного уровня и будешь знать что и как запатчить в ленте пи кода (некоторые релизы FFF, энигму вроде кошерно патчили).

Vamit пишет:
Для вмпрота умные люди давно скрипт написали, вам осталось только разобраться в его коде.

Для фимки тоже, вот только остаются тысячи строк "каши" из кода

-----
ds





Ранг: 392.8 (мудрец), 108thx
Активность: 0.260.01
Статус: Участник
REVENGE сила, БеХоЦе могила

Создано: 01 сентября 2014 09:40 · Поправил: Maximus
· Личное сообщение · #17

>Стало быть, инлайн никак не поможет, если функции связанные с регистрацией находятся в вм либо подменены?

>как запатчить в ленте пи кода

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

Оба случая я разбирал в статьях:
1) Патч cmp (Themida)
http://exelab.ru/f/action=vthread&forum=13&topic=19415

2) Патч выхода из процедуры (AsProtect)
http://exelab.ru/rar/htm.php?n=102

-----
StarForce и Themida ацтой!




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

Создано: 02 сентября 2014 08:27
· Личное сообщение · #18

вот терпел. читал 2 стр флуда. ответ конкретно для ТС. РЕВЕРС подразумевает исследование и поиск путей решения проблемы. Одну и туже проблему зачастую можно решать десятками способов. Настоящее искуство, имхо, это когда ты нашел решение, потом сделал шаг назад, и еще раз подумал, а нельзяли решить проблему более элегантно. Конкретно с патчами, приведу пример, при патче РСА можно патчить модулус.. 40h-80h-160h байт. а можно 1 бит (иногда) паблик экспоненту.. типа 1001h. вроде патчи в обоих случаях, но 1 бит, вроде более красиво. в любом случае, КАК реализовать решение выбирается по многим причинам. 1) невозможность реализации в др. виде 2) соотношение время/деньги 3) етц

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....


| Сообщение посчитали полезным: sivorog
 eXeL@B —› Вопросы новичков —› Смысл Inline Patch
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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