Advertisement
Guest User

Untitled

a guest
Nov 14th, 2011
547
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.63 KB | None | 0 0
  1. Imagen
  2.  
  3. 3.56 MA-1
  4. ---------------------
  5.  
  6. Este firmware es la primera version del 3.56 custom,
  7. este custom (su parte mas basica) ya estaba preparado desde hace unos 7 u 8 meses, pero no ha sido hasta
  8. ahora cuando he decidido publicarlo.
  9. No tiene nada que ver con el exploit del metldr recientemente publicado, pese a que sea inminente la aparicion
  10. de futuros firmwares superiores, para el que lo quiera probar, aqui esta.
  11.  
  12. Ante todo agradecimientos:
  13.  
  14. - Graf_Chokolo, por su gran trabajo.
  15. - A Demonhades, por su testeo, su gran entereza.
  16. - A JaiCrab, por su ayuda.
  17. - A Lara, por hacerme reir un dia.
  18. - A la gente que ha testeado este 3.56 MA-1, muchas gracias.
  19. - A tod@s aquell@s que donaron para un flasher, sin ell@s este firmware no existiria tan avanzado como tal.
  20. - A Varicela por su ayuda desinteresada.
  21. - A B.E , :)
  22. - A M.E.M, no olvido y no perdono.
  23. - Tod@s aquell@s que olvido por error, disculparme.
  24.  
  25. Como primera version, solo lleva las funcionabilidades mas basicas de un custom firmware, que ahora pasare a explicar.
  26. Tambien explicare los cambios que Sony realizo en el 3.56, y como lo que en sus notas de publicacion, lo que se
  27. argumentaba como un simple parche de seguridad no fue solo un parche.
  28.  
  29. - FUNCIONES
  30.  
  31. * Soporte PEEK / POKE lv2, usando las SYSCALL tipicas 6 y 7 para compatibilidad con homebrew existente.
  32. * Soporte PEEK / POKE lv1 nativo, usando las SYSCALL 10 y 11 respectivamente. Estas SYSCALL se usan igual
  33. que las del lv2, los devs solo tienen que usarlas como usarian las del lv2 pero afectando al lv1.
  34. * Carga de aplicaciones no firmadas, formato FSELF de forma NATIVA. Es decir, una aplicacion npdrm o normal
  35. en formato valido FSELF funcionara directamente. (sin parcheos de copia de memoria en el lv2).
  36. * Carga de aplicaciones firmadas logicamente, tanto oficiales como firma no oficial valida.
  37. * Soporte de aplicaciones hasta la version 3.56.
  38. * Uso de todas las SYSCALL del sistema, siempre que estas no verifiquen posteriormente product mode, QA, etc.
  39. * No hace falta modificar los PARAM.SFO en el caso de que hipoteticamente se usase una aplicacion que pida
  40. una version superior al 3.56 en el, ya sea npdrm / aplicacion normal / o aplicacion corriendo desde el bdemu.
  41. * Instalacion de PKG Retail y Debug desde la opcion de Install PKG.
  42. * Sistema de opciones en el XMB QA hackeado. Ahora puedes abrir las opciones usando el combo normal sin tener
  43. el flag QA activo ni con un token valido o existente en tu maquina. Cualquier opcion cambiada se conserva
  44. en el registro del sistema de configuracion.
  45. Este sistema de hackeo del QA permite que cualquier SPRX que llame al XMB para chequear esta informacion
  46. reciba la informacion hackeada, como por ejemplo el nas_plugin.sprx, que en el caso de una DEX permitiria
  47. instalar sin necesidad de ningun parche en el de PKG Retail.
  48. Como siempre tener cuidado que se hace con esas opciones, este es el sistema mas seguro para tener el QA, sin
  49. ser QA, ya que no se tiene que modificar la EEPROM en ningun aspecto ni recalcular tokens de ningun tipo.
  50. Aqui tengo que dar gracias a Sony por hacer que la seguridad de su token solo fuera en un byte y no en los que
  51. deberia de ser.
  52.  
  53. - LV2
  54.  
  55. * FIX: Parcheo para permitir la carga de aplicaciones en medios (evita error 0x80010009)
  56. * FIX: Parcheo para evitar el chequeo de la version de firmware de la aplicacion contra la version de firmware
  57. guardada en la memoria del lv2 (evita el error 0x80010019)
  58. * FIX: Parcheo para evitar el error 0x8001003C (permite la carga de aplicaciones que pidan internamente mas version que la actual)
  59. * FIX: Parcheo para evitar el error 0x8001003D
  60. * FIX: Parcheo para evitar el error 0x8001003E (usando parche en el hdd y no tener disco introducido)
  61. * FIX: Habilita el uso de todas las SYSCALL, evitando su error generico 0x80010003.
  62.  
  63. - CAMBIOS EN EL LV2 356:
  64.  
  65. * FIX: Parcheado un nuevo chequeo de seguridad, que evitaba que en modo updater, se pudiera lanzar una aplicacion
  66. no firmada con la clave minima 0xD (3.56), evitando el error 0x80010009. NOTA: MIRAR NOTA AL FINAL DE ESTE LEEME
  67.  
  68. * FIX: Se utiliza otro modo para integrar las nuevas SYSCALL 6, 7, 10, 11 en el lv2.
  69.  
  70. - LV1
  71.  
  72. * Añadido soporte para PEEK / POKE NATIVO en el lv1. El metodo utilizado para integrar estas hypercalls nuevas no utiliza
  73. una hypercall ya existente, sino que realmente cualquier hypercall no usada en el sistema es un peek o un poke
  74. dependiendo del caso.
  75. Para interactuar con este PEEK / POKE, usar las SYSCALL de lv2 10 y 11 respectivamente.
  76.  
  77. * Cambios en la hypercall mmap (114). En el 3.56 Sony introdujo cambios importantes en dicha hypercall para evitar
  78. el uso que se le estaba dando con el mapeo del lv1 al lv2.
  79. Ahora esta hypercall chequea que el argumento clave no haya sido modificado, se chequean los rangos de mapeo
  80. (alguien que entienda de esto se dara cuenta de lo peligroso que es que te mapeen algo critico, y no hablo del lv1),
  81. el codigo de la hypercall esta dividido en trozos en subfunciones para liar el analisis.
  82. En esta version del 3.56 MA esta hypercall no ha sido tocada, pero teniendo el soporte de PEEK / POKE en el lv1
  83. el mapeo ya no es tan necesario.
  84. En una version posterior no se descarta el desproteger dicha hypercall pues no es complicado realmente, solo
  85. que no era necesario para esta version.
  86.  
  87. * Cambios en la hypercall unmap (115), parecido a la mmap, su codigo repartido entre subfunciones.
  88.  
  89. * FIX: Añadidos algunos parches para evitar chequeos de integridad del lv1 / lv0.
  90. * FIX: Añadidos parches en el SPM y en el DM para habilitar el uso de cualquier servicio. El parche es distinto,
  91. mas pequeño, que el parche SS existente (este no es ya compatible con el 3.56), en mis testeos mi parche no produce ningun tipo de problema con trofeos, ni partidas guardadas, etc.
  92.  
  93. * TODO: Eliminar el problema de no poder hacer downgrade a una version inferior al 3.56. Actualmente no es posible
  94. bajar del 3.56 una vez se actualice a el.
  95.  
  96. - LV0 APPLDR
  97.  
  98. * FIX: Parche para anular el chequeo de la firma digital ECDSA. Ahora una aplicacion con una firma invalida
  99. sera considerada con firma valida.
  100. Por ejemplo, "firmar" una aplicacion sin tener la clave privada adecuada para generar una firma adecuada.
  101. * FIX: Parche que anula el chequeo del hash de los segmentos de la aplicacion. Un hash invalido sera considerado
  102. valido.
  103. * FIX: Parche para anular el que no se pueda usar los FSELF en consolas retail. Este parche es distinto al que esta
  104. en ps3devwiki, el parche que esta en dicha pagina acerca de este tema brickea las maquinas, tiene un problema
  105. para poder desencriptar la metadata de los ejecutables retail encriptados.
  106. * FIX: Parche para anular la proteccion añadida en 3.55 (en el caso de las aplicaciones npdrm / normales, antes solo
  107. estaba en la carga del rvk) que evita que se puedan usar aplicaciones de version superior a la indicada en el firmware
  108. actual. Es decir, en un caso hipotetico, un juego 3.60 intentando lanzarse en un 3.56.
  109. * FIX: Parche para anular la proteccion del chequeo del auth de las aplicaciones (añadida en 3.56), este chequeo
  110. detecta los programas creados con las herramientas publicas ya que siempre ponen el mismo auth, un auth muy superior.
  111. * FIX: Parche que anula la proteccion de la lista blanca de programas autorizados, añadida en 3.56. Ahora se pueden
  112. usar todas las aplicaciones como 3.55 e inferiores.
  113.  
  114. - NOTAS
  115.  
  116. * El lv2 esta protegido mediante un hash en el lv1, en el caso de que se quiera tocar un offset que este englobado
  117. en el rango de proteccion, este chequeo produciria un panico apagando el sistema.
  118. Para evitar este problema, usar la herramienta que va adjunta a este paquete antes de modificar el lv2 usando poke.
  119. El porque de no implementar este parche de forma directa es porque no todo el mundo es dev, y que no se pueda tocar
  120. el lv2 es seguro para el usuario.
  121. Por supuesto el codigo fuente de dicho programa esta incluido, con lo que un dev puede ver como usando el POKE
  122. del lv1 se parchea este problema.
  123.  
  124. * Ahora mismo se puede entrar en modo servicio, y usar el lv2diag como antes, pero esto tiene un peligro potencial.
  125. El 3.56 actualmente impide que se pueda hacer un downgrade a menos de 3.56, es decir que si estais en este 3.56 en el estais,
  126. si se tiene tiempo se intentara sacar una version que anule ese chequeo del update manager.
  127. El problema resulta en un error de programacion del lv2diag.self que permite actualizar, el fallo resulta que
  128. SIN CHEQUEAR que el update este en el usb ni verificar que este sea valido, el programa formatea las flashes 1,2 y 3.
  129. Es decir que si luego falla, tu sistema estaria parcialmente muerto por no tener flashes, seguiria funcionando
  130. el ros activo pudiendo usar un lv2diag de nuevo, pero quien avisa no es traidor. Cuidado con el lv2diag!
  131.  
  132. * Adjunto a este paquete va una aplicacion actualizada para extraer los nodos de un dump del lv1, es una actualizacion
  133. de la aplicacion realizada por Graf Chokolo, ahora tiene soporte para las versiones 3.15, 3.41, 3.55 y 3.56 en un solo
  134. programa. Util para ver los nodos extraidos de tu dump.
  135.  
  136. * El acabado grafico del firmware se añadira cuando este acabado el 3.41 JFW en si.
  137. * En el paquete añado una aplicacion, que no creo que exista de forma publica, para poder poner el product mode
  138. desde el XMB directamente, actua como toggle, en el caso de que la podais usar en el modo producto, simplemente
  139. os quitara el modo producto.
  140.  
  141. Como nota final recordar que es la primera version de este firmware, asi que criticas constructivas bienvenidas son.
  142. Como supongo que a raiz de esta publicacion en donde se ven los parches del appldr, muchas variantes saldran de el,
  143. solo recordar que la primera publica fue esta.
  144.  
  145. No mordais la mano que os da de comer, hoy es el 3.56 igual mañana es uno superior, o igual no, :violin:
  146.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement