Сверло, скрепка и пинцет. Как прошивали консоли до того, как это стали делать нейросети

Мы живем в абсолютно безумное время. Вдумайтесь: продукт одной корпорации взламывают с помощью инструментов другой корпорации, и последняя на этом еще и зарабатывает, так как токены на дороге не валяются.
Да, частично я затрагивал эту историю в другом материале, но с того момента прошло не так много времени, но довольно много событий. Во-первых, с помощью нейросетей начали ломать Switch 2, до приемлемого результата там далеко, но вайбкодеры копают активно и успешно. Во-вторых, благодаря этому всему игры от Switch 2 с помощью ИИ стали рекомпилировать для запуска на ПК, а кое-где уже собрали несколько рабочих форков эмуляторов. И снова с помощью нейросетей.
Всё это меня натолкнуло на воспоминания, когда отец принес домой диск GTA Liberty Stories на PSP со словами «это, сынок, пиратский клад», и тогда я думал, что вот игра крутая, наверное, поэтому клад, но предназначение у него было совсем другое. Да, сегодня мы вспомним, как ломали консоли до вайбкодинга токенов на полторы тысячи долларов.
❯ Магнит, пинцет, скрепка и все вот это вот варварство

Но начнем с чего-то более, кхм, механического. Когда мне лично сказали, что для прошивки Nintendo Switch мне надо скрепка, я подумал, что меня толсто троллят и хотят, чтобы я убил контакты для соединения контроллера с консолью. Я-то их, конечно, в итоге сжег, потому что по своей тупости использовал вместо скрепки фольгу, но вопрос не в этом.
Оказывается, некоторое время спецификации процессора Tegra, что стоял в Switch 1, лежали в открытом доступе, история умалчивает как, но энтузиасты нашли там способ перевести консоль в сервисный режим восстановления и оттуда проникнуть в закрытое ядро прошивки для сами понимаете чего. Как выяснилось, делалось это простым методом: нужно было замкнуть 10-й контакт на площадке соединения с контроллером Joy-Con.

Это уводило консоль в RCM, откуда уже производились манипуляции. Важный факт: чтобы консоль поняла, что нужно загрузиться в RCM, требовалось зажать кнопку Vol+ и кнопку включения и дать сигнал на кнопку. Но кнопка Home на джойконе обрабатывалась программно, а не аппаратно. Зато в документации нашлась лазейка: замыкание 10-го пина на рельсе правого Joy-Con дублировало аппаратную кнопку Home для сервисных центров Nintendo. Именно его и замыкали скрепкой.
А дальше срабатывала фатальная ошибка инженеров Nvidia (получившая название Fusée Gelée, или «замерзшая ракета»): при передаче данных через USB-кабель процессор не проверял размер запрашиваемого пакета. Это позволяло вызвать переполнение буфера и запустить любой сторонний код еще до того, как консоль успевала проверить цифровую подпись системы.
В итоге защита многомиллиардной корпорации пала перед куском проволоки, а уязвимость была зашита прямо в кремний процессора — исправить её удалось только спустя два года с выпуском обновленной ревизии приставок. Но там уже всё решалось с помощью подпайки чипа к процессору. Структура-то такая же.

Что самое смешное в этой ситуации — Nintendo не первый раз ломается об бытовые предметы из косметички. У Wii, как вы помните, имелась обратная совместимость с GameCube, одной из фишек которой был переход в режим пониженной производительности путем отключения некоторых блоков оперативной памяти… которые перед выводом из работы не очищались, и там лежали файлы прошивки самой Wii. Пиратам оставалось только найти способ эти блоки активировать в то время, когда работала ОС с GameCube (а там и пониженный уровень защиты, чтобы всё работало корректно), да вытащить данные из неактивных участков оперативки.
Решением стал пинцет. Если при запущенной игре от GameCube на Wii замкнуть определенные дорожки на материнской плате, то можно активировать те самые блоки оперативки и после этого спокойно вытащить оттуда ключи и все файлы прошивки. Чем, собственно, и пользовались для взлома, пока не нашли способ получше и скучнее.

Казалось бы, после пинцета должны были такие возможности исключить, но нет, до Switch был еще один прецедент использования случайных предметов для взлома. В данном случае речь о не самом популярном способе взлома Nintendo 3DS.

Там в целом была целая чехарда из способов пиратства: от платных картриджей, которые ломали систему, если видели нелицензионные копии самих себя (ломали наглухо, консоль от такого умирала), до взлома через конкретную игру, которую еще попробуй найди, но самый интересный способ вытащить ключи и ядро прошивки был такой: у портативки была лазейка для разработчиков, она активировалась при одновременном нажатии кнопок Home+Select+Start, но с нюансом: крышка должна быть закрытой, и на ритейл-версии консоли это в целом невозможно.
Если не заставить консоль думать, что крышка закрыта. Проверка состояния верхней крышки находится под кнопкой В на корпусе, и вот если туда положить магнит (делать это я не рекомендую, ибо сенсор со временем начнет ловить ложные закрытия, сам проверял), то он подумает, что всё, 3DS закрыта, а значит, можно увести в тот самый глубокий режим разработчика с полным доступом к ядру прошивки.
❯ Святой диск всех владельцев PSP

