Translate

viernes, 23 de febrero de 2018

Extraer TOKEN de un producto XIAOMI para usar su API desde IOS (Sin JailBreak)


1.       Hacer copia de seguridad del iphone con itunes en mono no cifrado


2.       Instalar el programa iBackup Viewer (http://www.imactools.com/iphonebackupviewer/)
Abrir el iBackup Viewer y seleccionar la última copia de seguridad (No debe tener un candado en ella)
Seleccionar estructura RAW


Seleccionar estructura de directorio


Buscar la carpeta: AppDomain-com.xiaomi.mihome, dentro tiene las carpetas library y Documents. En la derecha seleccionaremos Documents y la exportamos a nuestro PC (Por ejemplo al escritorio)


Nos crea la carpeta com.xiaomi.mihome que dentro tiene la Documents
Buscamos dentro de Documents el archivo xxxxxxxxxxxxx_mihome.sqlite (donde xxxxx es el núm. de ID de mi cuenta de Xioami que aparece en la parte de perfil de la APP de mi home)
3.       Instalamos el programa DB Browser para SQLite (http://sqlitebrowser.org/) y lo abrimos. Arrastramos la BBDD a este programa y se abrirá.
Vamos a la pestaña ejecutar SQL y en la ventana pegamos el sig texto:
select ZTOKEN from ZDEVICE where ZLOCALIP is "172.16.0.51"
Le damos al PLAY


Y en la ventana inferior nos muestra el TOKEN, podemos copiarlo con el raton.
NOTA: En lugar de sacar solo un token podemos sacar todos los de la SQL según su ip en una tabla con:
select ZTOKEN,ZLOCALIP from ZDEVICE
Copiando todas las filas y las columnas podréis pegarlo en un Excel.
Las versiones viejas de la app Mi HOME devuelve un token de 32 caracteres. Ese es el token que buscáis. Mientras que las apps nuevas de MI HOME devuelven en este caso un token de 96 caracteres, es un token cifrado que requiere hacer un paso extra.
En el Excel podéis contar el número de caracteres con =LARGO(A2)
4.       Vete a la URl http://aes.online-domain-tools.com/
Y para cada token que precises podrás descomprimirlo desde ella. Solo has de configurarla así:

** Input type: text
Input text (hex): your 96 character key
Selectbox Plaintext / Hex: Hex
Function: AES
Mode: ECB
Key (hex): 00000000000000000000000000000000
Selectbox Plaintext / Hex: Hex





Y en la parte inferior nos mostrará el token de 32 caracteres que buscamos. Aparece abajo en el cuadro de la derecha las 2 primeras líneas.



Podéis pegarlo es un TXT y luego al Excel y contar que es de 32 caracteres para aseguraros de que es lo que buscáis.

Si buscas otras opciones para sacar el token como por ejemplo un ios con jailbreak, un android, etc... no dejes de visitar el link https://github.com/jghaanstra/com.xiaomi-miio/blob/master/docs/obtain_token.md

Saludos

No hay comentarios:

Publicar un comentario