Apple | Дата: Пятница, 24.09.2010, 23:50 | Сообщение # 1 |
Логин: Apple
Имя: Дима Савчук
Сообщений: 10
Награды: 0
Репутация: 5
Замечания:
ID вашей групы: 1
|
В этом файле собрана информация о методах работы Чит-программ и мерах противодействия им с помощью АНТИ-Читерной программы Cheating-Death. - Обнаружение Чит-программ. - Как работают Чит-программы. - Какие бывают АНТИ-Читерские программы. - Как работает АНТИ-ЧИТ Cheating-Death. - Тенденция АНТИ-ЧИТ программ. - Почему надо обновлять АНТИ-ЧИТ. Принцип запуска АНТИ-ЧИТ программ почти у всех одинаковый (так же как и у ЧИТОВ) и состоит в следующем: ВЫ перед запуском своего ЦС сначала запускаете АНТИ-ЧИТ (cdeath.exe), а уже после этого сам Counter-Strike. Если АНТИ-ЧИТ не будет запущен, то вы просто не сможете играть на так называемом «безопасном сервере» (secure server) – это такой сервер, где запущена АНТИ-ЧИТерская программа. При подключении к такому серверу он подает запрос АНТИ-ЧИТ модулю на вашем компьютере. Если АНТИ-ЧИТ не загружен, то он не сможет ответить на этот запрос и вы будите отсоеденены от сервера. Существует два метода борьбы с Чит-программами: Первый метод заключается в поиске Читов в памяти компьютера по «шаблону». Т.е. имеется файл-база содержащая известные на данный момент общественности Чит-программы. АНТИ-ЧИТ просматривает память на сходство некоторых ее элементов с данными из файла-базы, если вдруг такое сходство обнаружено, то АНТИ-ЧИТ отсоединяет игрока от СЕРВЕРА. (Такой же принцип действия у Антивирусных программ). Проблема обнаружения определенных читов по «шаблону» (типа OGC или FX-Clan) состоит в том, что это достаточно слабая защита против самих создателей ЧИТ-ПРОГРАММ. Они просто-напросто будут слегка переделывать свои ЧИТ-МОДУЛИ, что бы они выглядели в памяти немного по-другому и стали незнакомы для базы АНТИ-ЧИТА, после чего, он не сможет определить их. Так же, в сети имеется куча информации о том, как сделать собственную ЧИТ-программу и по этому появление новых Читов происходит очень часто! А пополнение файла-базы будет настолько не оперативно, что даже имея последюю версия АНТИ-ЧИТА возможность обмана на вашем СЕРВЕРЕ будет высока! Второй метод (более совершенный) заключается в блокировке АНТИ-Чит программой всех мест и источников где ЧИТ-программы получают необходимую им информацию. После блокировки ЧИТ-программа просто будет не в состоянии нормально работать. Главное отличие АНТИ-ЧИТА Cheating-Death (C-D) от других АНТИ-ЧИТЕРСКИХ программ - это то, что C-D не имеет каких-то определенных методов обнаружения конкретных ЧИТОВ (шаблонов). Вместо этого, C-D пытается просто сделать их применение не эффективным, блокируя пути в получении ЧИТАМИ необходимой им информации для эффективной работы. Немного истории… Сначала, для борьбы с ЧИТерством, был придуман постоянно обновляемый список ЧИТ-ПРОГРАММ. Когда новый ЧИТ выходил в свет и становился доступным для общественности - он просто добавляется в черный список ЧИТОВ для поиска (по типу файла-базы). Такой способ напоминает метод работы обычных антивирусов. Программы обнаружения ЧИТОВ, стоявшие на игровом сервере, использовали постоянно обновляемый список с ЧИТ-программами. Если вдруг обнаруживалось, что игрок использует программу внесенную в этот список, то он быстро выкидывался с сервера навсегда (т.е он добавлялся в черный список игроков). В общем - это оказался не очень эффективный метод. Фактически, определение Чит-программы настолько ненадежно, что еще требует подумать над мерой наказания для потенциальных читеров. Сейчас в Интернете эта мера для читера выглядит обычным баном с сервера. Смысл такого наказания состоит в том, что если игрок когда-либо использовал ЧИТ-программы и был замечен, то серверный Бан будет запрещать ему играть на этом сервере, даже если он уже давно играет честно. В те времена на игровых серверах стояла АНТИ-Читерская программа с постоянно обновляемым списком ЧИТ-программ (файл-база по Читам) и списком Читеров (файл-база содержащяя IP Читеров). Если АНТИ-Чит программа вычисляет игрока использующего Чит-программу или Читирившего когда-либо в прошлом, то этот игрок тут же выкидывается сервером. Но и такое решение проблемы оказалось очень не эффективно. Потому что, если ты банишь читера со своего сервера, он просто идет и играет на другом продолжая свое грязное дело. В настоящее время имеется несколько глобальных баз по Читерам и Чит-программ. Но вся эта идея поднимает много вопросов по поводу этой базы и правильности занесения туда читеров. Как долго человек остается в этой базе данных? Что случается, если человек, помещенный в базу данных не читирил? Что случиться, если ваши дети/знакомые/друзья пользуются твоим компьютером без ведома и используют Чит-программы? Что если баг Анти-Читерской программы выдаст неправильное обнаружение? Что если один сервер пытается тебя забанить, а другой нет? Кто будет решать все эти проблемы? Все эти вопросы вызывают серьезные сомнения относительно справедливости и функциональных возможностях такой глобальной базы данных с читерами. Ведь возможность ошибки АНТИ-ЧИТ программы очень большая. А для того, что бы устранить эти ошибки в базе, нужно будет проделать много работы, а кто этим будет заниматься? Как работает Half-Life Итак, если ты хочешь понять, как работают Читерные программы, необходимо слегка разобраться, как работает Сетевая Игра в Half-Life. Когда ты играешь в Half-Life, то твой компьютер выступает в роли КЛИЕНТА (Client). Клиент отвечает за обработку нажатия кнопок на твоей клавиатуре/мышки и изменяет данные на экране. У СЕРВЕРА (Server) есть информация обо всех своих КЛИНТАХ. Он посылает им сведения о том, где каждый из других игроков находится, и что в данный момент делает. Теперь разберем, непосредственно, как работает КЛИЕНТ. Он состоит из двух частей: ДВИЖКА и клиента-MOD. Движок поддерживает связь с СЕРВЕРОМ, обновляет информацию на экране и обрабатывает нажатия клавиатуры и мышки. MOD - эта такая штука, которая непосредственно связана с игрой, в которую ты играешь. Для Half-Life и Counter-Strike этот MOD будет разный, но одинаковым будет одно - ЭТО ДВИЖОК. Все MOD-ы используют тот самый единственный ДВИЖОК под которым и работают! Движок и MOD взаимодействуют друг с другом для обеспечении нормальной игры на компьютере.Путем работы большинства ЧИТОВ является «вклинивание» себя между ДВИЖКОМ и MOD. После этого ДВИЖОК взаимодействует не с MOD, а с ЧИТ-программой, которая в свою очередь взаимодействует с MOD. И на оборот, MOD взаимодействует уже НЕ с ДВИЖКОМ, а с ЧИТ-программой, после чего (как реле) она переключается на ДВИЖОК. Поскольку MOD и Движок получают информацию от ЧИТА, то все работает очень даже прекрасно, и они понятия не имеют, что взаимодействуют друг с другом через Чит-программу. Применяющие такой способ работы ЧИТ-программы получили название "CLIENT-HOOKS". Теперь, когда Чит вклинен между ДВИЖКОМ и MOD, пользователь Чита может вытворять все что угодно, ведь ДВИЖОК отправляет все данные на СЕРВЕР, а эти данные подделывает ЧИТ-программа. Вот далеко не многие популярные приемы в ЧИТ-программах - вывод дополнительной информации на экран, авто-наведение на цель, прозрачные стены и многое другое. Другой метод работы Чит-программ стал достаточно популярен в последнее время. Он связан с перехватом информации об игроке через 3D драйвер (OpenGL или Direct3D). Пока ДВИЖОК работает в нормальном режиме – рисуя изменения на экране, Чит-программа анализирует драйвер, который обрабатывает эти рисуемые на дисплея изменения, перед непосредственным их отправлением на экран для пользователя. Конечно, Чит-программа при таком способе получает меньше информации, чем перехват ДВИЖКА и MOD, но все же этой информации достаточно для вычислений позиции любого игрока, во время прорисовки. Комбинированные Читы, которые используют еще и ClientHOOKS очень эффективны. Они достаточно сложны к блокировке АНТИ-Чит программами, тк. у них есть гораздо больше возможностей в перехвате информации. Такие читы получили название "wrappers" (Обертка) Итак, защита от читерства. Имеются две фундаментальные проблемы, которые необходимо решить. Первая - это то, что ДВИЖОК обеспечивает полной информации MOD о том, кто и где находится. По этому у ЧИТ-программы не возникает проблем в перехвате и искажению этой информации путем вклинивания себя между ДВИЖКОМ и MOD. Вторая - это то, каким способом ДВИЖОК все это прорисовывает на экране. ВЫВОДЫ: MOD действительно не должен знать точное место положение игрока, он только должен знать, где расположен игрок приблизительно. Ведь для того, чтобы Чит-программа эффективно работала, она должна ТОЧНО знать местоположение игрока. Если бы ДВИЖОК сообщил MOD не точное местоположение игрока, а приблизительное, то Чит-программы использующие АВТО наведение(AIM) были бы просто не эффективны. Вторая проблема состоит в алгоритме, которым ДВИЖОК создает картинку на экране дисплея. А создает он ее начиная с дальних участков к ближним! Например: Если игрок стоит за стеной, то ДВИЖОК сначала рисует игрока, а потом уже стену. Проблемы начинаются тогда, когда Чит-программы делают все стены прозрачными. С такими стенами, все игроки сразу становятся видимыми. Такой способ читерства получил название "wallhacking". Вот если бы ДВИЖОК не рисовал бы игроков, которых мы не видим, то Чит-программы типа "wallhacking" просто бы отошли от использования. Итак, как работает Cheating-Death! Cheating-Death (C-D) вклинивает себя между ДВИЖКОМ и ЧИТОМ. Этот способ работы сильно отличает его от других Анти-Читерских программ. C-D не работает как отдельная программа в не игры, он фактически загружен в игру. Итак, что C-D умеет делать: Если C-D определяет, что ты визуально не можешь видеть игрока (например, игрок находится за стенкой), он перемещает его местоположение позади тебя. Это дает следующий положительный эффект: Во-первых, это делает применение читов типа wallhack менее эффективным. Даже если у игрока использующего ЧИТ-программу все стены прозрачные, ну он же не сможет увидеть игрока который все время находится позади него. Во-вторых, это делает не эффективным применение чит-радара и ESP box. ESP-box - это такие коробки, которые рисуются над игроками, эти коробки видны сквозь стены. Если игрок, находясь за стеной, присядет, коробка нарисуется правее того места, где игрок сидит. Даже если ты не видишь игрока, ESP-box даст тебе точную его позицию. Кроме того, C-D передает MOD не точную информацию о позиции игрока. Это сразу отрубает ESP, AIMBOT и другие приемы использующиеся в Чит-программах. Это не точная информация для MOD не даст эффект дезориентации игроков, тк. ДВИЖОК все еще содержит точные данные о местоположении всех игроков. И, наконец, C-D контролирует места, которые обычно используют Чит-программы для перехвата информации от ДВИЖКА. Если C-D замечает, что одно из этих местоположений было изменено, это сразу отключает игрока. Такой способ лишает ЧИТ-программы информации, без которой они не могут функционировать, и вынуждает создателей таких программ искать другие пути в ее получение, что является достаточно трудным занятием. Тенденция АНТИ-ЧИТ программ: Уже сейчас реально придумывают и опробывают новые интересные методы борьбы с читерством. Могу сказать по секрету, что не за горами включения во многие клиенты АНТИ-Чит программ функции Screen-Shot. Все гениальное, конечно же, Просто! А зато как действенно, всем Читерам мира известо, что может дать Скрин-Шот, если запущен ЧИТ J Этот Screen-Shot просматривает администратор ЦС-сервера и в положительном результате (игрок читирит) принимает решение БАНА игрока. Почему надо постоянно обновлять АНТИ-ЧИТ? Итак, не надо забывать про то, что любая программа, которая запускается на стороне клиента может быть легко взломана. По этому создатели C-D подобно Чит-программам, постоянно изменяют пути обнаружения Читов. Вот как вы думаете, почему Cheating-Death 4.13.1, к примеру, не ловит OGC 9.1, а Cheating-Death 4.14.0 ловит? Может в OGC 9.1 используются какие-то новейшие приемы вклинивания? ВОВСЕ НЕТ! Да потому что, ЧИТ-модуль OGC 9.1 подделывает ответ на запрос АНТИ-ЧИТа с сервера и тот думает, что на стороне игрока запущен клиент АНТИ-ЧИТА и все впорядке. В версии 4.14.0 этот запрос уже переделан и зашифрован по новому алгоритму! И так из версии к версии. Вот для чего весьма необходимо постоянно обновлять свое АНТИ-ЧИТЕРСКОЕ ОРУЖИЕ!
|
|
| |