Cómo verificar tus blobs .shsh2 con img4tool

Recientemente informamos que algunos de los blobs .shsh2 guardados con versiones anteriores de TSSChecker de tihmstar eran defectuosos. Un problema afectó a todos los blobs de iPhone 7 y iPhone 7 Plus, haciéndolos inútiles. Este problema ahora se ha solucionado en el futuro, aunque los blobs anteriores no son válidos.

El otro problema era más complejo y afectaba solo a ciertos modelos de ciertos dispositivos. También se corrige para los blobs guardados de ahora en adelante, pero dados estos casos, es importante poder verificar si los blobs que guardó en el pasado son válidos y aptos para usar con Prometheus.

En este artículo, veremos cómo usar otra herramienta de la suite Prometheus de tihmstar, img4tool, para verificar que sus archivos .shsh2 son buenos. Este método aclarará si está afectado por el segundo problema mencionado anteriormente, pero también funcionará en general, al verificar la validez de sus blobs en el futuro.

Requisitos

Para esto, necesitarás:

  • Sus blobs guardados con TSSChecker / TSSSaver, en formato .shsh2.
  • img4tool de tihmstar, disponible para descargar en la descripción de este video de YouTube.
  • El archivo IPSW para cada combinación de dispositivo / versión de iOS para el que desea verificar sus blobs. Descargue el IPSW exacto que coincida con el blob que desea verificar. Esto significa que debe descargar un IPSW diferente para cada versión de iOS y cada dispositivo diferente que desee verificar.
    Esto lleva un tiempo, por lo que recomiendo verificar solo los blobs iOS 10.1.1 (14B150) y iOS 10.2 para sus dispositivos, para ahorrar tiempo. Estos son los blobs más importantes. Si no tiene (14B150), haga (14B100) en su lugar.

El tutorial describirá el proceso en una Mac y usa la aplicación Terminal, pero también hay versiones de Windows y Linux disponibles, para las cuales el proceso es muy similar. Verificaré iOS 10.1.1 (14B150) e iOS 10.2 blobs para dos iPhone 5s.

Antes de comenzar a trabajar con img4tool, hay un paso que debemos realizar en nuestros dispositivos iOS, aquellos cuyos blobs queremos verificar.

instrucciones de iOS

1) Abra la App Store en su dispositivo y busque "BMSSM". Instale la aplicación que aparece: "Monitor de estado del sistema de memoria de batería".

2) Abra la aplicación descargada y navegue a la pestaña "Sistema" en la parte superior.

3) Busque la entrada en esta página titulada "Dispositivo - Modelo". Será algo así como "N53AP". Tome nota de este valor y de qué dispositivo lo obtuvo.

4) Repita este proceso para todos sus otros dispositivos.

instrucciones img4tool

1) Descargue el IPSW para los blobs que desea verificar. Por ejemplo, si desea comprobar que los blobs de su iPhone 5s (GSM) iOS 10.1.1 (14B150) son buenos, descargue el IPSW iOS 10.1.1 (14B150) iPhone 5s (GSM). Asegúrese de descargar el IPSW correcto para los blobs, o img4tool verificará incorrectamente. Recuerde que hay dos versiones de iOS 10.1.1, y que algunos dispositivos (por ejemplo, iPhone 5s) tienen diferentes modelos con diferentes IPSW.

2) Copie los blobs que desea verificar y péguelos en una carpeta en su Escritorio. Llame a la carpeta TSS.

3) Tome el archivo img4tool_macos de la carpeta img4tool (descargado de la descripción del video de YouTube en la sección "Requisitos") y colóquelo en la carpeta TSS.

4) Coloque también sus IPSW descargados en la carpeta TSS.

5) Para cada IPSW en la carpeta, haga clic para cambiar el nombre y cambie la extensión del archivo de .ipsw a .zip. Seleccione "Usar .zip" en el cuadro de diálogo que aparece.

6) Haga doble clic en todos los .zips renombrados para descomprimirlos. Aparecerán como carpetas una vez completadas.

7) Inicie Terminal a través de Spotlight, o desde / Aplicaciones / Utilidades.

8) En el indicador de Terminal, escriba "cd", seguido de un espacio, y luego arrastre su carpeta TSS a la ventana de Terminal.

9) Presione la tecla "Enter" para ingresar el comando. El terminal ahora será dirigido a su carpeta TSS.

10) Ingrese el siguiente comando en la Terminal, y presione "Enter":

sudo chmod + x img4tool_macos

Ingrese su contraseña de administrador si se le solicita.

11) Ahora ingresaremos el siguiente comando en la Terminal:

./ img4tool_macos -v BuildManifest.plist -s YOUR_SAVED_BLOB.shsh2

Sin embargo, debemos reemplazar la frase "BuildManifest.plist" con una de nuestras carpetas IPSW descomprimidas y "YOUR_SAVED_BLOB.shsh2", con nuestro blob. La forma más fácil de hacer esto es arrastrar los archivos a la ventana Terminal en la parte apropiada del comando.

Aquí hay un ejemplo para iOS 10.1.1 (14B150) en un iPhone 5s. Primero, en Terminal, escriba "./img4tool_macos -v", seguido de un espacio. Luego, navegue a la carpeta IPSW para iOS 10.1.1 (14B150) iPhone 5s. Debe tener la carpeta IPSW correcta para este paso, no use una de las otras carpetas IPSW por error. Dentro de la carpeta está el correcto "BuildManifest.plist". Arrastre este archivo a la ventana Terminal después de “./img4tool_macos -v” y completará la ruta del archivo por usted.

