Опять мемный разговор про VMP vs Themida.
Ладно,я выскажу свое мнение!
Это только моё чёртово мнение и я могу ошибаться!!
VMP:
+
1) Хороший antidebug.
Если точнее:вручную вызванные syscall в главном модуле (.exe).
Я сам взял данный трюк на вооружение, когда узнал о нем.
2)Кроссплатформенность.
У меня нет своего мнении об этом ,ибо не писал кроссплатформенные софты.
3)Хороший трюк для обнаружения гипервизора
-
1)Мутация кода крайне слабая.
Я сравнивал 2 бинарника под VMP/Themida (только мутация кода у одной функции)и я просто плакал от VMP.
2) Одна основная виртуальная машина. На самом деле у VMP одна большая виртуальная машина и пару маленьких.(недавно читал об анализе VMP и если смогу найти - скину)
Themida:
+
1) Хороший мутатор кода.
Мне понравилось,что один код блока был разделен на пару маленьких и не было видно моих константных значений(например:0x1337).
2)Самое важное и чем славятся oreans: виртуальные машины.
Сами виртуальные машины имеют разные уровни обфускации и можно прочитать конфигурацию в файле vm,а не 3 ползунка от VMP.
Сами виртуальные машины намного сложнее VMP и более раздражительны. Я анализировал программы под VMP и Themida, и от последнего у меня горела пятая точка + читал мнение на UC/tuts4you.
3) тебе дают несколько приватных виртуальных машин,если попросить и это радует.
-
1) Мемные Antidebug трюки. Лучше бы взяли идею у VMP и переделали слегка:
прыгать в команду syscall в ntdll,а не вызывать из основного модуля.
Т.е
mov r10, rcx
mov eax, dword ptr[syscall_number]
call dword ptr[NtApi+ 0x10]
; это только псевдокод
2) детект виртуальной машины по реестру/файлам. Я бы отрубил за это руки.
P.S я не буду говорить про упаковку, обфускацию WinApi и т.д
Если вы не выходит дальше защиты протектора,то ваша башка очень не дорого стоит, потому что в ней никогда не было мозгов ^^.