Каким образом происходит обратная инженерия игровых консолей для создания эмуляторов?

Как люди реконструируют консоли, такие как Wii, для создания эмуляторов для исполняемых файлов своих игр?


person liamzebedee    schedule 19.11.2011    source источник
comment
Каждая система индивидуальна, сначала разберите ее и посмотрите, какие микросхемы можно распознать. Слишком часто основной процессор и другие микросхемы настраиваются на платформу, а это означает, что вы, скорее всего, не получите документацию. Так что сброс ромов может помочь или наблюдение за автобусами в поисках чего-то незашифрованного. Это также может быть связано с наблюдением за другими интерфейсами, например Ethernet / Wi-Fi, если платформа может загружать программы.   -  person old_timer    schedule 20.11.2011
comment
Я могу представить, что это игра в кошки-мышки: чем лучше одна сторона будет защищать платформу, тем лучше другая сторона получит обратный инжиниринг. Социальная инженерия, вероятно, тоже подойдет. Кевин Митник написал книгу или несколько по этой теме.   -  person old_timer    schedule 20.11.2011
comment
Я не верю, что это дубликат, так как я спрашиваю, как были реконструированы консоли, чтобы люди могли понять исполняемый формат игры и, следовательно, создать эмулятор. Это в отличие от предполагаемого дубликата, который спрашивает, как они работают и написаны, который не включает никакой информации о том, как исполняемые файлы консоли реконструируются.   -  person liamzebedee    schedule 20.11.2011


Ответы (1)


Что касается игровых консолей и тому подобного, они обычно основаны на стандартных процессорах. Игровая компания просто покупает процессор и использует его - они не вкладывают 200000000 долларов в разработку собственного процессора и не пытаются конкурировать с такими компаниями, как Motorola, Intel, Freescale и т. Д.

Эти же стандартные процессоры часто имеют стандартные отладочные порты, JTAG / BDM / NEXUS и т. Д. Производителю игровой консоли также приходится отлаживать свое собственное устройство! Они часто используются для обратного проектирования того, что делает консоль во время работы своей операционной системы. Это не всегда так просто, поскольку вам, возможно, придется найти способы активировать функции отладки, но это общий обзор.

Для самого эмулятора вам необходимо эмулировать аппаратную архитектуру и само оборудование. Как только вы сможете смоделировать это, вы можете просто «запустить» операционную систему и игры игровой консоли, и они понятия не имеют, что они работают не на реальном оборудовании. Существует множество методов виртуализации оборудования, чтобы оно выполняло код достаточно быстро, но это совершенно другая тема.

person hsikcah    schedule 04.02.2012