Хакер - Самое крутое с мировых ИБ конференций. Лучшие публикации, посвященные взлому видеоигр
Содержание статьи
- Прячем геймерский чит-софт внутри прошивки USB-мыши
- На подступах к глобальному читерству в эмуляторах на Android
- XenoScan — продвинутая утилита для сканирования памяти видеоигр
- Хакеры создали новых игровых мобов для StarCraft через ошибку переполнения буфера
- TASBot: продвинутое ботовождение на игровой консоли Nintendo
- Это гейм-овер, детка! Против SmashBot’а, наделенного ИИ, не устоишь
Добро пожаловать в будущее, коллега! Поэтому и взламывают сегодня игры не ради фана, не ради быстрого прохождения или пяти черных драконов в армию, а все по той же причине — деньги, деньги и еще раз деньги…
Прячем геймерский чит-софт внутри прошивки USB-мыши
На недавнем международном турнире по киберспорту призовой фонд составил 20 миллионов долларов. Более пяти миллионов игроков были решительно настроены на то, чтобы дойти до конца. Естественно, что при таких высоких ставках на турнирах по киберспорту и при таком количестве соперников многие игроки хотят смошенничать и получить конкурентное преимущество.
Читеры постоянно находят всё новые и новые способы модификации игрового софта, который используется на турнирах по киберспорту, — от попыток спрятать исполняемые файлы на флеш-носителях до применения читов, сохраненных в сетевом воркшопе Steam. В этом докладе описывается, как можно обойти продвинутые средства безопасности, чтобы тайно пронести на целевой компьютер свою «полезную нагрузку».
Обычно на турнирах по киберспорту игрокам разрешается пользоваться личными клавиатурой и мышью. Однако эти «простые» USB-устройства тоже можно использовать для передачи команд в компьютер (через HID-протокол). Докладчик описывает, как добавить полезную нагрузку к USB-мыши, оснащенной процессором ARM Cortex M. Микроконтроллер, работающий под управлением этого процессора, сохраняет пользовательские профили во внутренней флеш-памяти, чтобы внутри самой мыши можно было держать пользовательские настройки сразу для нескольких компьютеров. Докладчик демонстрирует, как он модифицировал прошивку своей мыши, разместив в незанятом пространстве ее флеш-памяти полезную нагрузку, не затрагивая при этом исходную функциональность мыши.
Данная концепция применима к любому USB-устройству.
На подступах к глобальному читерству в эмуляторах на Android
Nevermoe. One Step Before Game Hackers — Instrumenting Android Emulators // DEF CON. 2018
Коммерческие эмуляторы Android, такие как BlueStacks и Leidian, весьма популярны сегодня. Подавляющее большинство игр работают на эмуляторах достаточно быстро и качественно. Плохая новость для поставщиков игр в том, что эти эмуляторы, как правило, работают с root’овыми полномочиями. Разработчики читерских утилит радостно это приветствуют: им не нужно отдельно заботиться о том, чтобы самим настраивать root’овые права для различных версий ОС Android и для различных версий прошивки, и распространение их утилит значительно упрощается.
Однако повод для радости есть также и у поставщиков игр: для увеличения производительности коммерческие Android-эмуляторы, как правило, используют смешанную эмуляцию x86/ARM. Стандартные фреймворки для работы с хуками и DBI, которыми обычно пользуются изготовители читерских утилит, не работают на этих платформах. В результате создавать утилиты становится существенно сложнее.
В данной презентации докладчик представляет свой собственный фреймворк для работы с хуками и DBI, который корректно работает в условиях смешанной эмуляции x86/ARM. Докладчик демонстрирует на живом примере, как этим фреймворком пользоваться, и по ходу объясняет различные стратегии эмуляции, которые реализованы в распространенных на сегодняшний день эмуляторах, с необходимыми деталями относительно рантайм-сред, в которых они работают (Dalvik/ART). Также докладчик объясняет, почему стандартные фреймворки для работы с хуками и DBI не работают на смешанных эмуляторах.