Luego escriba "-s" seguido de un espacio, y arrastre su blob .shsh2 que desea verificar, a la ventana Terminal. Terminal completará la ruta del archivo por usted. Debe tener el blob .shsh2 correspondiente a BuildManifest.plist que acaba de seleccionar. No use uno de los otros blobs por error..

12) Ahora que el comando está completo, presiona "Enter" para ejecutarlo. Terminal dará salida al resultado. La parte interesante está en la parte inferior; Puedes ver un ejemplo a continuación:

Como puede ver en la imagen, este blob es válido, lo que significa que tiene todos los hashes correctos dentro, y la versión IPSW (10.1.1) coincide con la versión de iOS para la que se guardó el blob.

Sin embargo, hay una cosa más que debemos verificar para asegurarnos de que el blob es REALMENTE correcto. Recuerde el modelo de dispositivo que notamos de BMSSM anteriormente?

Busque en la salida del terminal la línea llamada "DeviceClass" (vea la imagen de arriba para ver un ejemplo). Será algo así como "N53AP". Ahora compárelo con el valor que obtuvo de BMSSM en el dispositivo iOS correspondiente (Paso 3 de la sección de Instrucciones de iOS). Si los valores son no lo mismo, la gota es no válido, incluso si img4tool dice "archivo es válido" en la parte inferior. Esto se debe a que el blob es técnicamente válido (tiene todos los componentes necesarios dentro), pero tiene la BuildIdentity incorrecta. Debido a que img4tool no sabe qué dispositivo tiene realmente, simplemente verifica si el archivo tiene todas las piezas que necesita, y si lo tiene, dice que es válido. Por lo tanto, es posible tener un blob "correcto", guardado para el dispositivo "incorrecto", que por lo tanto es inútil. Así que siempre verifique eso:

  • img4tool dice que el blob es válido.
  • El valor "DeviceClass" de la salida de Terminal de img4tool es el mismo que el campo "Modelo de dispositivo" para ese mismo dispositivo iOS en BMSSM.

Si las dos cosas son ciertas, entonces estás bien.

13) Repita el comando para sus otros dispositivos, con un nuevo conjunto coincidente de BuildManifest.plist y .shsh2 blob cada vez. Siempre asegúrese de verificar el "Modelo de dispositivo" BMSSM correcto también cada vez.

Ejemplos

En esta imagen, img4tool dice que mi blob para iOS 10.2, para un iPhone 5s que tengo, es válido. Pero también dice que el blob es válido solo para el Modelo N53AP. Verifiqué BMSSM en ese iPhone 5s, ¡y buenas noticias! También dice N53AP, por lo que este blob en particular es realmente válido.

Ahora mira este ejemplo:

Aquí, img4tool informa que mi blob para iOS 10.1.1 (14B150) para un diferente iPhone 5s, también es válido. Y nuevamente dice que es válido solo para el Modelo N53AP. Sin embargo, cuando verifico BMSSM en esta iPhone 5s, veo que de hecho es el Modelo N51AP, no el N53AP. En este caso, aunque img4tool dice que el blob está bien internamente, no puedo usarlo ya que se ha guardado con BuildIdentity incorrecto, y también lo es inválido. Este es el error que TSSChecker tenía anteriormente, y el que debes tener más cuidado de verificar en tus blobs antiguos.

Y finalmente:

Esto es lo que sucede cuando intenta verificar un blob de iOS 10.2 contra el BuildManifest.plist incorrecto (en su lugar, accidentalmente seleccioné uno de iOS 10.1.1). Aquí, img4tool informa de inmediato que el blob no es válido, ya que lo ha preguntado si un blob 10.2 es válido para 10.1.1, lo que obviamente no lo es. Tenga cuidado de seleccionar pares de versiones iOS idénticas de BuildManifest.plist y .shsh2 para evitar este error.

Como puede ver, el proceso es bastante profundo, pero debería ser una forma infalible de verificar sus viejos blobs sin obtener ningún error falso, lo que podría hacer que piense que son válidos cuando no lo son. Debido a que la descarga de IPSW lleva tiempo, puede valer la pena hacerlo en blobs importantes como iOS 10.1.1 e iOS 10.2.

Y recuerde, las versiones más nuevas de TSSChecker / TSSSaver ya no tienen este problema, por lo que para iOS 10.2 es posible que simplemente desee volver a guardar sus blobs, evitando este proceso de verificación. Esta guía será muy útil para verificar blobs guardados en firmwares ahora sin firmar, que no se pueden volver a guardar.

Como nota al margen, hablé con el inestimable 1Conan, el creador de TSSSaver, mientras investigaba para este artículo. Confirmó lo que sospechaba, que su sitio Blobs Checker no todavía compruebe este problema y, por lo tanto, puede informar que sus blobs son válidos cuando no lo son, exactamente como lo hace img4tool. Sin verificar con su Modelo de dispositivo utilizando esta guía, no puede estar seguro.

Sin embargo, también dijo que está al tanto del problema y está trabajando con su velocidad habitual en la actualización del sitio Blobs Checker, para que pueda identificar este problema en el futuro.

Cuidado con eso pronto!

Actualización: el sitio 1Conan's Blobs Checker ahora se actualiza para verificar la clase de dispositivos de los blobs con el dispositivo seleccionado. Esta herramienta facilita la verificación de sus blobs y tiene la ventaja de no requerir que descargue IPSW!

¿Tus gotas son buenas y están podridas? ¿Necesitas alguna aclaración? Avísame abajo.