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

Вопрос C&C Generals Online — Реверс GO Anti-Cheat и защита памяти в патче 1.05

Sloppy
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
507
Реакции
13
Здарова, реверсеры. Решил тряхнуть стариной и перенести старый добрый мапхак (Map Hack + Scaffold) под патч 1.05 для Generals Online, но наткнулся на неожиданно бодрый отпор со стороны их античита (GO AC).

В ванильной версии 1.05 всё по классике: находим байты, отвечающие за туман войны (shroud state), патчим — и всё летит. Но в Generals Online ребята закрутили гайки. Это вам не GenTool, который просто вешает черный экран при попытке записи в память. Тут игра падает в инстант-краш, как только софт пытается записать что-либо в защищенную область.

Что по технической части:
  1. Скан через Cheat Engine на предмет хуков ничего явного не дал.
  2. Проверка ntdll.NtWriteVirtualMemory показала, что она чистая, так что в kernel level они вряд ли лезут.
  3. Нашел таблицу с адресами, которые АС мониторит. Даже при попытке подменить адрес в таблице на другой — прилетает краш.
  4. Главное подозрение падает на использование VirtualProtect с флагом PAGE_GUARD на целевых адресах мапхака.

Проблема еще и в том, что в патче 1.05 структура кода заметно поменялась. Сигнатурные сканеры работают криво, а Ghidra после пересборки выдает лютую кашу, в которой сложно ориентироваться. По факту, любая попытка WriteProcessMemory в сторону отрисовки карты триггерит защиту моментально.

Если кто-то уже ковырял GO Anti-Cheat и знает, как они реализовали проверку целостности страниц или как грамотно сбросить их PAGE_GUARD без вылета процесса — черканите пару мыслей. Интересно, насколько реально сейчас пропатчить эту базу под онлайн без полноценного байпасса.

Кто плотно сидит на реверсе старых движков, какие сейчас актуальные методы скрытого патчинга памяти в обход таких простеньких, но назойливых АС?
 
Назад
Сверху Снизу