XenoScan — продвинутая утилита для сканирования памяти видеоигр
Nick Cano. XenoScan: Scanning Memory Like a Boss // DEF CON. 2017
XenoScan — новейшая утилита для игровых читеров. Основываясь на прочном фундаменте уже давно существующих сканеров (таких как Cheat Engine и TSearch), XenoScan предлагает множество инноваций, благодаря которым сканирование памяти ведется на принципиально новом уровне. В презентации докладчик демонстрирует на живом примере всю мощь своего инструмента, а также показывает, как XenoScan
- отыскивает сложные структуры данных, такие как бинарные деревья и связанные списки;
- отыскивает экземпляры классов, обосновавшихся в «куче»;
- группирует обнаруженные классы в соответствии с их типами.
Также докладчик объясняет, как работать с XenoScan не только с играми, которые изначально были созданы для компьютера, но и с играми, которые запущены из-под эмулятора Nintendo. По ходу демонстрации докладчик объясняет низкоуровневые технические детали, на базе которых построена работа XenoScan: что там происходит, как это работает и почему.
XenoScan распространяется с открытым исходным кодом.


Хакеры создали новых игровых мобов для StarCraft через ошибку переполнения буфера
Elias Bachaalany. StarCraft: Emulating a buffer overflow for fun and profit // RECON. 2018
Версии StarCraft 1.16.1 и ранее были подвержены ошибке переполнения буфера в программном коде парсинга карт. Хакеры из Южной Кореи использовали эту ошибку для создания новых игровых мобов. Эти мобы стали настолько популярными, что у разработчиков StarCraft возникла дилемма: если мы исправим эту ошибку, то тем самым убьем этих мобов.
Докладчик рассказывает о технических трудностях, с которыми придется столкнуться тем, кто решит пойти по стопам южнокорейских хакеров. Попутно он делится хитрыми приемами обратной инженерии, которые применил для решения этих технических трудностей, рассказывает о написанных им утилитах для облегчения данной задачи и о том, как разрабатывал свой собственный эмулятор. Презентация щедро снабжена исходными кодами и бинарными дампами.

TASBot: продвинутое ботовождение на игровой консоли Nintendo
Докладчик рассказывает, как уже который год подряд развлекает зрителей и участников AGDQ (мероприятие, на котором геймеры демонстрируют свое мастерство скоростного прохождения видеоигр) своим ботом TASBot. TASBot — это примочка, которая подключается к Nintendo R.O.B. и, притворившись джойстиком игровой консоли, играет в игры на невообразимо высоких, недоступных обычному геймеру скоростях.
TASBot манипулирует глюками и злоупотребляет уязвимостями игровой консоли, чтобы выполнять на ней произвольные опкоды и переписывать запущенную игру «на лету», в оперативной памяти. Фактически, она берет игровую консоль Nintendo под полный контроль без какой-либо модификации ПЗУ консоли или ее программной части. Все манипуляции — исключительно «через джойстик». Архивные видеозаписи, на которых запечатлены сеансы игры TASbot’а, выглядят как настоящая магия. По крайней мере кажется, что вещи подобного рода требуют взлома ПЗУ или манипуляций с оперативной памятью при помощи устройств наподобие Game Genie. Однако все, что делает TASBot, технически осуществимо без модификации изначального софта и железа.
Ради развлечения автор написал даже свой собственный клиент чата Twitch, который прямо из игровой консоли взаимодействует с сайтом Twitch.tv. Причем это была фишка 2016 года, а уже в 2017 году на том же мероприятии (AGDQ) разработчик TASBot’а удивил публику тем, что запустил с игровой консоли аудиосеанс Skype.

Это гейм-овер, детка! Против SmashBot’а, наделенного ИИ, не устоишь
Докладчик рассказывает о SmashBot, своем творении, очень искусно играющем в культовую игру Smash Bros. Он работает по схожему принципу, что и бот, представленный в предыдущем докладе, но отличается тем, что наделен продвинутым ИИ. В отличие от TASBot’а SmashBot побеждает не только предсказуемых компьютерных мобов, но и живых соперников — профессиональных игроков (см. пример его игры на YouTube).
Докладчик рассказывает, что начал разрабатывать своего бота в ответ на вызов, который ему бросил один из друзей: «Ты не сможешь создать ИИ, который победит меня в Smash Bros». Благодаря сочетанию алгоритмов глубокого обучения и тренировке бота в игре с живыми игроками SmashBot научился играть виртуозно. SmashBot даже выступал на двух турнирах, где состязался с лучшими в мире игроками. При этом выигрывал он гораздо чаще, чем проигрывал.
Однако нашлась у него и ахиллесова пята, которая погубила подающего надежды «молодого спортсмена». Когда противник приседает на корточки на краю сцены, SmashBot начинает смущаться и кончает жизнь самоубийством.
SmashBot распространяется с открытым исходным кодом (см. ссылку на GitHub).

Читайте ещё больше платных статей бесплатно: https://t.me/hacker_frei