Введение

Программное обеспечение для борьбы с читами PunkBuster — это компьютерная программа, предназначенная для обнаружения программ, используемых для читерства в онлайн-играх. Она осуществляет это путем сканирования содержимого памяти локального компьютера. Компьютер, на котором обнаружено использование читов, может быть заблокирован от подключения к защищенным серверам. Цель программы — выявлять читеров и предотвращать срыв честной игры. PunkBuster разработан и поддерживается компанией Even Balance, Inc.

История

Тони Рэй основал Even Balance для разработки PunkBuster, вдохновленный опытом столкновения с читерами в Team Fortress Classic. Первая бета-версия PunkBuster была анонсирована 21 сентября 2000 года для Half-Life. В то время Valve активно боролась с читерством, которое наблюдалось с момента выхода игры. Первой игрой, в которую был интегрирован PunkBuster, стала Return to Castle Wolfenstein от id Software.

Публикуемые статьи

Сканирование памяти в реальном времени осуществляется путем установки клиента PunkBuster на компьютерах игроков для поиска известных читов и взломов с использованием встроенной базы данных. Двухуровневая система автоматического обновления в фоновом режиме с ограниченной пропускной способностью использует несколько главных игровых серверов для обеспечения безопасности пользователей, гарантируя, что на компьютеры игроков не будут установлены ложные или поврежденные обновления. Все игроки регулярно отправляют отчеты о состоянии на сервер PunkBuster. При необходимости сервер PunkBuster регистрирует нарушение, которое (в зависимости от настроек) приведет к удалению нарушителя из игры и уведомлению об этом всех остальных игроков. Администраторы PunkBuster также могут вручную удалять игроков из игры на определенное время или навсегда заблокировать их при необходимости. Серверы PunkBuster могут быть дополнительно настроены для случайной проверки настроек игроков на предмет известных эксплойтов игрового движка. Серверы PunkBuster могут быть настроены на отправку клиентам инструкций по вычислению частичных MD5-хэшей файлов в каталоге установки игры. Результаты сравниваются с заданной конфигурацией, различия регистрируются, и, по желанию, клиент удаляется с сервера. Администраторы PunkBuster могут запрашивать реальные скриншоты от конкретных игроков и/или настроить сервер PB для случайного захвата скриншотов во время игры. Однако, хакерские программы могут блокировать создание скриншотов (создавая обрезанные изображения) или удалять визуальные признаки взлома (очищая скриншот), чтобы остаться незамеченными, что снижает эффективность этой функции. Предусмотрена дополнительная функция фильтрации "недопустимых имен", позволяющая администраторам PunkBuster предотвращать использование игроками оскорбительных никнеймов, содержащих нежелательную брань или оскорбления. Администраторы PunkBuster могут использовать функции поиска для проверки привязок клавиш и скриптов игроков на предмет известных эксплойтов игры. Система PunkBuster Player Power может быть настроена таким образом, чтобы игроки могли самостоятельно администрировать игровые серверы в отсутствие администратора сервера, без необходимости использования паролей, и инициировать голосования за удаление игрока с сервера на определенное время. Серверы PunkBuster имеют встроенный миниатюрный HTTP веб-сервер, позволяющий удаленно администрировать игровой сервер через веб-браузер из любой точки Интернета. Администраторы PunkBuster могут транслировать журналы сервера в реальном времени в другое место. PunkBuster внедрил аппаратные блокировки PunkBuster, которые блокируют аппаратные компоненты при обнаружении читов, нарушающих или обходящих нормальную работу PunkBuster. Эти блокировки означают постоянную блокировку игроков, идентификаторы жестких дисков которых соответствуют черному списку Evenbalance.

Несовместимости

Некоторые игры (например, Crysis или BioShock 2) не имеют 64-битной версии PunkBuster. По этой причине 64-битные клиенты не смогут играть на серверах с включенным PunkBuster, если не запустят 32-битную версию игры. PunkBuster не разрешает пользователям Windows без учетных записей администратора подключаться к играм. При попытке подключения к игре пользователь будет немедленно исключен из-за недостаточных прав доступа в операционной системе. Начиная с версии PB-клиента v1.700, в дополнение к внутриигровому клиенту PunkBuster используется служба Windows с полными административными правами, что позволяет обновлять систему без запроса повышения прав пользователя. Однако для корректной работы PunkBuster в некоторых играх все равно могут потребоваться права администратора.

Глобальные запреты на использование GUID и запреты на использование оборудования

PunkBuster использует систему под названием "глобальный бан". Для блокировки на серверах с поддержкой PunkBuster используется либо GUID (генерируемый на основе CD-ключа), либо компоненты аппаратного обеспечения компьютера. Большинство попыток читерства приводят лишь к предупреждению об обнаружении, однако читы, вмешивающиеся в работу самого программного обеспечения PunkBuster, могут заблокировать GUID нарушившей системы и отключить доступ ко всем серверам с поддержкой PunkBuster для данной игры. Особо серьезные случаи читерства могут привести к блокировке компьютера во всех играх, защищенных PunkBuster. С 30 июня 2004 года Even Balance использует уникальные аппаратные идентификаторы для постоянной блокировки игроков, пытающихся препятствовать нормальной работе PunkBuster (что само по себе является нарушением лицензионного соглашения PunkBuster EULA). Even Balance использует 128-битный односторонний хэш, чтобы исключить возможность получения информации о серийных номерах отдельных компьютеров из аппаратного GUID. Even Balance не раскрывает, какое именно оборудование проверяет PunkBuster при наложении бана, однако анализ программного обеспечения показал, что GUID может быть основан на серийных номерах сканируемых жестких дисков. Как и многие баны, основанные на информации из системы пользователя, аппаратные GUID-баны могут быть подделаны.

Ложноположительные результаты

В период с 30 октября по 6 ноября 2013 года Punkbuster ошибочно блокировал пользователей Battlefield 4 с ошибкой "(Gamehack #89265)". По состоянию на 8 ноября 2013 года проблема была устранена компанией Even Balance inc., и все блокировки Punkbuster, вызванные этой ошибкой, были сняты и официально признаны ложными срабатываниями. "Мы подтвердили, что нарушение #89265 может быть вызвано программным обеспечением, не предназначенным для читерства. Этот код нарушения был удален с наших основных серверов, и мы рекомендуем администраторам серверов проявить снисхождение к игрокам, у которых возник этот код за последние несколько дней."