Nintendo Wii легко взломать, скопировав файлы на SD-карту и запустив эксплойт. Nintendo GameCube, выпущенная в 2006 году, была очень успешной, продано более 100 миллионов экземпляров. Wii была ее преемницей и была обратно совместима.
В 2006 году исследователи обнаружили уязвимость в Wii, но на практике это было сложнее, чем казалось. В 2007 году был показан ранний взлом, который требовал извлечения ключей подписи без модификации оборудования.
Nintendo Wii была защищена от взлома, так как игры GameCube работали в своей песочнице, что ограничивало доступ к SD-картам, Wiimote, Wi-Fi и Bluetooth.Использование неподписанного кода для взлома Wii было невозможно из-за сложной системы защиты. Игры были зашифрованы и подписаны уникальным идентификатором названия, для расшифровки которых требовался лицензионный ключ, находящийся во флэш-памяти NAND.
В ходе исследования было обнаружено, что вместо кода PowerPC система использовала код Arm, который включал дополнительный процессор Arm9 для обеспечения безопасности ввода-вывода.
Процессор Arm9 получил прозвище "звездочка" от исследователя безопасности. Ключ для расшифровки названий игр был уникальным и записывался в ПЗУ на заводе. Он находился внутри твердого чипа. Ключ нельзя было изменить.
Процесс загрузки Wii не затрагивает код PowerPC. Он неактивен до загрузки и готовности к взаимодействию с внешним миром через высокоуровневый API.
Аппаратное обеспечение Wii использовалось в режиме песочницы Gamecube, где было сделано несколько открытий. В конечном итоге они смогли запустить домашний GameCube, но были ограничены самой песочницей.
Когда вы вставляете диск GameCube, система сначала загружается в режиме Wii, а затем перезагружается в режим песочницы. В этом режиме он выделяет и использует первые 16 мегабайт оперативной памяти из 64. Это приводит к отключению iOS и невозможности чтения последних 48 байт. С помощью пинцета можно обмануть систему, обнажив верхние 48 байт данных и сбросить всю память. Таким образом, исследователи смогли восстановить всю iOS.
При изучении дампов памяти в Starlet были найдены глобальные и консольные ключи, используемые для расшифровки названий игр и получения доступа к ключам. Это позволило исследователям, которых они назвали командой пинцетов, получить доступ к этим ключам.
Цель команды заключалась в запуске кода на Wii, но даже после обнаружения ключей Nintendo должна была проверить программное обеспечение, прежде чем запускать его. Они использовали функцию сравнения строк C, которая завершается при обнаружении нуля. Это позволило быстро перебирать хеш sha-1, что позволило легко создавать цифровые подписи.
Подделав цифровую подпись, можно было установить на iOS любое программное обеспечение, не одобренное. Но команда пинцетов хотела найти способ запускать Linux на Wii без моддинга, поэтому они нашли уязвимости в сохранениях игр. Файлы сохранения используют специальный ключ консоли, поэтому их нельзя подделать.
Но команда пинцетов нашла уязвимость при загрузке iOS из m2, что позволило им изменить и повторно подписать любое сохранение. Они нашли эксплойт переполнения буфера в Legend of Zelda Twilight Princess и изменили файл сохранения, добавив небольшой загрузчик, который выполнял код PowerPC Broadway. Это позволило выполнить собственный загрузчик, известный как хак «Twilight hack».
Это был первый общедоступный способ включить взлом без изменений в оборудовании, выпущенный в 2008 году. Nintendo потребовалось две версии и около 12 месяцев, чтобы окончательно исправить его. В наши дни он устарел и больше не работает.
Если бы не пара пинцетов и блестящая работа команды, которая теперь называется «переполнение при сбое», Nintendo Wii, возможно, оставалась в безопасности дольше.
В 2008 году компании Nintendo потребовалось две версии и около 12 месяцев, чтобы окончательно исправить этот «хак».
Хак Twilight устарел и не работает, но без него Nintendo Wii могла бы дольше оставаться в безопасности. Очень интересная история. У меня есть много ссылок на справочные материалы. Советую посмотреть, как это произошло с технической точки зрения, и презентацию команды разработчиков пинцетов на конференции CCC в 2008 году. Если вы хотите узнать больше об истории взлома Nintendo Wii.
Всего хорошего, увидимся позже.