@AlexsandrLomaev

Изучить базовую структуру читов?

Привет! такая проблема

я уже не плохо покапался в C++ \ С# и мне необходимо бы знать основу структуру написания чита,
ну допустим что нужно первым делом написать ? ( подключиться к потоку ) и т.д

если скинете полезные статьи\гайды\ссылки\каналы по моему вопросу
буду очень благодарен!

или найдётся среди вас умеющий, прошу помощи ( возможно оплата за тренинг )
  • Вопрос задан
  • 75 просмотров
Пригласить эксперта
Ответы на вопрос 2
Griboks
@Griboks Куратор тега C#
Это зависит от цели чита.
Если вам нужен анализ игровой обстановки в реальном времени, то пишите оверлей.
Если вы хотите создать бота, то пишите автоматизацию клавиатуры, мышки+запись экрана.
Если вы хотите сделать ха или накручивать ресурсы, то у вас ничего не получится, т.к. они хранятся на сервере. Но для простеньких игр вам нужен инжектор/автоматический корректировщик памяти (artmoney)/сниффер пакетов.
Ответ написан
HemulGM
@HemulGM
Delphi Developer, сис. админ
Существуют два основных способа работы читов.
1. Инъекция dll к процессу игры
2. Редактирование чужой памяти

Со вторым всё просто. Подключаемся к процессу, читаем память. Ищем нужные паттерны (или адреса), редактируем.

А вот первый вариант достаточно обширный. На самом деле, если б не было античитов, то всё просто. Подключаемся к процессу, создаем удаленный поток в контексте чужого процесса с вызовом загрузки нужной нам библиотеки. При загрузке библиотеки, она начинает выполняться. Обычно это бесконечный цикл до выгрузки библиотеки. Но античит такое детектит очень легко. Ведь сама библиотека отображается в списке загруженных библиотек. А также, античит может повесить хук на метод загрузки библиотеки и верифицировать "легальность" вызова метода.

По этому, существует более изощренный способ инъекции. Через редактирование памяти. Мы просто всю библиотеку записываем в ОЗУ чужого процесса, определяем все методы этот библиотеки в памяти, а дальше как с обычным инжектом, создаем удаленный поток, но с указанием точки входа в библиотеку напрямую. В итоге, у нас библиотека даже отображаться не будет в списке подгруженных модулей. Называется это ManualMap.
Однако и это детектят. Обычно на стадии доступа к памяти. Детектят используя драйвер. Здесь все ещё сложнее.
Для обхода нам тоже будет нужен драйвер, чтобы поднять наш уровень доступа так сказать. Но это уже потом.

Важный момент. Он состоит в том, что создание читов под Win32 отличается от создания читов под Win64. Это касается архитектуры процесса, а не винды.

P.S. всё это я делал на Delphi, но принцип работы и все методы идентичны почти на всех языках, это ведь WinApi.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Технология Екатеринбург
от 60 000 до 150 000 ₽
Across Systems Новосибирск
До 180 000 ₽
от 70 000 до 140 000 ₽
15 июл. 2020, в 08:35
20000 руб./за проект
15 июл. 2020, в 04:05
3000 руб./в час
15 июл. 2020, в 03:06
45000 руб./за проект