Опубликовано ·

Как работают античит-системы в онлайн-играх: основные принципы и технологии

Разбираем, как античиты проверяют клиент и память игры, используют драйверы, серверный контроль и анализ поведения игроков.

Как работают античит-системы в онлайн-играх: основные принципы и технологии

Читы в онлайн-играх появились не вчера. Как только игры стали соревновательными, нашлись люди, которым захотелось получить преимущество не за счет реакции, опыта или знания карты, а с помощью сторонних программ. Разработчики ответили античитами.

Сейчас античит – это уже не простая утилита, которая ищет на компьютере файл с подозрительным названием. В крупных онлайн-играх защита работает сразу на нескольких уровнях. Она проверяет клиент игры, следит за тем, что происходит в памяти, анализирует работу программ рядом с игрой и параллельно смотрит, что сам игрок делает во время матча.

Причем стопроцентной защиты все равно не существует. Читы меняются, способы их запуска тоже. Античиту приходится постоянно догонять.

Содержание

Как античит понимает, что с игрой что-то не так

Самый понятный способ – поиск уже известных признаков читов. Разработчики получают образец программы, изучают его и добавляют в базу определенные признаки. После этого античит может обнаруживать похожие процессы, модули или файлы.

Но такой метод быстро упирается в проблему: программу можно изменить. Иногда достаточно собрать новую версию, поменять часть кода или способ запуска, чтобы старый признак больше не совпадал. Поэтому одной базы известных читов недостаточно.

Античиту важнее понять, что именно происходит вокруг игрового процесса. Например, какая-то программа начинает обращаться к памяти игры, подключает дополнительный модуль или пытается вмешаться в работу клиента уже после запуска.

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

Как работают античит-системы в онлайн-играх: основные принципы и технологии

Что происходит с памятью игры

Во время работы игра постоянно хранит данные в оперативной памяти. Там находится информация, которая нужна прямо сейчас: состояние персонажа, объекты на карте, координаты, параметры оружия и многое другое. Часть запрещенных программ пытается получить доступ именно к этим данным.

Это один из моментов, за которым античит может следить. Если неизвестный процесс начинает регулярно читать определенные области памяти или пытается изменить их содержимое, система получает повод присмотреться к нему внимательнее.

Есть и другой вариант: сторонний код внедряется прямо в игровой процесс. Тогда античит проверяет, какие модули были загружены вместе с игрой и не изменились ли важные участки кода после запуска.

В реальности проверок намного больше. Обычно они сводятся к нескольким направлениям:

  • проверка файлов и библиотек игры;
  • наблюдение за обращениями к памяти;
  • поиск известных признаков читов;
  • контроль сторонних модулей и драйверов;
  • проверка действий игрока на сервере;
  • анализ необычного поведения во время матчей.

Смысл как раз в сочетании этих методов. Если один уровень защиты не заметил вмешательство, другой еще может его обнаружить.

Почему античиты используют драйверы

Некоторые античит-системы устанавливают собственный драйвер. Пользователям это часто не нравится, и причины понятны: драйвер работает с гораздо большими правами, чем обычная программа.

Но здесь есть техническая проблема. Обычное приложение видит далеко не все, что происходит в системе. Если запрещенная программа тоже использует драйвер и работает на низком уровне, античит без аналогичного доступа может просто не увидеть часть ее действий. Поэтому разработчики защиты иногда опускаются на тот же уровень. Так античит получает возможность следить за загрузкой драйверов, обращением к памяти и некоторыми действиями, которые были бы скрыты от обычного приложения.

Цена такого подхода – повышенные требования к самому античиту. Ошибка в обычной программе чаще всего заканчивается ее закрытием. Ошибка в драйвере может привести уже к проблемам Windows.

Именно поэтому вокруг античитов с доступом к ядру системы регулярно возникают споры. С одной стороны, такой подход усложняет жизнь разработчикам читов. С другой – пользователю приходится доверять программе с очень широкими правами.

Сервер тоже следит за игроком

Не все проверки выполняются на компьютере. На самом деле серверная часть для античита очень важна, потому что некоторые нарушения проще заметить именно там.

Допустим, персонаж за секунду переместился на расстояние, которое невозможно пройти даже с максимальной скоростью. Серверу не обязательно знать, какая именно программа это сделала. Ему достаточно понять, что такое действие не укладывается в правила игры. То же самое касается частоты выстрелов, взаимодействия с объектами, скорости выполнения команд и других параметров. Поэтому в современных играх серверу стараются отдавать как можно больше важных расчетов. Игровой клиент отправляет запрос: игрок нажал кнопку, выстрелил, начал движение. Но окончательно решает сервер. Он проверяет, допустимо ли действие в текущей ситуации. Если доверить все клиенту, менять результаты игры было бы заметно проще.

Можно ли вычислить чит только по поведению

Да, и это отдельное направление. Античит может вообще не найти подозрительную программу, но заметить странности в действиях самого пользователя. Например, система смотрит, как двигается прицел, насколько быстро человек реагирует на появление противника, как часто повторяются одинаковые действия. Один необычный эпизод значения почти не имеет. Игрок может случайно попасть невероятным выстрелом или провести очень удачный матч.

Гораздо интереснее статистика за долгое время. Человек действует неровно. Сегодня реакция быстрее, завтра медленнее. Прицел немного перелетает цель, движения отличаются друг от друга. У автоматизированного инструмента иногда появляются более четкие и повторяемые закономерности.

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

Это не означает, что нейросеть увидела странный выстрел и тут же выписала бан. Обычно такой анализ дает дополнительный сигнал. Дальше он сопоставляется с другими данными.

Почему бан приходит через несколько дней

Игроки часто считают, что если античит не заблокировал аккаунт сразу, значит он ничего не обнаружил. Не обязательно. Разработчики иногда специально не применяют санкции моментально. Если чит перестает работать через пять минут после обновления, его автор довольно быстро поймет, где искать причину.

Если же информация сначала собирается, а потом блокировки получают сразу сотни или тысячи аккаунтов, определить конкретный способ обнаружения сложнее. Так работают волны банов. Кроме того, задержка помогает снизить число ложных блокировок. Античиту приходится отличать запрещенное ПО от обычных программ, которые вполне легально взаимодействуют с игрой или системой. Для этого одного события мало.

Как работают античит-системы в онлайн-играх: основные принципы и технологии

Почему античиты все равно не могут убрать читы полностью

Античит и разработчики читов существуют в режиме постоянной гонки. Появляется новый способ обнаружения – начинают искать обход. Находится обход – защиту обновляют. Потом цикл повторяется. В какой-то момент меняется даже не сам чит, а способ его запуска, передачи данных или взаимодействия с компьютером. Поэтому задача античита не в том, чтобы один раз решить проблему навсегда. Это технически почти нереально. Его настоящая задача – сделать использование читов сложнее, сократить срок их работы и повысить вероятность обнаружения.

Лучше всего с этим справляются системы, которые не полагаются на один метод. Проверка клиента дополняется серверным контролем, анализом памяти и статистикой поведения. Такой античит тоже можно пытаться обходить. Просто делать это становится гораздо труднее, а любое обновление игры или защиты способно снова изменить правила.

Ещё статьи