- Статус
- Оффлайн
- Регистрация
- 13 Фев 2026
- Сообщения
- 507
- Реакции
- 13
Здарова, реверсеры. Решил тряхнуть стариной и перенести старый добрый мапхак (Map Hack + Scaffold) под патч 1.05 для Generals Online, но наткнулся на неожиданно бодрый отпор со стороны их античита (GO AC).
В ванильной версии 1.05 всё по классике: находим байты, отвечающие за туман войны (shroud state), патчим — и всё летит. Но в Generals Online ребята закрутили гайки. Это вам не GenTool, который просто вешает черный экран при попытке записи в память. Тут игра падает в инстант-краш, как только софт пытается записать что-либо в защищенную область.
Что по технической части:
Если кто-то уже ковырял GO Anti-Cheat и знает, как они реализовали проверку целостности страниц или как грамотно сбросить их PAGE_GUARD без вылета процесса — черканите пару мыслей. Интересно, насколько реально сейчас пропатчить эту базу под онлайн без полноценного байпасса.
Кто плотно сидит на реверсе старых движков, какие сейчас актуальные методы скрытого патчинга памяти в обход таких простеньких, но назойливых АС?
В ванильной версии 1.05 всё по классике: находим байты, отвечающие за туман войны (shroud state), патчим — и всё летит. Но в Generals Online ребята закрутили гайки. Это вам не GenTool, который просто вешает черный экран при попытке записи в память. Тут игра падает в инстант-краш, как только софт пытается записать что-либо в защищенную область.
Что по технической части:
- Скан через Cheat Engine на предмет хуков ничего явного не дал.
- Проверка ntdll.NtWriteVirtualMemory показала, что она чистая, так что в kernel level они вряд ли лезут.
- Нашел таблицу с адресами, которые АС мониторит. Даже при попытке подменить адрес в таблице на другой — прилетает краш.
- Главное подозрение падает на использование VirtualProtect с флагом PAGE_GUARD на целевых адресах мапхака.
Проблема еще и в том, что в патче 1.05 структура кода заметно поменялась. Сигнатурные сканеры работают криво, а Ghidra после пересборки выдает лютую кашу, в которой сложно ориентироваться. По факту, любая попытка WriteProcessMemory в сторону отрисовки карты триггерит защиту моментально.
Если кто-то уже ковырял GO Anti-Cheat и знает, как они реализовали проверку целостности страниц или как грамотно сбросить их PAGE_GUARD без вылета процесса — черканите пару мыслей. Интересно, насколько реально сейчас пропатчить эту базу под онлайн без полноценного байпасса.
Кто плотно сидит на реверсе старых движков, какие сейчас актуальные методы скрытого патчинга памяти в обход таких простеньких, но назойливых АС?