
Энтузиасты реверс-инжиниринга получили доступ к прошивке старой версии MechaCon – одного из ключевых компонентов системы защиты PlayStation 2. Это не новый способ запуска игр, но важное событие для изучения архитектуры консоли и её эмуляции.
В сети появились сообщения о том, что «защита PS2 пала спустя 26 лет». Звучит эффектно, но если разобраться в деталях, всё немного сложнее.
Что такое защитный чип MechaCon
MechaCon (Mechanics Controller) – микроконтроллер PlayStation 2, связанный прежде всего с работой оптического привода. Но его задачи шире: MechaCon участвует в механизмах безопасности консоли, включая проверку дисков и криптографические операции.
Именно поэтому прошивка этого чипа интересна разработчикам эмуляторов и тем, кто занимается реверс-инжинирингом аппаратуры PS2.
MechaCon уже взламывали – но не этот
Важно различать поколения MechaCon. В более поздних моделях PS2 используется версия Dragon: она появилась начиная с серии SCPH-500xx и применяется в поздних Slim-моделях. Из неё прошивку научились извлекать ещё несколько лет назад – для этого существует инструмент MechaDump.
А вот в ранних PS2 стоял другой контроллер – SPC970, из которого прошивку прежде извлечь не удавалось.
Сначала пришлось вскрыть сам чип
Добраться до прошивки SPC970 оказалось непросто: энтузиастам пришлось физически вскрыть корпус микросхемы, получить изображения кремниевого кристалла и восстановить содержимое ROM по этим снимкам. Такой процесс называется decapping и применяется, когда программного способа снять содержимое чипа нет.
Но восстановление ROM по фотографиям было не конечной целью: анализ полученного кода помог найти уязвимость, позволяющую извлекать прошивку уже программным путём.
Прошивку теперь можно снять с работающей PS2
На основе найденной уязвимости создана утилита SPC970-MechaLIBerator – она позволяет извлекать ROM некоторых версий старого MechaCon прямо с реального железа. Важно: уязвимость даёт доступ к чтению прошивки, а не к обходу защиты диска – это два разных вопроса, о которых ниже.
Речь пока не обо всех ранних ревизиях: часть вариантов SPC970 ещё предстоит исследовать отдельно. Сам инструмент требует осторожности: он работает с внутренними данными MechaCon и NVRAM, и неправильное использование потенциально может привести к проблемам с консолью.
Так защиту PS2 всё-таки взломали?
Нет. Речь не про обход защиты диска, а про извлечение прошивки чипа – раньше её просто не могли прочитать, теперь могут. Для обычного владельца PS2 ничего не изменилось: запуск игр через Open PS2 Loader (OPL) и другие эксплойты был возможен и раньше, и новый дамп сам по себе не открывает никакого нового способа запускать игры.
Достижение в другом: теперь можно изучать реальный код старого MechaCon, а не только наблюдать за его поведением снаружи.
Зачем это нужно эмуляторам
Для точной эмуляции недостаточно воспроизвести процессор, графику и звук. Некоторые игры и системные функции завязаны на менее заметные компоненты железа и рассчитывают на конкретное поведение системы безопасности.
Имея оригинальную прошивку SPC970, разработчики смогут разобрать её алгоритмы и постепенно воспроизвести это поведение в эмуляторах – это особенно важно для проектов, которые делают ставку на максимально точную эмуляцию оригинального железа. Например, в PCSX2-Reliquary уже занимаются низкоуровневым моделированием функций MechaCon, MagicGate и других механизмов защиты PS2.
При чём здесь MagicGate
MagicGate – технология Sony для защиты данных, использовавшаяся в экосистеме PlayStation, в том числе при работе с картами памяти. MechaCon – часть этой цепочки безопасности, поэтому доступ к настоящей прошивке помогает лучше понять, как эти процессы устроены на оригинальном железе.
Это не значит, что после дампа все игры разом заработают в эмуляторах лучше: практическая польза зависит от того, какие особенности поведения MechaCon удастся обнаружить и воспроизвести.
Интересно не только для PS2
SPC970 использовался не только в домашних PlayStation 2 – компоненты семейства MechaCon применялись и в некоторых аркадных системах на базе PS2, включая Namco System 246/256 и Konami Python. Так что новые данные потенциально пригодятся и разработчикам эмуляторов аркадного оборудования – особенно если конкретная система использует функции MechaCon при загрузке или проверке защищённых данных.
Может ли это привести к новому взлому PS2?
Теоретически – да, но пока это только гипотетическая перспектива, а не факт. Имея доступ к коду прошивки, энтузиасты смогут искать в нём уязвимости, которые уже можно будет использовать для обхода защиты – по аналогии с MechaPwn, который работает с более поздним Dragon MechaCon.
Но готового аналога MechaPwn для старых моделей PS2 в рамках этого исследования не появилось – сам по себе дамп прошивки защиту не взламывает, он лишь открывает возможность искать способ её взломать.
Почему это важно спустя 26 лет
PlayStation 2 вышла в 2000 году, и за прошедшие десятилетия энтузиасты изучили почти все основные компоненты консоли – кроме нескольких специализированных микроконтроллеров вроде старого SPC970. Теперь появилась возможность разбирать и его на уровне оригинального кода, что даёт более полную картину внутреннего устройства PS2 и помогает сохранить особенности оригинального железа для будущих эмуляторов.
Заголовки вроде «защита PS2 пала спустя 26 лет» звучат эффектно, но не совсем точны: правильнее сказать, что энтузиасты наконец получили доступ к прошивке одного из последних малоизученных компонентов консоли. Для игрока это пока ничего не меняет, а для разработчиков эмуляторов – важный недостающий кусок картины.
Что из этого получится дальше – покажет дальнейшее исследование SPC970.