VMProtect for .NET released

Issues related to VMProtect
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

Renaming: I don't want to have to run my executable through another obfuscator before VMProtect. Class/method/field renaming is standard on even free .NET obfuscators and VMProtect should have it too. (maybe have it be apart of the 'Strip debug information' option?)
We are going to implement this feature in LUA script.
String encryption by default: Most .NET protectors allow you to have an option to protect all strings in the executable. Would be a nice convenience feature instead of doing SDK.DecryptString for every single string you use.

Because "most .NET protectors" have no API like VMProtectDecryptString :)) Anyway, protection of all strings is useless like protection of all functions in an application. Usually a developer want to protect only critical strings like "Correct/incorrect login/password".
Native VMs: While probably quite hard to implement, having a native VM for .NET CIL would make the protection much stronger and also differentiate you guys from the rest of .NET protectors. (the only other product that does this costs 2000$ and having that would make you guys the top of the line for .NET right now)
I don't understand what you mean. We have already implemented own VM for CIL code. Did you try it?
Lafko
Posts: 21
Joined: Sat Apr 27, 2019 8:47 am

Re: VMProtect for .NET released

Post by Lafko »

Решил проблему с соединением предварительно пропустив .net приложение через ConfuserEx. Так и не смог понять с чем связана проблема с соединением.
SDK.DecryptString("...") - не работает, всегда выдаёт ошибку.

Я не использую никакие методы защиты, просто прогоняю через VMProtect
Image
Прогнав приложение через дебагер я понял, что ошибка появляется при попытке вызова метода, сам метод не вызывается, при попытке сделать шаг внутрь сразу ловлю эксепшн.
Image

PS: Версия VMProtect 1031
PS2: Возьмите пожалуйста в интернете .net приложение с 2000+ строками кода и проверьте на нем VMProtect и исправьте пожалуйста все ошибки которые возникнут при защите.
Last edited by Lafko on Sun Aug 04, 2019 10:02 pm, edited 6 times in total.
Lafko
Posts: 21
Joined: Sat Apr 27, 2019 8:47 am

Re: VMProtect for .NET released

Post by Lafko »

Прошу добавить в функционал для .net
1) Защищенный виртуальный контейнер для загружаемых файлов и .dll;
2) Нативную оболочку;
3) Обфускацию методов;
4) Защиту внедренных ресурсов.

Рекомендую обратить внимание на https://github.com/Loksie/KoiVM-Virtualization
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

Господа,

Хочу обратить ваше внимание на следующие моменты:
1. Если вы столкнулись к какими-то багами, то просим присылать нам простейшие примеры, на которых воспроизводится ваша проблема. Никакие картинки из отладчика исправить проблему нам не помогут.
2. VMProtect встраивает в защищенное приложение собственный runtime, который обрабатывается совместно с кодом пользователя, и он весит намного больше чем 2000+ строк кода.
3. Ядро VMProtect написано на C++, поэтому поддержка .NET доступна даже без наличия .NET Framework на компьютере, а также возможна в версиях "VMProtect for OSX" и "VMProtect for Linux".
4. По поводу других протекторов для .NET - мы уже внимательно изучили все, что есть сейчас на рынке, в том числе и открытые проекты на github-е. Какие-то нужные фишки, которые присутствуют в этих продуктах, будут добавляться постепенно. На текущем этапе мы представили функционал по обфускации кода (не путать с переименованием классов/методов/полей) - это Virtualization (преобразование CIL в команды для нашей собственной ВМ) и Mutation (изменение Control Flow Graph). Также доступны дополнительные фишки по упаковке кода и SDK, в том числе и система лицензирования, которая полностью совместима с системой лицензирования для нативных приложений (для форматов PE, Mach-O, ELF).
Lafko
Posts: 21
Joined: Sat Apr 27, 2019 8:47 am

Re: VMProtect for .NET released

Post by Lafko »

Admin wrote:Господа,

Хочу обратить ваше внимание на следующие моменты:
1. Если вы столкнулись к какими-то багами, то просим присылать нам простейшие примеры, на которых воспроизводится ваша проблема. Никакие картинки из отладчика исправить проблему нам не помогут.
Отправил вам программу для анализа проблем на почту info@vmpsoft.com
PS: Приложение работает на .net framework 4.7.2 и проблемы которые я перечислил можно воспроизвести если .net версия ниже 4.7
После вашего ответа
Admin wrote:3. Ядро VMProtect написано на C++, поэтому поддержка .NET доступна даже без наличия .NET Framework на компьютере, а также возможна в версиях "VMProtect for OSX" и "VMProtect for Linux".
Я понял что проблема в не совместимости с .net framework 4.7.2. Подскажите пожалуйста на какой версии .net framework надо писать код?
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

Я понял что проблема в не совместимости с .net framework 4.7.2. Подскажите пожалуйста на какой версии .net framework надо писать код?
На любой версии.
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

VMProtectDemo (build 1132):
http://vmpsoft.com/files/VMProtectDemo.exe
Lafko
Posts: 21
Joined: Sat Apr 27, 2019 8:47 am

Re: VMProtect for .NET released

Post by Lafko »

Admin wrote:VMProtectDemo (build 1132):
http://vmpsoft.com/files/VMProtectDemo.exe
Теперь при запуске приложения оно постоянно висит в диспетчере задач и не запускается
Вторая ошибка тоже осталась
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

VMProtectDemo (build 1135):
http://vmpsoft.com/files/VMProtectDemo.exe
Lafko
Posts: 21
Joined: Sat Apr 27, 2019 8:47 am

Re: VMProtect for .NET released

Post by Lafko »

Admin wrote:VMProtectDemo (build 1135):
http://vmpsoft.com/files/VMProtectDemo.exe
Если я компилирую 1.0.0.47 версию то всё работает
Image

Но как только я меняю версию на 1.0.0.48 опять получаю ошибку 404
Image

PS: При изменении версии в .net у меня меняется адрес куда посылать/получать запрос
Lafko
Posts: 21
Joined: Sat Apr 27, 2019 8:47 am

Re: VMProtect for .NET released

Post by Lafko »

Когда я защищаю

Code: Select all

[VMProtect.BeginUltra]
 private void Button1_Click_1(object sender, EventArgs e)
В VMProtect я получаю ошибку
Image
И не могу понять что именно её вызывает


При попытки защитить

Code: Select all

[VMProtect.BeginUltra]
        private void StartRAM(string a)
Я получаю ошибку
Image

Для удобства анализа ошибок я вам отправил исходный код
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

Обратите внимание, что вы можете добавлять любые функции в проект (в том числе и NewRAM.Form1::Button1_Click_1) без использования SDK:
https://vmpsoft.com/vmprotect/user-manu ... on-section
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

И не могу понять что именно её вызывает
Команда ldflda не поддерживается
Lafko
Posts: 21
Joined: Sat Apr 27, 2019 8:47 am

Re: VMProtect for .NET released

Post by Lafko »

Admin wrote:Обратите внимание, что вы можете добавлять любые функции в проект (в том числе и NewRAM.Form1::Button1_Click_1) без использования SDK:
https://vmpsoft.com/vmprotect/user-manu ... on-section
Спасибо, при добавлении функций в ручном режиме - всё работает. Не могли бы вы отправить последнюю версию?
Admin
Site Admin
Posts: 2566
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: VMProtect for .NET released

Post by Admin »

Последнюю версию чего?
Post Reply