Есть такая прога Бест Звит Плюс. Скачать можно с ftp://ftp.bestzvit.com.ua/ (около 30 метров) К ней часто выходят обновления и в последнем разработчики извратились с защитой. Во-первых, не смог запустить отладку. Видит и IceExt и патченный Olly. Во-вторых, в некоторых процедурах куча мусора в виде левых джампов, манипуляций со стеком. Может кто может помочь, как этот мусор прривести в нормальный вид. Распаковывать в нормальный вид не обязательно. Главное, чтобы лоадер можно было слепить по-быстрому. Посмотреть на екзешник можно здесь (1,3м): http://bestzvit.com.ua/downloads/7P_Upd12.exe Это архив последнего обновления, внутри еще архив, в котором есть zforever.exe. Спасибо.
bogrus PEiD говорит что упакован Petite 1.4, но я сильно сомневаюсь. Там по-моему 2 упаковщика использовано. Это я по опыту предыдущих версий думаю. Раньше они ExeCryptor юзали.
Я пользуюсь на работе лицензионной версией. Мое мнение такое: программа написана очень криво. Код (Text): Сам лицензионный код состоит из 32 символа - цифры и русские заглавные буквы (!). И этот код действителен на определённое время, обычно на месяц, хотя везде пишут, что всё входит в первоночальную сумму стоимости программы, а дальше платно - только ежемесячное обновление форм бух.документов. Как бы не так!
_Sysman_ Поэтому и стоит ломать. Разработчики установили жестокую монополию и принудиловку на государственном уровне. В этом месяце они собираются поменять метод генерации ключей. И с каждым обновлением тренируются с защитой. А так как обновления выходят часто, то оптимальный вариант - лоадер. bogrus Я смотрю, что Вы хорошо разобрались с Execryptor. Вопрос: если в оригинале было: Код (Text): test al, al jz xxxxxxxx Останется ли после криптования команда test al, al? Может у Вас есть ссылки на знания по этому вопросу?
Я не очень хорошо разбираюсь, но этой команды точно не останется Ссылка на знания - хелп в EXECryptor-у
В принципе мусор можно убрать, если использовать какой-то оптимизирующий алгоритм, например такой кусок: Код (Text): 006D6A07 Main PUSH D5DFBC51 ; ESP=0012F890 006D6A0C Main POP EDI ; ESP=0012F894, EDI=D5DFBC51 006D6A0D Main XOR EDI,E8A867CC ; FL=0, EDI=3D77DB9D 006D6A13 Main JMP 006D63BD 006D63BD Main JMP 006D6EFA 006D6EFA Main ROL EDI,1B ; EDI=E9EBBEDC 006D6EFD Main ADD EDI,0F9E3294 ; FL=AS, EDI=F989F170 006D6F03 Main XOR EDI,589E4E91 ; FL=PS, EDI=A117BFE1 006D6F09 Main PUSH 006D6191 ; ESP=0012F890 006D6F0E Main JMP 006D6E6A 006D6E6A Main JMP 006D8054 006D8054 Main RETN ; ESP=0012F894 006D6191 Main ADD EDI,5F55A1BE ; FL=CP, EDI=006D619F 006D6197 Main XCHG [ESP],EDI ; EDI=00000018 Легко "автоматически" сократить до: Код (Text): POP EDI PUSH 006D619F Потом занятся выкидыванием лишних JMP'ов, или даже будет лучше пересобрать новую прогу из полезного кода, конечно работы тоже ... не на один месяц
Что-то ты как-то не так 'оптимизировал'. Твой фрагмент приводится к Код (Text): mov edi, 006D619F xchg [esp], edi А pop/push -- это уже следствие (и едва ли полезное для следующего прохода). Надо было ещё кода запостить, это похоже часть чего-то. А вообще как full-morpher не очень. Я сразу заметил одну слабость у этого полиморфа. Вернее их немало, но одна эта 'слабость' здорово упростит анализатор. Какая -- ХХХ, т.к. we've got hostiles.
Да, полиморф не очень. Подряд идет много кода который можно просто выкинуть. Начать анализ следует с выкидывания jmp, благо они здесь легко исключаются, а затем переводить push/ret в jmp и повторять оптимизацию. Ну и анализ всяких rol/ror/xor. После этого от полиморфа мало что останется.
Я так и знал что многие заинтересуются . Я сравнивал код до криптования и после. Небольшие процедурки примерно в сотню команд он практически не меняет. В IDA очень хорошо все просматривается. Но я думаю, что разработчики скорее всего откажутся от криптования. У них на форуме сильно ругаются из-за глюков Execryptora.