Pandora (unbricker/downgrader) для PSP-200X TA-088v3
Сервисный комплект для PSP-200X
(включая TA-088v3)
{ НИЧЕГО НЕ ПРОДАЁМ / NO SALES HERE }
После удачного взлома и последующей длительной заморозки в скрытом разделе темы: "Размышления о возможностях взлома ТА88v3"
было решено, что настало время её разморозить и отдать "в народ".
Дабы не нарушать хронологию "размышлений по взлому", инструкция выложена в шапке отдельной темой.
Первое видео от Yoti
Новое видео подтверждение работы сервисной карты JigKick на PSP-2006 TA-088v3!
Скачиваем "MSID Dumper", вставляем карту памяти в PSP и запускаем программу. Видим на экране номер "Серийный номер" и MSProID вашей карточки и записываем, хотя дамп области MSID всё равно сохранится в корне карты памяти и вы можете его потом посмотреть хекс-редактором. Это вам может пригодиться, когда вы будете искать данные MSID в дампе микросхемы.
Тонким скальпелем располовиниваем корпус карты памяти пополам. Не поностью, а только заднюю часть и чуть больше половины по краям.
Затем пинцетом достаём из корпуса плату, она не приклеена, а просто лежит в пазах.
Из платы выпаиваем микросхему памяти (nand), которая самая большая и имеет 48 ножек. Рядом находится небольшой квадратный контроллёр памяти, его не трогаем.
Нужно учитывать, что с виду карты одинаковые, но внутри могут быть разные нанды, например Hynix или Samsung. Поэтому под вашу микросхему уже потом ищется программатор. Смотрим список поддерживаемых микросхем: http://www.soft-center.ru/reader/NAND_List.php.
Hynix, насколько я знаю, практически все имеют одинаковый стандарт выводов по даташиту среди TSOP-48, поэтому если буквы или цифры немного отличаются от списка поддерживаемых моделей, то это вряд ли имеет значение.
Микросхема вставляется в панельку программатора очень просто. Панелька имеет конструкцию прищепки, нажимаем сверху, контакты отходят, ставится микросхема и отпускаем, контакты прижимаются к ножкам микросхемы.
Далее, программатор подключается к компьютеру, с заранее установленной программой и драйверами, поставляемыми с программатором. В программе указывается диапазон страниц, которые нужно сдампить и дампится часть памяти.
Сразу дампить 2 Гб всей памяти очень долго, да и не нужно. Сразу скажу, что нужная нам служебная область, где прописан MSID карты находится либо в самом начале, либо в самом конце микросхемы, обычно в 1-ом банке и не далее 3-4 блоков. Рекомендую сдампить сразу 4 блока - это 256 страниц или 0x100 в шестнадцатеричном виде, что и нужно указывать в диапазоне.
Открываем файл дампа в хекс-редакторе. Вводим в поиск, что нужно искать, а именно кусок хекс-кода MSID: 4D535053, что в буквенном выражении означает первые четыре аббревиатуры MSPS(NY0/DK0/XX0), то есть, это часть 16-значного ключа MSID, которая у всех карт памяти MS PRO DUO одинаковая.
Скриншот MSID
Это логическая область с MSID, снятая программой MSID Dumper, сохраняющаяся в корне карты памяти в файл. По структуре она не имеет ничего общего с настоящей областью MSID, которая находится в физическом чипе памяти.
Требуется только для определения номера MSID для поиска в сыром RAW-дампе ципа карты памяти.
Не путать с оригинальным RAW-дампом(снятым программатором)!
Так выглядет оригинальная сервисная область MSID, сдампленная программатором.
Обратите внимание, что она выглядет совсем иначе, нежели на первом рисунке, снятом программой для PSP - "MSID Dumper".
В стартовом секторе содержится серийный номер и MSID.
Далее идут 3 пустых сектора, полностью заполненных FFFFFFFF.
Затем идёт сектор, где указывается фрмат и размер карты памяти.
Другие консоли: Все PSP, все PSV, SCPH-1002, SCPH-102, SCPH-77008, CECH-4208C, SCPH-1000R
Регистрация: 19.03.2008
Адрес: Россия
Сообщений: 5,763
Вы сказали Спасибо: 823
Поблагодарили 3,894 раз(а) в 2,043 сообщениях
Сила репутации: 1
Репутация: 3894 
(репутация неоспорима)
ErikPshat,
зато нет проблем с параметрами mkdir. =) Я посмотрю в ближайшее время, что там как.
jekakmv,
все и так знают, что оно работает. Не нужно тему в хакинге превращать во флудилку.
---
Короче, оно не собирается под Винду всеми моими тулзами. При этом, на Линуксе и для Линукса - влёт. Всё упирается в проблемы с libkirk, буду проверять другие версии вместо предварительно собранной. Однако, есть подозрение, что за давностью лет другие варианты просто не имеют всех необходимых функций.
Короче, оно не собирается под Винду всеми моими тулзами. При этом, на Линуксе и для Линукса - влёт. Всё упирается в проблемы с libkirk, буду проверять другие версии вместо предварительно собранной. Однако, есть подозрение, что за давностью лет другие варианты просто не имеют всех необходимых функций.
Ага, я под виндой испробовал всякие методы, разные компиляторы. Я видел твою переписку в твиттере. Там по-ходу надо переписывать код с этим mkdir. Он в последнее время модифицировался. В инете есть много решений проблем, но у меня просто так не получилось, видимо плохо старался.
В общем получилось только после установки Ubuntu на Windows 10. Благо в винде последнее время появилась такая возможность. То есть, на Windows 10 имеется по умолчанию возможность поставить Linux и оно работает прямо из коробки. Удалось скомпилировать decrypt_sp. Правда неожиданно странный он получился, не привычно в формате exe, а просто какой-то ELF-файл без расширения. Я что-то даже на Линуксах такого не видел, видимо мало опыта оказалось.
В общем комплект файлов ENC удачно декриптовался:
Вот процесс декриптовки из консоли Ubuntu
erikpshat@DanaPshat:/mnt/c/Users/danap/Desktop/decrypt_sp$ ./decrypt_sp -d
Decrypt mode.
opening dir
Decrypting prx/clockgen.prx.enc to dec/clockgen.prx.
Decrypting prx/ctrl.prx.enc to dec/ctrl.prx.
Decrypting prx/display.prx.enc to dec/display.prx.
Decrypting prx/dmacman.prx.enc to dec/dmacman.prx.
Decrypting prx/dmacplus.prx.enc to dec/dmacplus.prx.
Decrypting prx/emc_ddr.prx.enc to dec/emc_ddr.prx.
Decrypting prx/emc_sm.prx.enc to dec/emc_sm.prx.
Decrypting prx/exceptionman.prx.enc to dec/exceptionman.prx.
Decrypting prx/fatms.prx.enc to dec/fatms.prx.
Decrypting prx/ge.prx.enc to dec/ge.prx.
Decrypting prx/gpio.prx.enc to dec/gpio.prx.
Decrypting prx/hibari.prx.enc to dec/hibari.prx.
Decrypting prx/i2c.prx.enc to dec/i2c.prx.
Decrypting prx/idstorage.prx.enc to dec/idstorage.prx.
Decrypting prx/init.prx.enc to dec/init.prx.
Decrypting prx/interruptman.prx.enc to dec/interruptman.prx.
Decrypting prx/iofilemgr.prx.enc to dec/iofilemgr.prx.
Decrypting prx/jigkick.prx.enc to dec/jigkick.prx.
Decrypting prx/jigkick_bridge.prx.enc to dec/jigkick_bridge.prx.
Decrypting prx/lcdc.prx.enc to dec/lcdc.prx.
Decrypting prx/led.prx.enc to dec/led.prx.
Decrypting prx/loadcorei.prx.enc to dec/loadcorei.prx.
Decrypting prx/mcflg.prx.enc to dec/mcflg.prx.
Decrypting prx/mesg_led.prx.enc to dec/mesg_led.prx.
Decrypting prx/modulemgri.prx.enc to dec/modulemgri.prx.
Decrypting prx/msstor.prx.enc to dec/msstor.prx.
Decrypting prx/power.prx.enc to dec/power.prx.
Decrypting prx/pwm.prx.enc to dec/pwm.prx.
Decrypting prx/rtc.prx.enc to dec/rtc.prx.
Decrypting prx/samantha.prx.enc to dec/samantha.prx.
Decrypting prx/scons.prx.enc to dec/scons.prx.
Decrypting prx/syscon.prx.enc to dec/syscon.prx.
Decrypting prx/sysmem.prx.enc to dec/sysmem.prx.
Decrypting prx/sysreg.prx.enc to dec/sysreg.prx.
Decrypting prx/systimer.prx.enc to dec/systimer.prx.
Decrypting prx/threadman.prx.enc to dec/threadman.prx.
Decrypting prx/uart4.prx.enc to dec/uart4.prx.
Decrypting prx/usersystemlib.prx.enc to dec/usersystemlib.prx.
Done!
Вот процесс шифрования:
erikpshat@DanaPshat:/mnt/c/Users/danap/Desktop/decrypt_sp$ ./decrypt_sp -e
Encrypt mode.
opening dir
Encrypting dec/clockgen.prx to enc/clockgen.prx.enc.
Encrypting dec/ctrl.prx to enc/ctrl.prx.enc.
Encrypting dec/display.prx to enc/display.prx.enc.
Encrypting dec/dmacman.prx to enc/dmacman.prx.enc.
Encrypting dec/dmacplus.prx to enc/dmacplus.prx.enc.
Encrypting dec/emc_ddr.prx to enc/emc_ddr.prx.enc.
Encrypting dec/emc_sm.prx to enc/emc_sm.prx.enc.
Encrypting dec/exceptionman.prx to enc/exceptionman.prx.enc.
Encrypting dec/fatms.prx to enc/fatms.prx.enc.
Encrypting dec/ge.prx to enc/ge.prx.enc.
Encrypting dec/gpio.prx to enc/gpio.prx.enc.
Encrypting dec/hibari.prx to enc/hibari.prx.enc.
Encrypting dec/i2c.prx to enc/i2c.prx.enc.
Encrypting dec/idstorage.prx to enc/idstorage.prx.enc.
Encrypting dec/init.prx to enc/init.prx.enc.
Encrypting dec/interruptman.prx to enc/interruptman.prx.enc.
Encrypting dec/iofilemgr.prx to enc/iofilemgr.prx.enc.
Encrypting dec/jigkick.prx to enc/jigkick.prx.enc.
Encrypting dec/jigkick_bridge.prx to enc/jigkick_bridge.prx.enc.
Encrypting dec/lcdc.prx to enc/lcdc.prx.enc.
Encrypting dec/led.prx to enc/led.prx.enc.
Encrypting dec/loadcorei.prx to enc/loadcorei.prx.enc.
Encrypting dec/mcflg.prx to enc/mcflg.prx.enc.
Encrypting dec/mesg_led.prx to enc/mesg_led.prx.enc.
Encrypting dec/modulemgri.prx to enc/modulemgri.prx.enc.
Encrypting dec/msstor.prx to enc/msstor.prx.enc.
Encrypting dec/power.prx to enc/power.prx.enc.
Encrypting dec/pwm.prx to enc/pwm.prx.enc.
Encrypting dec/rtc.prx to enc/rtc.prx.enc.
Encrypting dec/samantha.prx to enc/samantha.prx.enc.
Encrypting dec/scons.prx to enc/scons.prx.enc.
Encrypting dec/syscon.prx to enc/syscon.prx.enc.
Encrypting dec/sysmem.prx to enc/sysmem.prx.enc.
Encrypting dec/sysreg.prx to enc/sysreg.prx.enc.
Encrypting dec/systimer.prx to enc/systimer.prx.enc.
Encrypting dec/threadman.prx to enc/threadman.prx.enc.
Encrypting dec/uart4.prx to enc/uart4.prx.enc.
Encrypting dec/usersystemlib.prx to enc/usersystemlib.prx.enc.
Done!
В принципе на Винде это совсем не сложно, как появится свободное время, могу написать ФАК по этому поводу...
Естественно, для декриптовки использовал родной MSID от нашего комплекта.
У меня есть фирменная карточка памяти от SONY, жалко только нету консоли PSP-2000, так что проверить пока не на чем
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Ага, я под виндой испробовал всякие методы, разные компиляторы. Я видел твою переписку в твиттере. Там по-ходу надо переписывать код с этим mkdir. Он в последнее время модифицировался. В инете есть много решений проблем, но у меня просто так не получилось, видимо плохо старался.
В общем получилось только после установки Ubuntu на Windows 10. Благо в винде последнее время появилась такая возможность. То есть, на Windows 10 имеется по умолчанию возможность поставить Linux и оно работает прямо из коробки. Удалось скомпилировать decrypt_sp. Правда неожиданно странный он получился, не привычно в формате exe, а просто какой-то ELF-файл без расширения. Я что-то даже на Линуксах такого не видел, видимо мало опыта оказалось.
В общем комплект файлов ENC удачно декриптовался:
Вот процесс декриптовки из консоли Ubuntu
erikpshat@DanaPshat:/mnt/c/Users/danap/Desktop/decrypt_sp$ ./decrypt_sp -d
Decrypt mode.
opening dir
Decrypting prx/clockgen.prx.enc to dec/clockgen.prx.
Decrypting prx/ctrl.prx.enc to dec/ctrl.prx.
Decrypting prx/display.prx.enc to dec/display.prx.
Decrypting prx/dmacman.prx.enc to dec/dmacman.prx.
Decrypting prx/dmacplus.prx.enc to dec/dmacplus.prx.
Decrypting prx/emc_ddr.prx.enc to dec/emc_ddr.prx.
Decrypting prx/emc_sm.prx.enc to dec/emc_sm.prx.
Decrypting prx/exceptionman.prx.enc to dec/exceptionman.prx.
Decrypting prx/fatms.prx.enc to dec/fatms.prx.
Decrypting prx/ge.prx.enc to dec/ge.prx.
Decrypting prx/gpio.prx.enc to dec/gpio.prx.
Decrypting prx/hibari.prx.enc to dec/hibari.prx.
Decrypting prx/i2c.prx.enc to dec/i2c.prx.
Decrypting prx/idstorage.prx.enc to dec/idstorage.prx.
Decrypting prx/init.prx.enc to dec/init.prx.
Decrypting prx/interruptman.prx.enc to dec/interruptman.prx.
Decrypting prx/iofilemgr.prx.enc to dec/iofilemgr.prx.
Decrypting prx/jigkick.prx.enc to dec/jigkick.prx.
Decrypting prx/jigkick_bridge.prx.enc to dec/jigkick_bridge.prx.
Decrypting prx/lcdc.prx.enc to dec/lcdc.prx.
Decrypting prx/led.prx.enc to dec/led.prx.
Decrypting prx/loadcorei.prx.enc to dec/loadcorei.prx.
Decrypting prx/mcflg.prx.enc to dec/mcflg.prx.
Decrypting prx/mesg_led.prx.enc to dec/mesg_led.prx.
Decrypting prx/modulemgri.prx.enc to dec/modulemgri.prx.
Decrypting prx/msstor.prx.enc to dec/msstor.prx.
Decrypting prx/power.prx.enc to dec/power.prx.
Decrypting prx/pwm.prx.enc to dec/pwm.prx.
Decrypting prx/rtc.prx.enc to dec/rtc.prx.
Decrypting prx/samantha.prx.enc to dec/samantha.prx.
Decrypting prx/scons.prx.enc to dec/scons.prx.
Decrypting prx/syscon.prx.enc to dec/syscon.prx.
Decrypting prx/sysmem.prx.enc to dec/sysmem.prx.
Decrypting prx/sysreg.prx.enc to dec/sysreg.prx.
Decrypting prx/systimer.prx.enc to dec/systimer.prx.
Decrypting prx/threadman.prx.enc to dec/threadman.prx.
Decrypting prx/uart4.prx.enc to dec/uart4.prx.
Decrypting prx/usersystemlib.prx.enc to dec/usersystemlib.prx.
Done!
Вот процесс шифрования:
erikpshat@DanaPshat:/mnt/c/Users/danap/Desktop/decrypt_sp$ ./decrypt_sp -e
Encrypt mode.
opening dir
Encrypting dec/clockgen.prx to enc/clockgen.prx.enc.
Encrypting dec/ctrl.prx to enc/ctrl.prx.enc.
Encrypting dec/display.prx to enc/display.prx.enc.
Encrypting dec/dmacman.prx to enc/dmacman.prx.enc.
Encrypting dec/dmacplus.prx to enc/dmacplus.prx.enc.
Encrypting dec/emc_ddr.prx to enc/emc_ddr.prx.enc.
Encrypting dec/emc_sm.prx to enc/emc_sm.prx.enc.
Encrypting dec/exceptionman.prx to enc/exceptionman.prx.enc.
Encrypting dec/fatms.prx to enc/fatms.prx.enc.
Encrypting dec/ge.prx to enc/ge.prx.enc.
Encrypting dec/gpio.prx to enc/gpio.prx.enc.
Encrypting dec/hibari.prx to enc/hibari.prx.enc.
Encrypting dec/i2c.prx to enc/i2c.prx.enc.
Encrypting dec/idstorage.prx to enc/idstorage.prx.enc.
Encrypting dec/init.prx to enc/init.prx.enc.
Encrypting dec/interruptman.prx to enc/interruptman.prx.enc.
Encrypting dec/iofilemgr.prx to enc/iofilemgr.prx.enc.
Encrypting dec/jigkick.prx to enc/jigkick.prx.enc.
Encrypting dec/jigkick_bridge.prx to enc/jigkick_bridge.prx.enc.
Encrypting dec/lcdc.prx to enc/lcdc.prx.enc.
Encrypting dec/led.prx to enc/led.prx.enc.
Encrypting dec/loadcorei.prx to enc/loadcorei.prx.enc.
Encrypting dec/mcflg.prx to enc/mcflg.prx.enc.
Encrypting dec/mesg_led.prx to enc/mesg_led.prx.enc.
Encrypting dec/modulemgri.prx to enc/modulemgri.prx.enc.
Encrypting dec/msstor.prx to enc/msstor.prx.enc.
Encrypting dec/power.prx to enc/power.prx.enc.
Encrypting dec/pwm.prx to enc/pwm.prx.enc.
Encrypting dec/rtc.prx to enc/rtc.prx.enc.
Encrypting dec/samantha.prx to enc/samantha.prx.enc.
Encrypting dec/scons.prx to enc/scons.prx.enc.
Encrypting dec/syscon.prx to enc/syscon.prx.enc.
Encrypting dec/sysmem.prx to enc/sysmem.prx.enc.
Encrypting dec/sysreg.prx to enc/sysreg.prx.enc.
Encrypting dec/systimer.prx to enc/systimer.prx.enc.
Encrypting dec/threadman.prx to enc/threadman.prx.enc.
Encrypting dec/uart4.prx to enc/uart4.prx.enc.
Encrypting dec/usersystemlib.prx to enc/usersystemlib.prx.enc.
Done!
В принципе на Винде это совсем не сложно, как появится свободное время, могу написать ФАК по этому поводу...
Естественно, для декриптовки использовал родной MSID от нашего комплекта.
У меня есть фирменная карточка памяти от SONY, жалко только нету консоли PSP-2000, так что проверить пока не на чем
I have a 2004 psp model, what do you need to test? Could you compile it to work on windows with an .exe?
Only I have not checked yet, most likely you need to banner.bin enter a line from the file header *.prx.enc -> SCE-5281 for_CS. instead of this SCE-6442 for_CS.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 14.05.2020 в 10:36.
Другие консоли: Все PSP, все PSV, SCPH-1002, SCPH-102, SCPH-77008, CECH-4208C, SCPH-1000R
Регистрация: 19.03.2008
Адрес: Россия
Сообщений: 5,763
Вы сказали Спасибо: 823
Поблагодарили 3,894 раз(а) в 2,043 сообщениях
Сила репутации: 1
Репутация: 3894 
(репутация неоспорима)
Сообщение от ErikPshat
Ага, я под виндой испробовал всякие методы, разные компиляторы. Я видел твою переписку в твиттере. Там по-ходу надо переписывать код с этим mkdir. Он в последнее время модифицировался. В инете есть много решений проблем, но у меня просто так не получилось, видимо плохо старался.
Да я собрал уже. Криптованные и перекриптованные файлы только не совпадают что-то, при использовании одинакового msid+banner.
Криптованные и перекриптованные файлы только не совпадают что-то, при использовании одинакового msid+banner.
Ага, у меня то же самое. Думаю, как обычно - эти 0x80 байт какой-то ключ шифрования, а остальные данные в шапке соответственно рандомная соль и прочие соответственно генерируемые ключи.
А как тебе моя инструкция понравилась? По-моему там всё правильно, хотя проверить пока не на чем
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Да я собрал уже. Криптованные и перекриптованные файлы только не совпадают что-то, при использовании одинакового msid+banner.
Что прикольно, с этим комплектом я прошил свою фатку PSP-1008 на 5.02. Что-то раньше сколько прошивал и всегда считал, что этот комплект работает только на 200X. Не знаю, с чего мы так решили.
Короче, вот заснял видео по прошивке моей FAT:
Pandora for PSP-100X/200X including TA-088v3 DATE CODE 8С
Инструкцию ещё дополнил подробным описанием создания волшебной карты памяти без специального софта практически, только средствами консоли Windows 10: https://www.pspx.ru/forum/showthread.php?t=110198
А ещё прикол в том, что banner.bin выступает как соль, так что я его заполнил для понтов своими копирайтами и зашифровал им файлы офф-пандоры, и она работает прекрасно, на видео всё отчётливо видно