Este post es parte de una serie relacionada con reparar una wii brikeada
* UnBrickMii- Introduccion, esplicacion de un plan de 4 partes para unbrikear cualquier wii.
* amoxiflash- Parte 1, una forma de modificar la NAND Flash de una Wii brikeada
* Mario-Kart Autopsy 1 and 2 - Parte 2,un análisis (parcial) de lo que ocurre con el sistema de archivos de un Wii para que se brikee
* (tbd) - Parte 3, una forma de recuperar las unicas keys necesarias para la consola (NAND AES, NAND HMAC) usando un boot2 hackeado en una Wii birkeada
* (tbd) - Parte 4, Software para modificar el contenido del sistema de archivos de Wii en un ordenador, haciendo uso de esas dos claves NAND.
He puesto todas mis fuerzas ymi tiempo en la Parte 4. Se está volviendo ams difiil de lo que yo esperaba. Para modificar el sistema de archivos para unbriear la Wii, Necesitamos hacer lo siguiente:
* Aislar un archivo existente de la NAND dump (Hecho)
* Desencriptarlo usando la propia AES key, modificarlo, y volver a encriptarlo usando la misma key (hecho, viable, y mas adelante)
* Firmar el 0×4000-byte block usando la correcta HMAC key, por lo que la Wii la reconocerá como válida.
El HMAC ha demostrado ser la parte mas dificil. HMAC es un algoritmo estándar, y sé la clave HMAC para mi Wii, pero no puedo obtener mi HMAC calculado para coincidir con la que la Wii tiene almacenada.Esto significa que no puedo modificar el sistema de ficheros, que es un obstáculo bastante serio.
He pasado semanas mirando en la estructura del boot2 - la primera parte del código esta compuesta por el HMAC check - y no puedo averiguar lo que está haciendo por puro análisis. Lamentablemente, no tenemos ninguna (útil) instalacion de depuración (debug facilities)
Es hora de volver al principio. Marcan y Yo hemos estado trabajando en modificar el SkyEye para emular el Starlet core. Es un proceso muy frustrado y tedioso, porqque no tenemos documentacion sobre como hacer la mayoria de estos trabajos, asi que estamos viendo que tambien el código termina funcionando. No pienso que sea algo util para un emulador de Wii — hay maneras mas faciles de emular IOS — pero estoy esperando que pueda utilizarlo para depurar el algoritmo HMAC, y también tal vez los parches de firmware.
boot0 es la primera parte de la cadena estrella de arranque. (It is hardcoded in mask rom in every Hollywood chip); No cambiara nunca. Está diseñado para ser pequeño y simple, porque es imposible arreglar cualquier error que se encuentran allí. He decidido empezar por ahí para tratar de emular el chip - aunque es sólo alrededor de 1300 bytes de código, se encarga de hablar con:
* OTP área de almacenamiento (para obtener un hash para comparar contra boot1)
* Controlador NAND Flash (para leer el cifrado boot1)
* SRAM (para almacenar el descifrado boot1)
* AES motor (para descifrar boot1)
* SHA motor (para autenticar boot1)
No espero que esto sea de mucha utilidad para las personas, pero si eres curioso, echa un vistazo a mi análisis del boot0. Si ve que algo se me olvidó, por favor hágamelo saber!
Los futuros artículos se examinarán boot1 y boot2.
Veatsealor escribió:Parece que esto de desbrikear la Wii se va a convert[url][/url]ir en uan realidad gracias a Marcan. Esta investigando sobre esto y solo le queda un poquito para conseguirlo. El homebrew channel le ha llevado mas tiempo del que esperaba y se ha retrasdo.
Os dejo la pagina original.
http://hackmii.com/2008/05/boot0/
Traduccionn:Este post es parte de una serie relacionada con reparar una wii brikeada
* UnBrickMii- Introduccion, esplicacion de un plan de 4 partes para unbrikear cualquier wii.
* amoxiflash- Parte 1, una forma de modificar la NAND Flash de una Wii brikeada
* Mario-Kart Autopsy 1 and 2 - Parte 2,un análisis (parcial) de lo que ocurre con el sistema de archivos de un Wii para que se brikee
* (tbd) - Parte 3, una forma de recuperar las unicas keys necesarias para la consola (NAND AES, NAND HMAC) usando un boot2 hackeado en una Wii birkeada
* (tbd) - Parte 4, Software para modificar el contenido del sistema de archivos de Wii en un ordenador, haciendo uso de esas dos claves NAND.
He puesto todas mis fuerzas ymi tiempo en la Parte 4. Se está volviendo ams difiil de lo que yo esperaba. Para modificar el sistema de archivos para unbriear la Wii, Necesitamos hacer lo siguiente:
* Aislar un archivo existente de la NAND dump (Hecho)
* Desencriptarlo usando la propia AES key, modificarlo, y volver a encriptarlo usando la misma key (hecho, viable, y mas adelante)
* Firmar el 0×4000-byte block usando la correcta HMAC key, por lo que la Wii la reconocerá como válida.
El HMAC ha demostrado ser la parte mas dificil. HMAC es un algoritmo estándar, y sé la clave HMAC para mi Wii, pero no puedo obtener mi HMAC calculado para coincidir con la que la Wii tiene almacenada.Esto significa que no puedo modificar el sistema de ficheros, que es un obstáculo bastante serio.
He pasado semanas mirando en la estructura del boot2 - la primera parte del código esta compuesta por el HMAC check - y no puedo averiguar lo que está haciendo por puro análisis. Lamentablemente, no tenemos ninguna (útil) instalacion de depuración (debug facilities)
Es hora de volver al principio. Marcan y Yo hemos estado trabajando en modificar el SkyEye para emular el Starlet core. Es un proceso muy frustrado y tedioso, porqque no tenemos documentacion sobre como hacer la mayoria de estos trabajos, asi que estamos viendo que tambien el código termina funcionando. No pienso que sea algo util para un emulador de Wii — hay maneras mas faciles de emular IOS — pero estoy esperando que pueda utilizarlo para depurar el algoritmo HMAC, y también tal vez los parches de firmware.
boot0 es la primera parte de la cadena estrella de arranque. (It is hardcoded in mask rom in every Hollywood chip); No cambiara nunca. Está diseñado para ser pequeño y simple, porque es imposible arreglar cualquier error que se encuentran allí. He decidido empezar por ahí para tratar de emular el chip - aunque es sólo alrededor de 1300 bytes de código, se encarga de hablar con:
* OTP área de almacenamiento (para obtener un hash para comparar contra boot1)
* Controlador NAND Flash (para leer el cifrado boot1)
* SRAM (para almacenar el descifrado boot1)
* AES motor (para descifrar boot1)
* SHA motor (para autenticar boot1)
No espero que esto sea de mucha utilidad para las personas, pero si eres curioso, echa un vistazo a mi análisis del boot0. Si ve que algo se me olvidó, por favor hágamelo saber!
Los futuros artículos se examinarán boot1 y boot2.