Pre-IPL, conceptos basicos

Moderadores: largeroliker, Kravenbcn, fidelcastro, cerealkiller, pspCaracas, dark_sasuke, m0skit0, LnD, ka69, zacky06

Avatar de Usuario
fidelcastro
Moderador Global
Moderador Global
Mensajes: 2308
Registrado: 04 Sep 2009, 18:49

Pre-IPL, conceptos basicos

Mensajepor fidelcastro » 10 May 2010, 00:01

Esta es una explicación de la seguridad fue añadida en la TA88v3 y en la PSP3000.

Cuando la PSP se inicia, el código de arranque (a partir de ahora el pre-ipl o el cargador del ipl)
carga el ipl, desde ya sea la NAND o la memory stick. El IPL es entonces dividido en partes de 0x1000 bytes.

Los primeros 0xA0 bytes de cada bloque es un encabezamiento para el comando nº1 de hardware de encriptación kirk.

Contiene las claves, el tamaño de los datos de cifrado, y dos hashes, uno que es parte de por sí del encabezamiento, y otro para el propio cuerpo. Los 0xF60 bytes restantes son el cuerpo cifrado, que se descifrarán en 0xF60 bytes simples... si los hashes, que sn comprobados por el comando kirk de hardware de por si, son correctos.

(Nota: El cuerpo cifrado puede ser menor que 0xF60; en este caso, los demás bytes son ignorados...
al menos esto sucedía antes de la TA88v3)

La seguridad de los hashes con kirk fue destruida con un llamado timing attack, y entonces el IPL se desprotegió.

¿Qué ha añadido Sony para arreglar esto?

La respuesta puede encontrarse en los ipl's de PSP Slims con un firmware 4.0+. Disminuyeron el tamaño del cuerpo cifrado hasta 0xF40 para dejar 0x20 bytes al final de cada bloque (salida 0xFE0)

Como hemos comentado anteriormente, esos demás bytes eran ignorados... en pre-ipl's de PSP anteriores a la TA88v3,y de hecho, pueden ser aleatorios, y el ipl seguirá cargando en esas PSP's. En los nuevos pre-ipl's, esos 0x20 bytes tienen un significado.

Los primeros 0x10 bytes es un hash desconocido hasta la fecha, calculado desde el bloque descifrado. Se deduce pues que es calculado desde el bloque descifrado y no del cifrado ya que 4.01 y 4.05 tienen muchos bloques de la propia IPL en común, los cuales, al estar descifrados, son parecidos, pero son totalmente distintos al estar cifrados. En estos dos ipl's, el hash es el mismo, como se puede ver en la imagen:
Imagen

0o
Imagen


Los segundos 0x10 bytes parecen ser de igual manera dependientes del cuerpo descifrado (posiblemente dependientes de los anteriores 0x10 bytes de igual manera¿?)

En la imagen se puede ver que son diferentes en 4.01 y 4.05, pero pueden ser intercambiados; puedes mover esos 0x10 bytes del mismo bloque del ipl de 4.05 al de 4.01, y seguirá cargando; mas sin embargo, este cambio no puede ser aleatorio.

Esta protección de igual manera destruye cualquier posibilidad de hacer un downgrade por debajo de 4.00,
ya que estas nuevas CPU's no serían capaces de cargar previos ipl's con dichos firmwares.

En resumen: Básicamente, toda la seguridad de los nuevos cpu's de psp descansa en el cálculo de esos 0x20 bytes.

Si el pre-ipl pudiera ser dumpeado de alguna manera, esa seguridad caería TOTALMENTE.

Explicacion que fue reportada por Alek en DarkAlex.org
Imagen

La verdad os hará libres (Juan 8:32). Y la mentira creyentes.

Avatar de Usuario
Kravenbcn
Administrador
Administrador
Mensajes: 16210
Registrado: 01 Sep 2009, 21:27
PSN ID: Kravenbcn
Twitter: Kravenbcn
Ubicación: Barcelona
Contactar:

Re: Pre-IPL, conceptos basicos

Mensajepor Kravenbcn » 10 May 2010, 00:17

Gracias por recuperar tan buena información ;)
No te pierdas nada, sigue a DaXHordes en Twitter, Facebook, Google+ y Youtube

Imagen
¿Quieres formar parte del equipo de DaXHordes.org? Esta es tu oportunidad.
PS3 · PS Vita · PSP

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5586
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: Pre-IPL, conceptos basicos

Mensajepor m0skit0 » 10 May 2010, 01:10

0xFE0 tú :lol: :lol: Buena documentación :oki:
Imagen

Avatar de Usuario
Kravenbcn
Administrador
Administrador
Mensajes: 16210
Registrado: 01 Sep 2009, 21:27
PSN ID: Kravenbcn
Twitter: Kravenbcn
Ubicación: Barcelona
Contactar:

Re: Pre-IPL, conceptos basicos

Mensajepor Kravenbcn » 10 May 2010, 11:23

m0skit0 escribió:0xFE0 tú :lol: :lol:
:juasjuas: :juasjuas:
No te pierdas nada, sigue a DaXHordes en Twitter, Facebook, Google+ y Youtube

