Blog. Just Blog

Исследование защиты игр Playrix Entertainment

Версия для печати Добавить в Избранное Отправить на E-Mail 26.06.2010 | Категория: Темная сторона Силы | Автор: ManHunter
Исследование защиты игр Playrix Entertainment
Исследование защиты игр Playrix Entertainment

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

Исследуем их защиту на примере игры Inca Ball, клона знаменитой игры Zuma. Скачиваем дистрибутив, устанавливаем. После запуска файла IncaBall.exe сперва открывается окно с предложением купить игру, ввести код и т.п. Причем, если попробовать скачать и установить другие игры Playrix Entertainment, то похожее окно будет и у них.

Окно враппера
Окно враппера

Ничего не напоминает? Правильно, здесь тоже используется технология дистрибьюции с враппером. С врапперами мы уже сталкивались раньше, когда исследовали защиту игр от PopCap Games, здесь примерно то же самое. Запускаем игру кнопкой Play Game, когда она загрузится, переключаемся через Alt-Tab обратно в Windows. Запускаем Process Explorer, смотрим, что у нас творится в памяти:

Process Explorer показывавет дочерний процесс
Process Explorer показывавет дочерний процесс

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

Обычный заголовок PE-файла
Обычный заголовок PE-файла

Точка входа также не тронута, ну по крайней мере визуально там все в порядке.

Точка входа в файл
Точка входа в файл

Можно пойти дальше, снять дамп с запущенного файла и сравнить секцию кода на предмет изменений, вдруг враппер записывает или восстанавливает в памяти дочернего процесса какие-то данные. Но пока в такие дебри лазить не будем, попробуем просто переименовать файл game.run во что-нибудь более исполняемое, например, game.exe или вообще сразу в IncaBall.exe. Запускаем полученный файл, сразу же стартует игра без всяких врапперов и временных ограничений. Цель достигнута.

Подведем краткий итог всему вышесказанному: скачиваем игру, устанавливаем, находим в папке с установленной игрой файл game.run, переименовываем с заменой поверх главного исполняемого файла, PROFIT!!!111 Вот и вся защита, хотя и защитой это назвать можно лишь с большой натяжкой. Но не будем отвлекаться, время для игр бесценно, его нельзя тратить впустую.

Поделиться ссылкой ВКонтакте Поделиться ссылкой на Facebook Поделиться ссылкой на Я.ру Поделиться ссылкой на LiveJournal Поделиться ссылкой в Мой Круг Добавить в Мой мир Добавить на ЛиРу (Liveinternet) Поделиться ссылкой на Friendfeed Добавить в Яндекс.Закладки Добавить в закладки Memori Добавить в закладки Google
Просмотров: 2572 | Комментариев: 17

Комментарии

Отзывы посетителей сайта о статье
D.S.Denton (26.01.2012 в 00:16):
Хоть и некропостинг, но все же дополню.

У нормальных домашних пользователей обычно есть файрволл (не-microsoft). Тех, кто не знает даже что такое "рабочий стол" в пример просьба не ставить, это далеко не нормальные, обычно им достаточно волшебного слова "антивирус".

И толковый фаер обязательно сообщит хозяину что при запуске игры процесс зачем-то пытается создать новый файл. В случае старого враппера невософта - еще и с рандомным именем, подозрительно напоминающим деятельность зловредов. Потому такой юзер заинтересуется данным файлом и дальнейшая судьба "защиты" очевидна. Эксперимент проводил в свое время на невософтовских играх среди учеников 5-9 класса СОШ, около 30% независимо от возраста разобрались.

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

Вывод - ничего не стоящая защита приносит прибыль с трети скачавших. Потому с точки зрения невософта и прочих, использовать ее можно и нужно, ведь PROFIT!
ManHunter (21.12.2010 в 15:42):
Ну раз они изначально не собираются обходить защиту, то они эту статью и читать не будут. Никто ведь не принуждает :)
anonimous (21.12.2010 в 15:39):
Автор детект фэйлд :) Согласен, что они могут сделать по инструкции и у них получится, но они этого не будут делать.
ManHunter (21.12.2010 в 15:32):
Автор детектед? Если у целевой аудитории мозгов чуть больше, чем у табуретки, то они спокойно все сделают по инструкции.
anonimous (21.12.2010 в 15:30):
Целевая аудитория игр не будет этого делать, они купят игру. А ставить супер-сложную защиту нет смысла, потому что дорого, ее все равно сломают.
КокаКола (02.09.2010 в 02:08):
ManHunter а рассмотри взлом bejeweled twist, там есть интернет-зависимость что бы открылись все уровни и т.п. Было бы интересно прочитать как это обходится.
Vovka (06.07.2010 в 17:11):
помимо game.run в папке с игрой присутствует fss.dat с такими же волшебными свойствами, и если первый только на английских играх, то второй есть и в русских играх и довольно часто встречается Playrix-овых играх вышедших на других порталах.
Чалых (29.06.2010 в 11:58):
Все получилось, большой респект.
ManHunter (29.06.2010 в 10:09):
Чалых, а на нашем сайте в основном игры с алаваровским враппером. Если в папке есть файл *.wrp.exe, то применяешь любой анти-алаваровский метод, их в сети достаточно.
Чалых (29.06.2010 в 10:05):
ManHunter, а здесь playrix.ru так не работает, наши умнее? Есть какой нибудь способ?
ManHunter (29.06.2010 в 07:18):
Isaev, защиты похожи, но все-таки разные. Невософт создает расшифрованный файл при запуске игры и по выходу удаляет его, а тут оригинальный файл лежит в папке с игрой сразу же после установки и никуда не девается. А невософт я снимаю без запуска, статическим декриптом :P У них там интересный алгоритм определения размера закриптованного фрагмента файла.
Isaev (28.06.2010 в 22:39):
Тебе можно медаль дать за поиск недозащит в интенете :)))
У NevoSoft, кстати, такая же "защита", по крайней мере раньше была точно такая!

в старых версиях там был "smssrv~1.dll" вместо "game.run", а в новых "*tmp" вместо dll
Ellephant (26.06.2010 в 05:33):
Конгениально!!!!
ManHunter (26.06.2010 в 00:32):
"Reverse Engineering для домохозяек" :)
Rustamer (25.06.2010 в 22:08):
Мда, и где ты такое только находишь :D. Защита наверно в том, что реверсер не ожидает такой наглости разработчиков)).
alek64 (25.06.2010 в 18:51):
молодца :)
godcat (25.06.2010 в 06:59):
Спасибо!

Добавить комментарий

Заполните форму для добавления комментария
Имя*:
Текст комментария (не более 2000 символов)*:

Все поля обязательны для заполнения.
Комментарии, содержащие рекламу, ненормативную лексику, оскорбления и т.п. будут удаляться. Злостным нарушителям доступ к сайту может быть заблокирован.
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2012
При использовании материалов ссылка на сайт обязательна
Время генерации: 0,13 сек. / MySQL: 2 (0,0006 сек.) / Память: 3,5 Mb
Наверх