Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос [Обсуждение] Freestyle GunZ — Обход защиты и работа с NtProtectVirtualMemory

Sloppy
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
537
Реакции
14
Freestyle GunZ — проект старый, но защитой оброс знатно. Админы накатили VMProtect и, судя по всему, подмешали туда куски кода от старых античитов, с которыми игра жила годами. Если вы решили залезть в память этого фришарда, будьте готовы к паре сюрпризов.

Техническая база
Страницы памяти там жестко забиты в PAGE_EXECUTE_READ, а на
Код:
Expand Collapse Copy
NtProtectVirtualMemory
висит хук. Главная ловушка в том, что если вы просто снимете хук и попытаетесь что-то записать в память, клиент моментально схлопнется. Итог — бан по IP и fingerprint железа. Античит чекает целостность своего хука перед совершением операций.

Варианты обхода
Для тех, кто хочет прокинуть свои функции или изменить логику игры (те же макросы или визуальные патчи), есть пара рабочих схем исполнения:

  1. Снимаем хук античита —> фризим основной процесс (suspend) —> меняем протекшн страниц —> ставим свои хуки —> возвращаем оригинальные права на память —> вешаем хук античита обратно —> размораживаем процесс.
  2. Более чистый метод: фриз процесса —> копируем байты оригинальной ntdll —> мапим свежую ntdll в память —> меняем защиту страниц —> ставим свои хуки —> возвращаем протекшн —> записываем обратно оригинальную ntdll с хуком античита —> возобновляем работу процесса.

Будьте осторожны с fingerprinting-ом. Фришард собирает достаточно данных, чтобы после одной неудачной попытки патчинга ваш мейн улетел в бан без возможности восстановления через простую смену IP. Перед тестами лучше настроить нормальный спуфер или виртуалку с подменой HWID.

По сабжу — VMProtect там работает в связке с проверкой целостности syscall-ов, так что классический internal инжект без подготовки ntdll скорее всего приведет к моментальному вылету. Кто-нибудь пробовал прокидывать свои syscall-ы напрямую или там чекается стек вызовов?
 
Назад
Сверху Снизу