Imagen
¿Quieres formar parte del equipo de DaXHordes.org? Esta es tu oportunidad.
PS3 · PS Vita · PSP

Avatar de Usuario
Rasta
Experto
Experto
Mensajes: 811
Registrado: 03 Sep 2009, 12:28
Contactar:

Re: Pre-IPL, conceptos basicos

Mensajepor Rasta » 10 May 2010, 14:31

No he dicho nada... :evil: :evil:
Última edición por Rasta el 10 May 2010, 17:45, editado 2 veces en total.

Avatar de Usuario
darklex150
ViP Hordes
ViP Hordes
Mensajes: 1974
Registrado: 03 Sep 2009, 01:58
Contactar:

Re: Pre-IPL, conceptos basicos

Mensajepor darklex150 » 10 May 2010, 16:06

uyy, electronica yo ni un coño :(

A penas y puedo con software bien "soft" :laughing:
Imagen
Spoiler:
Imagen

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5586
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: Pre-IPL, conceptos basicos

Mensajepor m0skit0 » 10 May 2010, 16:38

Rasta strikes back... Ya estabas tardando :lol:

Rasta escribió:esto es sin duda electronica pura

:juasjuas: :juasjuas: Lo que tú digas :juasjuas: :juasjuas: es pa mear y no echar gota :juasjuas: :juasjuas: Es software puro y duro :|

Rasta escribió:Esos pares de 0x20

¿De qué pares hablas? No hay pares de tamaño 0x20 en ningún lado :roll:

Rasta escribió:son parte de una multiplexacion entre la desencriptacion KIRK y los comparadores 0xFE0

¿Desencriptación? ¿Comparadores 0xFE0? :adora: No se entiende ni papa de qué pretendes decir, si es que realmente pretendes decir algo o sólo sueltas palabras que te suenan al azar :|
Imagen

Avatar de Usuario
Rasta
Experto
Experto
Mensajes: 811
Registrado: 03 Sep 2009, 12:28
Contactar:

Re: Pre-IPL, conceptos basicos

Mensajepor Rasta » 10 May 2010, 17:51

m0skit0 escribió:Rasta strikes back... Ya estabas tardando :lol:

Rasta escribió:esto es sin duda electronica pura

:juasjuas: :juasjuas: Lo que tú digas :juasjuas: :juasjuas: es pa mear y no echar gota :juasjuas: :juasjuas: Es software puro y duro :|

Te equivocas, si fuese software se prodria haber sacado hace tiempo por otro software.
m0skit0 escribió:
Rasta escribió:Esos pares de 0x20

¿De qué pares hablas? No hay pares de tamaño 0x20 en ningún lado :roll:

Si te fijas hay dos bloques de 0x20 hasta la salida 0xFE0, en el cual el primero se subdivide por dos,
es decir dos de 0x10
m0skit0 escribió:
Rasta escribió:son parte de una multiplexacion entre la desencriptacion KIRK y los comparadores 0xFE0

¿Desencriptación? ¿Comparadores 0xFE0?

Si, he dicho eso por que me parece mas lógico, haber, cuando tu multiplexas a una dirección, tienes que tener una referencia, ahora estoy en el curro, más tarde expondré una tabla gráfica de como veo yo eso.

Avatar de Usuario
fidelcastro
Moderador Global
Moderador Global
Mensajes: 2308
Registrado: 04 Sep 2009, 18:49

Re: Pre-IPL, conceptos basicos

Mensajepor fidelcastro » 10 May 2010, 18:48

m0skit0 escribió:0xFE0 tú :lol: :lol: Buena documentación :oki:


si iva por ti querido god :lol: :lol:

Bueno, muchas gracias a todos, lo encontre en un viejo disco de datos guardos y me dije, pues a la saca :lol: espero tambien aliviar dudas sobre el tema pre-ipl, y sobre todo gracias a ALEK y DAX por su magnifico trabajo :oki:
Imagen

La verdad os hará libres (Juan 8:32). Y la mentira creyentes.

Avatar de Usuario
m0skit0
Administrador
Administrador
Mensajes: 5586
Registrado: 03 Sep 2009, 09:35
Ubicación: 0xdeadbeef

Re: Pre-IPL, conceptos basicos

Mensajepor m0skit0 » 10 May 2010, 19:01

En tus dos posts estás confundiendo el tocino con la velocidad. En tu línea.

Rasta escribió:Te equivocas, si fuese software se prodria haber sacado hace tiempo por otro software.

Habló el experto hacker :roll: La Pre-IPL es software y la IPL es software. Evidentemente todo software corre encima de circuitos electrónicos, pero éstos sólo hacen lo que el software pide. Así que es software, señor experto.

Rasta escribió:Si te fijas hay dos bloques de 0x20 hasta la salida 0xFE0

A ver si te fijas tú mejor: el bloque entero al final de cada cacho de IPL es de 0x20 bytes, que DAX subdivide en 2 bloques de 0x10, y no 2 bloques de 0x20. Más claro el agua. Y no sé de qué salida hablas... Esto es software, no electrónica :roll:

Rasta escribió:más tarde expondré una tabla gráfica de como veo yo eso.

Veremos a ver qué te inventas en tu tabla.
Imagen


Volver a “Desarrollo”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado