Оглавление
Как взламывали Nintendo: ретроспектива от Game Boy до Switch
Друзья, теперь вы можете поддержать сайт:
На Алиэкспресс появились:
Крутые металлические этикетки для консолей Game Boy Advance.
Скоро на прилавках появится Nintendo Switch 2 — и едва ли не раньше самой консоли в сети начали циркулировать слухи о её потенциальной уязвимости.
Некоторые из них доходят до абсурда: например, утверждается, что Nintendo якобы будет измерять напряжение на чипах, чтобы определять факт вмешательства. Чтобы при малейших отклонениях физически выводить консоль из строя. Это уже не просто бан — речь идёт о целенаправленном “убийстве” устройства.
Подобное - отличный пример цифровой мифологии: звучит пугающе, но с реальностью почти не имеет ничего общего.
Чего же реально можно ожидать от взлома Switch 2? Для этого стоит оглянуться назад и посмотреть, как взламывались предыдущие портативные консоли Nintendo: какими методами, кто стоял за взломами и какую роль в этом играли официальные и неофициальные флеш-картриджи.
Начало эры флеш-картирджей
Парадоксально, но самыми первыми производителями флеш-картриджей для портативных консолей Nintendo… была сама Nintendo. Вернее, их партнёр Intelligent Systems Co., Ltd. — компания, основанная в 1986 году, которая в 1987 фактически стала внутренним подразделением Nintendo.
В 1989 году Intelligent Systems выпустила первый комплект разработчика для Game Boy — DMG-ICE. В него входили эмулятор, отладчик и флеш-картриджи, на которые можно было записывать сборки игр. Однако, комплект был сугубо профессиональным — и стоил около 7 тысяч долларов.
И раз уж мы заговорили о флеш-картриджах, то давайте разберёмся, в чём разница между ними и обычными картриджами. На самом деле, всё просто: обычный картридж содержит ПЗУ — чип, в который игра записана один раз на заводе. Флеш-картридж, в отличие от него, позволяет многократно перезаписывать содержимое — как карта памяти, но в формате картриджа.
Для разработчиков это было критично. Нельзя разрабатывать игру и каждый раз заказывать партию новых картриджей с текущей сборкой — процесс занял бы годы.
Поэтому Nintendo первой создала флеш-картриджи — пусть и не для потребителей, а исключительно для внутреннего использования.
Game Boy и Game Boy Color: первые вестники грядущей бури
Первые флеш-картриджи для Game Boy появились уже во времена Game Boy Color — в далёком 1998 году. И, что любопытно, их появление не было связано с какими-то техническими прорывами хакеров. Всё началось с самой Nintendo.
В ноябре 1996 года компания Lawson (японская сеть магазинов) анонсировала проект под названием Game Kiosk. В рамках этого проекта в магазинах должны были появиться автоматы Loppi, в которых можно было купить игру и сразу записать её на специальный флеш-картридж. Изначально это касалось Nintendo 64, а не портативок.
Если бы в Nintendo знали, к чему приведёт открытие этого ящика Пандоры, возможно, они бы попытались прикрыть Lawson ещё до анонса. Но идея им понравилась: в те годы компания всерьёз пыталась бороться со вторичным рынком — с тем, что пользователи перепродавали б/у игры.
Главная проблема заключалась в одном: флеш-картриджи настолько просто создать, что это идея была подарком для пиратов.
По сути, флеш-картридж — это обычная плата с тремя чипами и возможностью перезаписи. Ридер — да, его ещё нужно было разработать и запрограммировать, но сами картриджи? Сделать их мог почти кто угодно. Буквально — задача уровня школьного кружка электроники.
Так Nintendo сами выбросили идею флеш-картриджей на рынок. А рынок не заставил себя ждать.
Гонконгская компания Bung Enterprises, ранее специализировавшаяся на устройствах для взлома домашних приставок, моментально переориентировалась на портативки и выпустила GB Xchanger — один из первых массовых пиратских флеш-картриджей.
Кроме простоты создания таких картриджей была и еще одна проблема – защита консоли. Она была, мягко говоря, символической. Консоль при запуске сравнивала логотип Nintendo, записанный в BIOS, с логотипом в памяти картриджа. Если они совпадали — игра запускалась. Если нет — чёрный экран.
И тут вы, наверное, спросите: «Это что, вся защита?»
Да. И фокус в том, что это была юридическая защита, а не техническая. Пират, копируя картридж, неизбежно копировал и логотип Nintendo. А значит, Nintendo могла судиться за незаконное использование торговой марки — и не нужно было даже разбираться, кто владеет правами на саму игру.
Интересно, что даже сами Nintendo в 2000 году выпустили собственный флеш-картридж для Game Boy — проект Nintendo Power.
Это был единственный случай, когда компания официально продавала флеш-картридж для своих портативных систем. Да, была ещё китайская iQue, но та работала почти автономно и в рамках другого юридического поля.
Конечно, поначалу ассортимент флеш-картриджей был скромным — GB Xchanger, GB Transferer, E-Merger и e-Card. Но лампу уже открыли, и джин вылетел: назад его загнать было невозможно.
Game Boy Advance: когда флеш-картриджи вышли из-под контроля
В марте 2001 года Nintendo выпускает Game Boy Advance. И всего через два месяца — в мае — появляется первый флеш-картридж: Flash Advance.
Срок между релизом консоли и появлением первых пиратских картриджей сократился с девяти лет (в эпоху оригинального Game Boy) до двух месяцев. Причина — в том, что Nintendo практически не усилили защиту. Более того, конструкция самих картриджей упростилась.
В оригинальных Game Boy и Game Boy Color между процессором и памятью стоял специальный контроллер — MBC (Memory Bank Controller). Его задача — управлять переключением банков памяти: когда процессор просил «Покажи банк номер 5», MBC переключал нужную область ROM или RAM в адресное пространство.
В Game Boy Advance этот «секретарь» исчез. Процессор получил прямой доступ к памяти — без промежуточных чипов. Это и стало главным упрощением: теперь картридж был просто набором микросхем флеш-памяти, без всякой логики внутри.
Да, конструктивно картридж стал немного сложнее — появилось больше контактов и новая разводка. Но логика упростилась до минимума. Именно поэтому Flash Advance появился так быстро.
Nintendo к тому моменту уже успели через суд закрыть компанию Bung, но это никого не остановило. Производство флеш-картриджей ушло в полуподполье — и, что важно, в ряде стран оно вообще не нарушало местные законы.
А дальше началась настоящая вакханалия. Все поняли: на флеш-картриджах можно зарабатывать быстро, просто и массово.
Эти картриджи стали плодиться как грибы после дождя:
EZ-Flash — первый картридж от разработчика под псевдонимом Borden
Затем компания Xinga скопировала идею и выпустила XG-Flash.
Потом Borden… перешёл работать к Xinga.
Вскоре появились EFA-картриджи (Extreme Flash Advance).
Плотину прорвало. По самым скромным оценкам, для GBA было выпущено более ста различных моделей флеш-картриджей.
И что примечательно: флеш-картриджи для GBA выпускаются до сих пор — и пользуются стабильной популярностью.
Компания EZ-Flash до сих пор жива и недавно выпустила EZ-Flash Definitive Edition — пожалуй, лучший флеш-картридж для Game Boy Advance вообще.
Похоже, именно в этот момент в Nintendo осознали, что дальше так продолжаться не может.
Флеш-картриджи размножались бесконтрольно, юридическая защита не работала, а железо взламывалось буквально на коленке. И тогда компания впервые всерьёз задумалась о настоящей защите. Результат не заставил себя ждать — с выходом Nintendo DS всё изменилось.
Nintendo DS: защита стоимостью в одну строку?
В декабре 2004 года Nintendo представила миру свой ответ на PlayStation Portable — Nintendo DS. Консоль получилась во всех смыслах новой: два экрана, сенсорное управление, переработанная архитектура. И, что важно, впервые за всю историю портативных систем, Nintendo всерьёз задумалась о защите.
Архитектура DS включала два процессора: ARM9, отвечавший за игры, и ARM7, занимавшийся шифрованием и обратной совместимостью. При запуске игры консоль проверяла картридж на подлинность, используя встроенный ключ и сигнатуру, прошитую в ROM. Если проверка проходила — игра запускалась. Если нет — пользователь видел пустой экран.
В теории — красиво. На практике — уже в феврале 2005 года, спустя всего пару месяцев после релиза, хакер под ником DarkFader запустил на консоли первую homebrew-игру.
Проблема оказалась банальной: Nintendo не защитила в картридже адрес исполняемого файла. И при помощи модифицированной платы можно было использовать оригинальный картридж как «пропуск», а игру загружать с флеш-картриджа от Game Boy Advance.
Устройство, собранное DarkFader’ом, было довольно громоздким. Но Natrium42 упростил конструкцию, а Lynx наладил мелкосерийное производство. Так родился PassMe — промежуточный адаптер, который вставлялся в слот Nintendo DS вместе с оригинальным картриджем. Он просто подменял адрес игры, позволяя запускать её с флеш-картриджа, вставленного в слот GBA. Название — «пропусти меня» — отражало суть устройства на 100%.
Первый PassMe позволял запускать только homebrew-софт. Но уже в июле 2005 года вышел NeoFlash — первое коммерческое решение, способное запускать и коммерческие игры. В комплекте шёл не кустарный PassMe, а устройство промышленного производства.
Вскоре на рынок хлынула волна аналогичных устройств. Nintendo пыталась сопротивляться, выпуская прошивки и изменённый BIOS, но это лишь стимулировало появление PassMe 2 — более продвинутой версии, работающей даже с обновлёнными консолями.
Затем появились NoPass — уже без необходимости в оригинальном картридже. Они имитировали лицензионную игру, сами проходили проверку и запускали образ с GBA-флеш-картриджа.
Картриджи эволюционировали буквально на глазах. В августе 2006 года в продаже появился DS-Xtreme — первый настоящий флеш-картридж, не требующий никаких обходов и костылей.
За ним последовали AceKard, CycloDS, N-Card и множество других решений.
Но настоящую революцию устроил R4.
Все предыдущие устройства были дорогими: NeoFlash — 240 евро, DS-Xtreme — от 125 долларов. А R4 предлагал то же самое… за 30 долларов. Удобство, доступность и низкая цена сделали своё дело. Клоны R4 начали плодиться с бешеной скоростью.
По моим приблизительным подсчётам, общее количество флеш-картриджей для DS приближается к двум сотням.
Nintendo опять проиграли эту битву, но решили наверстать упущенное с Nintendo DSi.
Nintendo DSi: первые шаги в криптографии
С выходом Nintendo DSi в 2008 году компания впервые внедрила в портативную консоль настоящую криптографическую защиту. Если в оригинальной DS игры запускались без реальной проверки подлинности, то теперь ситуация изменилась кардинально.
Каждый картридж, работающий в DSi-режиме, должен был иметь RSA-подпись, созданную закрытым ключом Nintendo. При запуске консоль сверяла эту подпись с помощью встроенного открытого ключа. Если хотя бы один байт в заголовке был изменён — игра не запускалась.
Но и этим защита не ограничивалась. В DSi появился white-list — список доверенных ID-игр, зашитый в прошивку. Даже валидная подпись не гарантировала запуск: если ID не находился в списке — игра блокировалась. Что важно: список можно было обновлять через прошивки, и Nintendo активно этим пользовалась, отсекая неофициальные или подозрительные картриджи.
Парадоксально, но для DSi практически не выпускали физических картриджей. В основном игры распространялись через онлайн-магазин. А почти половину всех физических DSi-релизов составляли картриджи, которые даже не поступили в продажу — например, Nintendo DSi XL Demo Video, предназначенные исключительно для демонстрационных стоек в магазинах. Настолько мало было выпущено физических картриджей для DSi.
Кроме того, в DSi жёстко разделили режимы совместимости: старые DS-картриджи запускались только в DS-режиме, без доступа к новым возможностям консоли — вроде камеры, SD-карты и увеличенной частоты процессора. Это означало, что флеш-картриджи эпохи DS по-прежнему работали, но были ограничены в функциональности.
Все эти меры поставили крест на универсальных флеш-картриджах для DSi. Создание нового устройства превратилось из любительской самодеятельности в серьёзную инженерную задачу с криптоанализом и уязвимостями.
Большинство старых производителей картриджей переключились на другое: они искали эксплойты в играх, чтобы хотя бы запускать старые DS-ROM’ы в обход защиты. О полноценном DSi флеш-картридже не шло и речи.
Тем не менее, первым (и единственным) «флеш-картриджем» для DSi стало устройство от команды CycloDS.
Но оно скорее напоминало оболочку для эксплойта, чем настоящий флеш-картридж. Устройство поставлялось пустым: пользователь должен был загрузить с сайта производителя специальную утилиту, сконфигурировать прошивку и залить образ игры. Совместимость была слабой, интерфейс — странным, и в целом проект остался на границе между "хакингом" и "коммерческой неудачей".
В начале 2011 года появился куда более интересный ход — Sudokuhax. Как следует из названия, он использовал уязвимость в официальной игре Sudoku. Этот эксплойт позволял запускать DSi-программы прямо с SD-карты.
Но и это был не полноценный взлом. Во-первых, эксплойт нужно было активировать вручную при каждом запуске. Во-вторых, он не давал полного контроля над системой — речь шла лишь о частичном обходе.
И тут случилось главное событие, которое не позволило взломать NDSi: в том же 2011 году вышла Nintendo 3DS. Почти все внимание хакеров и производителей флеш-картриджей немедленно переключилось на новую платформу. DSi осталась где-то в стороне — полувзломанная, полузабытая.
Первая полноценная кастомная прошивка для Nintendo DSi вышла только в 2017 году. Иронично, но её появление стало возможным благодаря Nintendo 3DS: через уязвимости 3DS стало возможным получить полный доступ к NAND-памяти DSi и, наконец, обойти её криптографическую защиту.
Nintendo 3DS: самый эпичный провал
В 2011 году Nintendo представила, пожалуй, одну из самых технологически амбициозных портативных консолей — Nintendo 3DS. Устройство, которое умело показывать объёмное 3D-изображение без очков, выглядело как магия на фоне конкурентов. Но настоящий фокус был не в этом — Nintendo вложила колоссальные усилия в защиту системы от взлома.
В отличие от DSi, где всё держалось на цифровых подписях и white-листах, в 3DS появилась полноценная аппаратно-программная система безопасности. Каждый компонент — от загрузчика и системного ROM до криптографии картриджей — работал в цепочке доверия (chain-of-trust). Картриджи получили шифрованные заголовки, привязанные к аппаратным ключам, известным только Nintendo. ROM’ы шифровались с использованием AES, а сами картриджи использовали нестандартный протокол чтения.
Впервые в истории портативок у Nintendo появилась регулярно обновляемая прошивка, тесно интегрированная с eShop и онлайн-сервисами. Это позволяло оперативно закрывать уязвимости, блокировать неподписанные приложения и эксплойты. Любая попытка модификации, которая нарушала криптографическую целостность, приводила к немедленной блокировке загрузки. Защита выглядела надёжно, и она действительно держалась целых два года — рекорд по меркам Nintendo.
Стороннему наблюдателю могло показаться, что за эти два года ничего не происходило.
Но в реальности за это время случилось немало интересного. Например, в 2012 году сообщество собрало $2300 на декапинг чипа 3DS… и организатор просто исчез с деньгами. Периодически появлялись мелкие эксплойты, но ни один из них не давал реального контроля над системой. Всё казалось стабильным.
Но в конце 2013 года плотину прорвало.
На сцену вышел Gateway — первый флеш-картридж, который действительно сломал 3DS.
Gateway моментально стал хитом, ведь он действительно позволял запускать Nintendo 3DS игры.
Но с технической точки зрения — это был не совсем флеш-картридж. Он использовал кастомную прошивку, а сами картриджи (синий и красный) служили лишь для запуска эксплойта и проверки подлинности. Такая схема оказалась уязвимой — и очень скоро у Gateway появилось множество клонов.
Но всё стало ещё интереснее, когда на сцене появился Govanify, который… взломал компьютер другого разработчика (Ermilos) и украл билд прошивки. А потом добавил в неё шпионскую телеметрию, чтобы собирать данные с консолей пользователей.
После очистки от закладок этот билд стал известен как Palantine CFW — и уже не требовал картриджей вообще.
А в конце 2014 года подоспел и первый настоящий флеш-картридж для 3DS — Sky3DS.
Он действительно проходил проверку консоли как оригинальный картридж — без эксплойтов. Но именно это стало его слабостью: он не мог обходить региональные ограничения, не запускал homebrew, не давал гибкости. Sky3DS работал, но как обычный картридж — и в итоге проиграл кастомным прошивкам.
А настоящую победу хакерам принесла вовсе не железка — а уязвимость в одной строке загрузчика.
Nintendo допустили фатальную ошибку в загрузчике Boot9 — это часть неизменяемой памяти bootrom, встроенной прямо в чип консоли. Прошивкой её не обновить, и когда ошибка там — это уже навсегда. В 2017 году хакеры опубликовали эксплойт SigHax, который позволял запускать неподписанные прошивки, подделывая цифровые подписи так, будто они прошли проверку Nintendo. Консоль принимала их за легитимные — и открывала доступ ко всей системе. Уязвимость была в буквальном смысле прошита в кремний, и потому неустранима — Nintendo могли только наблюдать.
Но чтобы найти эту дыру, сообществу пришлось пройти долгий путь: скупать старые 3DS, извлекать заводские прошивки, анализировать парсер подписей и запускать брутфорс — с проверкой почти 80 триллионов вариантов, чтобы подобрать рабочую подделку подписи. Эта цифра как раз подчёркивает безумие задачи: даже при знании уязвимости, взлом требовал огромных вычислительных ресурсов и точного понимания структуры загрузчика. Всё ради того, чтобы обойти одну критическую строчку — и получить полный контроль над системой.
С этого момента Nintendo 3DS официально перешла в клуб полностью взломанных консолей. Не помогли ни патчи, ни прошивки, ни даже новая ревизия — New Nintendo 3DS.
А значит пора переходить к Nintendo Switch.
Nintendo Switch – те же грабли, но еще быстрее
Nintendo выстроили вокруг Switch сложнейшую систему защиты: аппаратная криптография, TrustZone, шифрование на каждом этапе, верификация компонентов, постоянные обновления и сетевой контроль. Всё выглядело как цифровая крепость, возведённая на века.
Но они забыли о главном: крепость бессмысленна, если парадный вход остался открытым.
Таким входом стал RCM — режим восстановления, встроенный в чип Nvidia Tegra X1. Это не была уязвимость сама по себе — это была легитимная сервисная функция, оставленная для отладки. Но внутри неё скрывался баг в bootrom — неизменяемой памяти, прошитой в кремний. Так появился Fusée Gelée: эксплойт, который запускался раньше всей системы безопасности. Один замкнутый контакт — и защита теряла смысл.
Сцена взорвалась. Появились Atmosphère, Hekate, кастомные загрузчики, эмуляторы, пиратские магазины и моды. Switch стал не просто взломан — он превратился в платформу для развития сцены, а не средство её сдерживания.
Nintendo попытались спасти ситуацию: в новых ревизиях они закрыли уязвимость. Но этого было недостаточно. RCM нельзя удалить из чипа без его полной переработки, а значит, обход защиты был лишь делом времени.
Представьте, что RCM — это закрытая комната внутри чипа. На старых ревизиях дверь в эту комнату вообще была приоткрыта. Достаточно было дотронуться до ручки (или замкнуть контакт скрепкой), чтобы спокойно зайти внутрь и делать что угодно.
Позже, осознав ошибку, Nintendo с Nvidia "заперли" эту дверь — надёжным цифровым замком. Но было поздно: рядом всё это время оставалось незапертое окно. Войти теперь стало сложнее, но не невозможно.
Всё, что требовалось — лестница, чтобы добраться до окна. И этой лестницей стал мод-чип: небольшое устройство, которое давало сцене те же возможности, только другим путём — через боковой доступ к памяти и перехват выполнения кода.
С появлением надёжных мод-чипов стало ясно: Switch окончательно перешёл в клуб полностью взломанных консолей.
И именно в этот момент, под конец жизненного цикла, появился первый полноценный флеш-картридж для Switch — Mig-Switch.
Как и в случае с Nintendo 3DS, это было не новое решение, а симуляция старого. Mig-Switch просто эмулировал оригинальный картридж — без обхода защиты, без бонусов, без гибкости. Учитывая, что мод-чип давал куда больше возможностей и стоил дешевле, Mig-Switch не получил распространения. Его единственным плюсом было то, что не нужно было ничего паять.
Гораздо интереснее другое: скорее всего, Mig-Switch появился благодаря утечке данных GigaLeak. Защита была слишком сложной, чтобы обойти её иначе.
Попытки вернуть эпоху флеш-картриджей выглядели как архаичный ритуал: дорогое устройство с меньшим функционалом — в эпоху, когда всё давно работает через софт.
Nintendo снова проиграли. Не потому, что не старались. А потому что сделали ставку не на то. Самая защищённая консоль оказалась самой быстро взломанной — и снова из-за одного незакрытого входа, встроенного в основу.
Эпилог
Друзья, мы с вами проследили весь путь взлома портативных консолей Nintendo — от флеш-картриджей до мод-чипов, от юридических лазеек до криптографических катастроф. И всё это сводится к четырём простым выводам, которые рисуют не самую радужную перспективу.
Во-первых, создать полноценный флеш-картридж без утечки закрытых данных сегодня невозможно. Стандарты защиты вышли на такой уровень, что даже простое копирование «железа» картриджа превратилось в задачу, требующую либо внутренней документации, либо масштабного взлома.
Во-вторых, если и есть шанс взлома — то он в железе. Мод-чипы не требуют чудес, только времени, паяльника и немного наглости. Они ломают систему до того, как та успевает сказать: «нет».
В-третьих, как и прежде, обратная совместимость остаётся слабым звеном. Хакеры отлично знают, что в старом коде легче всего найти забытый люк. Особенно если ты пытаешься запустить новую систему на наследии предыдущей.
В-четвёртых, ждать софт-взлом — это как ждать манну небесную. Да, такое случалось. Но почти всегда — из-за грубых, фундаментальных ошибок. Надеяться на это — не стратегия, а лотерея.
Nintendo строят стены всё выше, делают замки всё сложнее, но сообщество каждый раз находило способ проникнуть внутрь. Падёт ли стена – это вопрос времени.