А что там у Sony? С Марио всё понятно — потрошим косметичку и ящик с инструментами, но ведь и консоли от конкурента долгое время ломались пиратами об колено, так ведь? Так-то да, но по большому счёту там история софтварная за парой… очень интересных исключений.
Начнем, пожалуй, с PS1. Мы все как будто привыкли, что там история про мод-чип, который обманывал проверку лицензии и всё такое, но вообще-то там был еще один метод, который открыли всего три года назад. Одна из последних игр платформы (а еще одна из первых, что придумала классическую раскадровку для шутеров на консолях) это проект по мотивам фильма «Чужой 4: Воскрешение» — в общем-то не самый плохой хоррор-шутер своего времени. Там была система паролей, которая позволяла накрутить всё: оружие, здоровье и вот это вот всё.
Только был один пароль, который никто так и не нашел, его раскрыл сам разработчик из Argonaut Games Мартин Пайпер. Если ввести комбинацию кнопок «Влево, Вверх, Вправо, Вниз, Вправо, Вверх, Влево, Квадрат, Треугольник, Квадрат, Треугольник, L1», то игра издаст звук успешного ввода кода, но на экране ничего не произойдет. Потому что это чит, это сервисный код, который превращает диск с игрой в своеобразный загрузочный диск, который отключал чип проверки лицензии.

Если после ввода открыть крышку консоли, не выключая ее, и поставить любой другой диск с игрой, она запустится как ни в чем не бывало. Сам Мартин говорил, что протащил этот код в разработку в обход и Sony, и своего начальства, так как был уверен, что игра разрастется на два диска и в таком случае ей нужен был подобный инструмент отладки.
История PSP же знает как минимум два случая, когда для взлома использовались лицензионные игры. Да, не одной GTA едины.

Способ с Medal of Honor: Heroes не самый популярный, но у него забавная суть. Для того чтобы перегрузить буфер памяти консоли (делалось это редактированием сохранения на ПК, требовалось поменять имя на гигантский список символов), надо было запустить игру с уже подкинутым сейвом и умереть.
При смерти игра показывала имя игрока (и больше нигде она этого не делала), а если оно было больше, чем ограничение по символам, буфер памяти перегружался и утаскивал консоль в состояние, из-под которого можно было пролезть в прошивку.

Но самый же известный способ был с определенной версией игры GTA: Liberty City Stories, у которой была возможность также влезть в файл сохранения и модифицировать его так, что при загрузке игра вместо ассетов прогружала эксплоит для прошивки PSP.
И да, это во времена, когда патчем игры такое закрыть было нельзя, и Rockstar отзывала целые партии дисков, чтобы прикрыть лазейку.
❯ Нейросети? Хех, сверло и много терпения

Но всё это меркнет перед, возможно, самым безумным и опасным трюком для взлома одной из популярнейших консолей поколения. И вот опять же — тому, как Microsoft воевала с пиратами в эпоху Xbox 360, надо книгу посвящать по-хорошему.
Примечательная история еще тем, что в отличие от Sony американцы пошли по тупиковой ветви развития HD-DVD дисков вместо Blu-Ray, которые значительно сложнее перезаписывались в те годы, что разделило сцену взлома на два направления: софтвар с образами дисков в цифре и хардвар с прошивкой привода и болванками за 100 рублей из магазина. И если на первом фронте бороться было просто, то с железом у Microsoft была куча проблем.

В течение всего жизненного цикла постоянно перезаключались контракты с производителями, переписывались ключи, вводилась физическая система защиты от перезаписи… И вот последнее привело к появлению Kamikaze Hack.
Суть в том, что никто очень долго не понимал, как обойти блок перезаписи данных, софтверно он не поддавался, а мод-чипы ломали об него зубы. Но в какой-то момент на сцену вышел, по некоторым данным, наш с вами соотечественник под ником Geremia и предложил всем тест на смелость и прямые руки. Дело в том, что он смог найти дорожку (а если точнее, небольшой провод), которая отвечает за защиту от перезаписи, она находилась под крышкой процессора (которую, говорят, пришлось растворить кислотой) в приводе консоли. Оставалось найти способ ее аккуратно перерезать, и защита снималась.

Решение нашлось кардинальное — сверло по металлу или для печатных плат диаметром 0,8 мм. Работа ювелирная, ошибка в миллиметр убивала процессор наглухо, а делать всё надо было практически вслепую. Метод оказался рабочим, при успешном выполнении операции привод не умирал, но защита от перезаписи падала и давала доступ к привычной прошивке. Позже для упрощения процесса даже продавали трафареты со специальными инструментами, но сам первый хак — это настоящее безумие: до Geremia никто и никогда не сверлил консоль ради бесплатных игр.
А в наше время все рукоплещут нейросетям и вайбкод портам игр после таких вот подвигов, да. Хорошей недели!
Может быть интересно:

Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram‑канале ↩
KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.