Тема: Project War
Показать сообщение отдельно
Старый 06.10.2014, 20:32   #24
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Project War

Сообщение от EvilChaotic Посмотреть сообщение
Photon Cloud занимается вопросами пакетов. Там защиты не много.

ПС. Сразу после релиза читеры напали на игру. Понаделали ВХ, Аимботы, полеты, стрельба без разброса и прочие радости жизни. Еще встретил штуку, которая ставит всех игроков в определенную точку и читер просто стреляет по ним. И все это начали продавать игрокам.

Пока парился с античитами, еще успели и на сервере надехерить. В общем какой-то чел за 10 мин обошел всю защиту игры и начал отправлять запросы в бд. Отсюда читы на деньги и стату.

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

В данный момент античит банит за любое изменение переменных внутри игры через Cheat Engine, каждый час примерно по одному человеку отправляется в бан. Так же имеется защита от спид хака + инъекции длл. Воспользовался Anti Cheat Toolkit. ВХ тоже закрыл.
Ох неправильным ты путем пошел.. Ты не должен ничего шифровать, не должен сделить за тем чтобы "в cheat engine не меняли значения переменных". Все должно проверяться на сервере и только там.
От тебя должен уходить не пакет "мой персонаж находится по координатам x/y/z", а пакет "команда: движение вперед".
Ключ проекта ? Что за ключ проекта ?
Защита от спидхака ? Это случаем не от встроенного ли спидхака в чит энжин ?
Закрыл ВХ ? Как ?
Защита от инъекции ДЛЛ ? Это невозможно.
Насчет сетевого трафика - если ключ которым ты шифруешь поток постоянный - записан в клиенте, то тогда любой желающий может взять и дернуть его оттуда. Если ключ создается при открытии соединения, то тогда весь трафик перехватывается mitm-прокси.
Про то что кто-то смог отправлять запросы в базу - вообще эпик фейл...

Вообще есть 2 типа читерства:
1. Эксплоиты - самый сильный эффект, легче всего палится, легче всего правится. Сюдя относится все связанное с тем что разработчик забыл проверить на сервере:
- Читер играет за мага в MMORPG, у него нету маны, клиент не позволяет использовать заклинание, но мы просто шлем серверу пакет и ему наплевать...
- Читер играет в то же самое MMORPG и вместо 1 заклинания, отправляет сразу 10 пакетов, и использует 10 заклинаний одновременно (или 1 и тоже 10 раз за раз)...
- Читер играет в шутер и, благодаря тому что сервер шлет пакеты с местоположением противника даже если те за стеной, видит их (для этого нужно всего 100 строк кода C/C++)
2. Автоматизация действий - хер спалишь, хер запретишь. Сюдя относится все связанное в тем когда компьютер выполняет за тебя ряд действий:
- Все аимботы в шутерах - компьютеру ничего не стоит прицелится ведь, он оперирует углами, а не таскает мышку по столу.
- У компьютера охрененное время реакции - в тебя летит здоровенная ракета (или любой скилшот в MOBA-играх)? Нет проблем - компьютер отреагирует еще когда твой противник будет только замахиваться и вычислит математически наиболее выгодный точку, чтобы уклониться.
- Играешь в игру где больше всего решает сколько времени ты просидел в игре ? Нет проблем - бот будет играть за тебя 24/7 и вскопает столько грядок что можно будет обеспечить планету жратвой на 100 лет.

Дак вот первое - это фейл разработчика и только он. Второе - пока решается только путем обрезания компьтеру доступа к данным: аимбот ведь не читает изображение с экрана, чтобы опередить где противник и куда стоит прицелится чтобы убить его (над проблемой оптического распознавания до сих пор бьются профессионалы - в читах написанных 16-ти летним школьников ocr нет и подавно..). Нет, он напрямую читает положение/поворот игрока и противников из памяти игры, а потом применяет математику 9 класса... Чит который автоматически уклоняется от летящей в тебя всякой херни тоже берет данные напрямую - как правило из пакетов...

Первое решается очень просто - нужно перестать ленится и проверят, наконец, все на сервере.
Второе, теоретически, вообще не решается, однако на текущий момент можно попытаться забрить дилетантов - ring0 античит, поиск читов среди процессов/загруженный библиотек по сигнатурам и т.д. Это то чем так яростно занимаются valve anticheat, punkbuster, myac и многие другие. Те кто "шарит" или те у кого просто до жопы энтузиазма так или иначе разреверсят античит и обойдут его..
__________________
(Offline)
 
Ответить с цитированием
Эти 6 пользователя(ей) сказали Спасибо h1dd3n за это полезное сообщение:
Arton (06.10.2014), EvilChaotic (08.10.2014), HolyDel (06.10.2014), Igor (06.10.2014), impersonalis (06.10.2014), Samodelkin (06.10.2014)