Прошивка jtag для xbox 360 что это
JTAG Hack (установка Freeboot 13416)
Freeboot, XBReboot — Что это такое? Многие видели в интернете надписи — «Игры для JTAG», «Аркады для JTAG» и прочие загадочные слова. Сейчас я постараюсь рассказать о этой вещи и показать все преимущества и недостатки полностью взломанного Xbox 360.
Предисловие. Возможности.
JTAG Hack позволяет установить на приставку различные неподписанные приложения, это добавляет кучу возможностей. Самое главное — запуск игр без диска!
Также, новые версии Freeboot дают возможность поставить на приставку жесткий диск любого размера и фирмы.
Любые DLC и аркады можно разблокировать и они будут работать на полную на вашей приставке (и не важно, кем были куплены)
Можно установить кастомный дашборд, это изменит интерфейс. В нем также будет FTP сервер и файл — менеджер.
Можно запускать любые программы, которые только есть на Xbox 360.
Минусы:
НЕЛЬЗЯ играть по LIVE!
Довольно сложно обновлять систему.
1. Предыстория.
В далёком 2006 году, хакер нашел уязвимость в приставке и через игру King Kong сумел запустить неподписанный код, получив полный доступ к приставке. (подробнее на beta.ivc.no ) Для особо увлеченных хакеров, был выпущен XeLL (Xenon Linux Loader)
Microsoft, конечно же, быстро прикрыла уязвимость в новой версии Dashboard (внутренняя система Xbox 360). Затем многие месяцы данную защиту обходили, понижали дашборд и запускали Homebrew (неподписанные самодельные программы). В итоге, Майкрософт включили защиту — при обновлении дашборда, делалась отметка в процессоре, что делало невозможным Downgrade (понижение версии ПО системы). Казалось бы, все, надежды на дальнейшее развитие уже нет. Но летом 2009 года, хакеры с портала free60.org объявили о создании нового хака, базирующемся на эксплоите в SMC коде. При запуске приставки, хак срабатывал и запускал (посредством JTAG интерфейса) всё тот же XeLL. Увы, Microsoft прознали про это еще весной, в результате чего, программы процессоров на приставках позже июня 2009 года не поддавались хаку. Кроме того, было выпущено новое обновление Dashboard 8 серии, обновляющее загрузчик приставки, что также блокировало хак. В итоге, еще задолго до появления Freeboot, количество консолей, поддающихся хаку, стало убывать. Самым большим ударом по «хакабельности» приставок стал выпуск Call of Duty: Modern Warfare 2, несшей с собой новое обновление версии 8498.
В середине ноября вышел первый Freeboot — он требовал наличие второго чипа памяти, но уже позволял запускать игры без диска. Затем вышел XBReboot, не требующий второго чипа и понеслось…
У кого уже стоит XBReboot или Freeboot, пропускаем части 2, 3 и 4!
Для чтения и записи NAND используем программу Flash 360.
Чтение и запись NAND через Flash 360:
2. Запускаем программу на приставке
Для чтения жмем указанную кнопку (X)
Для подтверждения, нажимаем A — образ NAND сохранится как flashdmp.bin
Семь раз проверь — один раз запиши!
Запись аналогично, только кнопка другая (A)
А здесь нажимаем (B) — у нас свой, перешифрованный keyvault будет.
Сообщение о несовпадении kv игнорируем (start),
сообщение про то, что образ не zeropaired — тоже.
После записи, перезагрузите приставку.
Для снятия ключа просто запускаем приставку с кнопки лотка.
2. Что нужно для установки?
Самое главное — приставка! Нужна консоль обязательно с дашбордом 7371 и ниже (как посмотреть версию — Смотрим на Xbox 360 )
И при этом обязательно с датой выпуска до июня 2009 (точнее — до середины июня). Июль и позже — не подходят однозначно!
Если умудрились найти такую приставку — учтите, придется много паять!
Для владельцев консолей с уже установленным JTAG Hack — паять не придется, есть программы для чтения памяти.
Записать NAND можно тремя способами — SPI Flasherом, через LPT и через программатор.
SPI Flasher выглядит примерно так:
LPT порт в компьютере:
Для снятия дампа, нужно припаять провода от LPT или флешера к матплате приставки по схеме:
Схемка SPI флешера — кто хочет — собирайте, у кого есть — смотрите, где какой контакт:
На желтых контактах обычно висит джампер (не замкнут), голубые — USB порт.
Для LPT понадобятся резисторы на 100 Ом и один диод. Паяем к нужным точкам, желательно использовать провода потолще (особенно на GND), либо экранированный кабель.
3. Читаем Nand.
Итак. Все припаяли, можно начинать.
Нам понадобится этот архивчик (из него обязательно устанавливаем PortIO 95)
Подключаем питание к приставке, но не включаем её, подключаем LPT или USB к компьютеру.
Запускаем компьютер, запускаем коммандную строку, переходим в папку с Nandpro командой cd и пишем
То, возможно, у вас плохо (или неверно) припаяны провода.
Также возможны неверные значения LPT портов. Для того, чтобы узнать правильные порты, заходим в диспетчер устройств, заходим в свойства LPT порта и переходим на последнюю вкладку:
И сравниваем с значением, которое проверяет NandPro (оно может быть в пределах, указанных в свойствах).
Если значение другое, его можно переназначить программкой NandProIOPatcher.exe (есть в архиве).
Если все равно не хочет действовать, перепаивайте, укорачивайте и утолщайте провода, либо ищите USB SPI Flasher.
Если же все нормально, программа начнет читать Nand. На 16 мегабайтных флешках этот процесс длится около 40 минут. На 256 и 512 (где мы снимаем только 64 мб) — около двух с половиной часов.
В процессе чтения желательно выключить Wi-Fi роутер, радиотелефон и не пользоваться микроволновкой.
После снятия дампа, нужно снять его еще пару раз, чтобы удостовериться, что они совпадают (контрольные суммы можно проверить Total Commanderом, Winrarом (сначала сжать), либо любой другой подобной программой).
В итоге, получим точную копию NAND памяти приставки.
Подождите закрывать NandPro и отпаивать провода!
Теперь паяем JTAG, не забываем выключить из розетки!
Схема JTAG для Xenon:
А это для остальных приставок:
Черные стрелочки на картинках не просто так — это диоды. Палочка обычно обозначается полоской, полярность не путать!
При запуске приставки теперь должен появляться синий экран с строчками данных (по HDMI работать не будет):
Строчки 3 и 4, а также 5 и 6 одинаковы — это две половины ключа процессора. Они то нам и нужны.
Если не запускается и выдает Е79, проверяем пайку.
5. Проверяем ключ, собираем Freeboot
Понадобится довольно большой архивчик с нужными программами.
Открываем 360 Flash Tool. При первом запуске, вам предложат ввести CPU Key — вводим (свой конечно):
Если справа будет такое:
То это значит, что данным ключом не получилось расшифровать данные. Может ключ неверный, может данные повреждены.
То ключ вы ввели неверный с ошибкой в одном байте (программа перебором это исправила).
Внимание! Если есть еще и третья вкладка:
Обязательно смотрим Bad Blocks remapping (чуть ниже)
Итак, ключ проверили. Теперь распаковываем образ.
Щелкаем правой кнопкой по файлу extract — изменить — пишем вместо нулей свой ключ, в конце меняем имя файла на ваше.
Потом запускаем этот файл и заходим в папку temp. Оттуда нам нужны файлы kv.bin и smc_config.bin
Их копируем в папку mydata, меняем ключ процессора в файле cpukey.txt
Если у вас Xenon приставка — убираем smc.bin и переименовываем smcx.bin в smc.bin
Теперь редактируем build — меняем модель консоли (если требуется) и запускаем его.
Получим готовый образ — updflash.bin
Если у вас были бэд блоки, их нужно «ремапить», то есть переместить.
Принцип действия — если Xbox не может прочесть блок, он смотрит в самый конец NAND и читает его оттуда. Следующий с начала бэд блок будет следующим с конца в области для ремапа.
Где updflash.bin — имя файла, 229 — место первого бэд блока, 3ff — последний сектор, с которого и начинаем ремап.
Аналогично, ремапим следующие бэд блоки, только записываем уже в 3fe:
И так далее до последнего бэд блока.
Для 256/512 мб все аналогично, но блоки больше размером. Поэтому, все значения из 360 Flash Tool умножаем на 8 в шестнадцатеричном калькуляторе:
Например, программа показала бэд блок в блоке 57 — получаем начало блока в секторе 57*8 = 2b8 и в NandPro пишем уже чуть другое:
То есть мы читаем блок из 8 подблоков и пишем его в конец файла так же 8 подблоков.
Второй и последующие аналогично, только уменьшаем сектор ремапа на 8:
Freeboot [JTAG/RGH]
В обновленной версии статьи я постараюсь описать большую часть информации по теме установки Freeboot на консоль от Microsoft.
Взлому JTAG поддаются следующие виды консолей:
Xenon, Zephyr, Opus, Falcon, Jasper (дата выпуска до 15 июня 2009)
Основное условие — версия дашборда 2.0.7371, либо ниже. Версии 2.0.8498 — 2.0.15574 не подходят!
Взлому RGH (Reset Glitch Hack) поддаются:
Xenon, Zephyr, Opus, Falcon, Jasper, Trinity
Условие — версия дашборда 2.0.8498 — 2.0.14699. Версии 2.0.14717 — 2.0.15574 не подходят!
Взлому RGH2 поддаются
Zephyr, Opus, Falcon, Jasper, Trinity
Нужна версия дашборда 2.0.14717 — 2.0.14719.
Для установки Freeboot этим методом на приставки с дашбордом 2.0.15572-2.0.15574 необходимы заранее снятые ключ процессора и дамп памяти с версией дашборда 2.0.14717-2.0.14719!
Внимание. В процессе установки, требуются хорошие навыки пайки! К тому же, приставки Jasper часто выходят из строя при установке RGH. Я не рекомендую браться за установку RGH на чужую консоль. Свою — терзайте на здоровье.
Ну и да, я ни разу не устанавливал Freeboot на Xbox 360, так что инструкция больше затрагивает программную часть, чем пайку и оптимизацию (колдовство всякое). Удачи!
Модель материнской платы Phat приставки можно узнать по разъему питания и наличию HDMI выхода:
Модель материнской платы Slim приставки легко распознается по наклейке сзади, несущей информацию об энергопотреблении приставки:
Версию Dashboard приставки можно посмотреть в настройке консоли — сведения о системе:
В любом случае, перед началом действий, необходимо считать содержимое NAND приставки.
Это можно сделать несколькими способами. Если у вас уже стоит Freeboot (или XeLL), можно считать программно. Если консоль не подвергалась модификациям, можно считать по LPT или через специальное устройство — флешер.
2. XeLL
Новые версии XeLL позволяют считывать NAND по HTML. Чтобы запустить XeLL на freeboot приставках, нужно запустить приставку с кнопки лотка (иногда — запустить с открытым или полуоткрытым лотком).
Перед запуском, подключите приставку к роутеру (или компьютеру).
Если приставка была подключена к роутеру, на экране покажется полученный от него IP адрес. Если была подключена к компьютеру — необходимо будет указать в настройках сети компьютера IP и маску подсети (IP должен отличаться от указанного на экране последним значением).
В итоге, после настройки сети, вбив адреc в браузер, попадаем на страницу, где можно «скачать» содержимое NAND.
Но почти всегда приходится считывать память напрямик, с припаиванием проводов.
3. Чтение через компьютер
Паяльник и припой с флюсом нужны обязательно
Самый простой вариант — LPT порт
Надёжнее и быстрее будет использование SPI Flasher, но ради одного раза его покупать накладно.
Как собрать SPI USB флешер
Также, можно приобрести ещё более быстрый Super NAND Flasher
Схема пайки флешера к Phat приставке:
Для Slim всё точно так же, схема расположения контактов:
В итоге, должно получиться нечто вроде этого:
Итак. Все припаяли, можно начинать.
Подключаем питание к приставке, но не включаем её, подключаем LPT или USB к компьютеру.
Запускаем компьютер, запускаем командную строку (Win+R — cmd), переходим в папку с Nandpro командой cd (например, cd C:/NandPro)
Далее, нужно считать содержимое NAND приставки. Можно считать полностью, а можно только первые 50 блоков. Это намного быстрее, но потом нужно будет считать оставшуюся часть через XeLL.
Размер памяти на всех приставках, кроме Jasper — 16 мегабайт (128 мегабит).
На Jasper Arcade (без HDD в комплекте) — 256 или 512 мегабайт. На элитках с HDD, опять же, 16 мегабайт.
Аналогично, для чтения больших NAND на джасперах, нужно вводить -r64 (системная информация находится только в первых 64 мегабайтах)
Если вы решили сэкономить время и считать только первые 0х50 блоков, нужна команда
Если в случае с LPT выдало
То, возможно, у вас плохо (или неверно) припаяны провода.
Если не хочет действовать, перепаивайте, укорачивайте и утолщайте провода, либо ищите USB SPI Flasher. Важно, чтоб провода имели одинаковую длину.
Если же все нормально, программа начнет читать Nand. На 16 мегабайтных флешках этот процесс длится около 40 минут (по USB — 5 минут). На 256 и 512 (где мы снимаем только 64 мб) — около двух с половиной часов (по USB — минут 20).
В процессе чтения возможны ошибки. Зачастую, это так называемые бэд блоки — ошибочные сектора памяти. Это нормально, данные с этих блоков находятся в конце памяти. Но если вы считываете только первые 50 блоков, перенесенные данные не будут считаны! Поэтому, лучше точно проверять дамп на корректность.
Для проверки считанного дампа, можно использовать мою программу — NandCheck
Для проверки, достаточно перетащить файл дампа на иконку файла программы.
В отчете будут показаны все ошибки, ошибочные блоки, заремаплены они или нет. Ну и в конце, показывает общий статус дампа, корректный или нет. В случае ошибки, будет выдан результат ERROR. В таком случае, нужно будет считать дамп заново. Вполне вероятно, что в программе есть баги — если найдете, сообщите.
Если выдало статус ОК, повторно считывать не нужно. Так вы сэкономите время и нервы.
Дальше, для разных случаев, нужно действовать по-разному.
Для JTAG XeLLous один — его можно скачать здесь
А вот для RGH/RGH2 его нужно собирать отдельно.
Затем запускаем сам 360 Multi Builder (Run.exe)
Следуем указаниям программы:
Сначала подтверждаем выбор nanddump.bin в папке
Затем выбираем модель материнской платы
Потом подтверждаем желание собрать XeLL
В процессе программа может предупредить о замене CB из-за того, что текущий загрузчик не подходит для RGH — это нормально. Также возможны предупреждения о сборке XeLL для RGH2, т.к. текущий загрузчик не подходит для RGH
После сборки, XeLL будет находиться в папке Data/_my_Images. Осталось записать его в приставку.
Записывать в приставку XeLL нужно через NandPro:
Остается лишь вопрос о CPLD и его модификации.
Со времен разработки первой версии Reset Glitch Hack, использовался чип от Xilinx. Но некоторые умельцы портировали его на другие чипы, такие как Actel. Судя по отзывам, они действительно зачастую (но не всегда) шустрее. К сожалению, команда, занимающаяся взломом консолей на данный момент, Team Xecuter, стремится к монополии и не выкладывает исходные коды прошивок, поэтому, гличи на Actel не подходят для Phat RGH2 и Xenon.
Итого, сейчас самые универсальные платы для глича — Matrix Glitcher I (от 5$) и Xecuter Coolrunner (от 9$)
Для Trinity есть ещё X360Pro на Actel. А его третья и четвертая версии еще и содержат функционал DualNAND
Есть и отечественные разработки:
Слева — глич от Freeplex, справа — от kim095
В версии от kim095 есть очень много возможностей для точной подстройки.
Также, можно купить заготовки вроде таких:
Но их необходимо «допиливать» до нужного состояния, потому они уже не популярны.
Также, можно собрать самостоятельно:
Для тех, кто хочет собрать самостоятельно, прилагаю простейшие схемки для плат
Slim (Phat RGH2) версия / Phat RGH1 версия
Конденсаторы, выделенные пунктиром, необязательны.
Для улучшения запуска, многие прибегают к различным модификациям — ставят конденсаторы куда ни попадя, резисторы и прочее. К примеру, для RGH2 на Phat ставят резистор 10Ком, соединенный параллельно с конденсатором на 470pf, в разрыв провода CPU_RST.
Как я понял, всё это колдовство с конденсаторами, длиной проводов и диодами означает лишь нестабильность и ненадежность любых Glitch устройств.
1.8v можно взять с платы приставки (грейфрутовый цвет на рисунке – на всякий случай, проверьте мультиметром).
А можно и прикрутить на свою плату стабилизатор питания на 1.8v
Для программирования CPLD через LPT, понадобится 360gcprog 1.5
Для программирования через Super NAND Flasher сойдёт и NandPro 3.0
Отдельно прошивки для программирования можно скачать здесь
Для RGH используются прошивки xenon, zephyr, opus, falcon, jasper, trinity1.1 и slimpluspost (последняя — как альтернатива)
Для RGH2 используются trinity1.1, slimpluspost и набор прошивок для Phat:
Falcon/Opus — B, C и E версии
Jasper — A и D версии
Zephyr — D и C версии
Вот схема для подключения CPLD к компьютеру по LPT:
Внимание! В некоторых случаях, для корректной работы, приходилось уменьшать резистор до 3 КОм.
Вместо батареек можно использовать 3.3в с матплаты компьютера. VCC – это вывод 3.3в на схеме платы CPLD.
Подключив по LPT к компьютеру, смотрим номер порта:
Теперь запускаем 360gcProg и вписываем порт в настройки:
Теперь нажимаем Connect и подключаемся к устройству
Выбираем из списка нужный тип прошивки и записываем его в Glitch
Через NandPro 3.0 всё делается командой
nandpro xsvf: firmware.xsvf, где firmware.xsvf — имя прошивки для чипа
Ну теперь осталось припаять CPLD к приставке. Расположение точек на Slim приставке:
Распайка для Phat, RGH 1
Распайка для Xenon, RGH 1. Немного поменял формат исходной картинки
Как написано на картинке, для улучшения запуска, нужно добавить конденсатор на 47нф.
Распайка для Phat RGH2 похожа на распайку для Slim:
Рекомендуется добавление резистора 10 Ом на CPU_RST.
Распайка для JTAG намного проще. Понадобятся диоды.
Схема для Xenon:
Схема для остальных:
Так. Если вы считывали только 0х50 блоков, не забываем дочитать оставшееся через XeLL! (см начало статьи)
Ну что, осталось лишь собрать фрибут.
Если собранный фрибут не запустится, используйте 360 Multi Builder 0.94 (последний xebuild почему — то некорректно собирает некоторые дампы, да и в самой версии 0.95 имеются косяки)
Скриншоты оставлю старые, в сборке фрибута ничего сложного нет. В процессе сборки, будет вопрос про отключение FCRT — если у вас привод родной, делать этого не нужно. Также это лишь помешает на приставках с приводами 1071 и 1125.
Выбираем сборку Glitch Hack Image (или JTAG Image)
Можно и с дашланчем, не помешает
Программа сообщает, что всё собрано. Готовый файл nandflash.bin находится в папке Data
Рекомендуют писать через XeLL. Так и поступим
Для записи, понадобится rawflash4
Полученный файл nandflash.bin кидаем на USB флешку вместе с содержимым архива rawflash4.
Запускаем XeLL с вставленной флешкой – прошивка запишется в приставку
После перезагрузки приставки появится Freeboot. Если не запустился — пробуйте собрать через предыдущий мультибилдер.
На этом всё.