Задать вопрос
  • Как зашифровать алгоритм внутри программы?

    @Novikov_Artemm
    Inviz Custos,

    Смею предположить, что Вы опечатались и вместо "адреса системных вызовов" имели в виду "адреса winapi функций"?

    Да, адресов winapi. Не знаю насколько моя терминология верна, но обычно называю системным вызовом даже вызов к kernel32.dll, а не именно вызов к ядру(sysenter). Руководствуюсь тем, что сисколы недокументированы, архитектура windows в некоторой степени микроядерная. Ну и в литературе о Windows, usermoдные либы относят к системе.

    Я имел ввиду не защиту от анализа, обфускацию системных вызовов, вычисление их динамически. Я это написал как цель защиты от копирования кода.
    То что реверсер поставит брейки на нужные ему функции это понятно, я про то что если он например сломает авторизацию, но пропатченный код следующий перезапуск или у других пользователей работать уже не будет.
    Ему придется патчить каждый джамп вшитый на сервере(Для авторизованного юзера под его конкретные адреса системных вызовов при текущем запуске системы). Потому что перезапустив систему адреса системных либ(и соответственно функций в них) поменяются.
    Дополнительные обфускации этих джампов просто лишь усложняют их поиск и фикс. Например генерация на сервере каждый раз разного кода вычисления адреса для прыжка (разные регистры разные команды). Что усложняет поиск по паттерну.

    Разве нет у VMP галочки про продвинутый антидебаг ? Мне тоже всегда хватало ScylaHide против VMP, но думал что там должна быть галочка, которая активирует более сильную антиотладку. https://lifeinhex.com/use-of-syscall-and-sysenter-...

    Либо же scylaHide сканит heap на сисколлы....