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

Вопрос Ragnarok Online — Вызов функции walk под Gepard Shield

Sloppy
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
617
Реакции
16
Парни, такая тема: пилю бота для старой доброй Ragnarok Online (приватка с защитой Gepard Shield). Сейчас все работает через внешнюю эмуляцию кликов мыши и нажатий клавиш — костыль еще тот. Навигация высчитывается по координатам, но это дико неудобно и ненадежно.

Суть задачи:
Хочу дергать игровую функцию walk напрямую из кода. В IDA уже все расковырял, псевдокод функции на руках, оффсеты есть. Но главная проблема — доставить этот код в процесс и исполнить его.

Что уже пробовал (и что не взлетело):
  1. DLL Injection: Юзал Extreme Injector, писал свои мануал-мапперы и даже кернел-инжекты. Gepard душит все — игра либо не стартует, либо моментально закрывается. Похоже, там стоит жесткий мониторинг на LdrLoadDll или заголовок модуля.
  2. Пакеты (WinDivert): Пакеты зашифрованы по самые помидоры. Реверсить протокол под Gepard — то еще удовольствие, пока отложил этот вариант.
  3. Хуки WinSock: Ставил брейкпоинты на
    Код:
    Expand Collapse Copy
    send
    в ws2.dll, но они тупо не триггерятся. Похоже, они юзают либо кастомную обертку, либо жесткий инлайн.
  4. DLL Hijacking: Хотел глянуть, какие либы можно подменить, но Gepard сурово блочит Process Monitor, так что прочекать загрузку модулей проблематично.

Технические детали:
Игра древняя, но Gepard Shield — штука противная. Если он блочит ProcMon по имени процесса, попробуйте просто переименовать бинарник или сменить Title окна. Если же там идет чек по драйверу — дело хуже.

Если обычный инжект не лезет, есть вариант глянуть в сторону Thread Hijacking или поискать Code Caves в легитных модулях. Еще как вариант — использование шеллкода через драйверное чтение/запись памяти, минуя создание новых потоков в процессе.

Кто сталкивался с этим щитом в последнее время? Реально ли под ним заставить работать интернал-логику без полноценного байпаса самого античита? Делитесь опытом, может есть более элегантные способы исполнения кода в контексте RO, чем старый добрый CreateRemoteThread.
 
Назад
Сверху Снизу