2011-11-18 15 views
11

Cada iPhone tiene un NORID (8 bytes) & CHIPID (12 bytes) exclusivo para cada teléfono.iPhone 4 Desbloqueo. NCK-Bruteforce Research

  • ¿Dónde se almacena esto? ¿NI? seczone? ¿Se puede tirar?

Un iPhone requiere un NCK para desbloquear. Por lo que entiendo, NCK tiene 15 caracteres.

  • ¿Es numérico o alfanumérico alfa?

El token de seguridad para comprobar si el NCK es válido se almacena cifrado en + 0x400 en la zona secundaria.

  • ¿Es esto correcto?

Sobre la base de lo que he leído del blog de Dogbert, el token de seguridad se ha creado usando un método similar al siguiente pseudocódigo:

deviceKey = SHA1_hash(norID+chipID) 

nckKey = custom_hash(norID, chipID, SHA1_hash(NCK), deviceKey) 

rawSignature = generateSignature(SHA1_hash(norID+chipID), SHA1_hash(chipID)) 

Signature = RSA_encrypt(rawSignature, RSAkey) 

security token = TEA_encrypt_cbc(Signature, nckKey) 
  • ¿Es el pseudocódigo correcta? Si es así, ¿cuál es el hash personalizado que se está utilizando? ¿Qué se está utilizando para generar rawSignature? ¿Cuál es el RSAKey que se está utilizando? ¿Es una clave pública que se puede encontrar en el teléfono?

Si el pseudocódigo anterior es CORRECTO. Entonces tendríamos que aplicar fuerza bruta a todas las combinaciones de 15 caracteres para encontrar la clave NCK correcta ¿no? Porque, a pesar de que podemos recuperar el NORID y el CHIPID, no podremos utilizar esa información para acortar la cantidad de caracteres que necesitamos encontrar.

  • ¿Correcto?

Las nuevas generaciones de iPhone OS contienen un wildcardticket que se genera durante el proceso de activación.

  • pero esto no debería ser un problema para generar una vez que tengamos el NCK ¿verdad? ¿Correcto?
+0

Me salteó del Apple-Stack Exchange, diciendo que esta es una pregunta relacionada con la programación. Así que supongo que lo preguntaré aquí. – d123

+0

[El equipo de desarrollo de iPhone] (http://blog.iphone-dev.org/) estaba trabajando en este tema de NCK, también debería buscar en su blog para ver si publicaban algo. eso podría ayudarte. También [según] (http://api.twitter.com/#!/MuscleNerd/statuses/45811752289579008) a uno de sus miembros, el NCK tiene solo 40 bits. – Nasreddine

+0

Hola, sí sé que estaban trabajando en ello. Pero no hay más detalles, estoy buscando más detalles técnicos, como qué algoritmos se utilizan, qué se ha hecho, cómo llegaron a figurar 40bits. He intentado twitter pero todavía no hay respuesta. La cuestión es que, si el algoritmo anterior sobre el que leí es correcto, entonces tener NORID y CHIPID no va a ayudar, y aún así tener que aplicar fuerza bruta a los 15 caracteres – d123

Respuesta

4
  1. El NOR ID es el ID de chip de hardware quemado en el chip de banda base del dispositivo. No sé de dónde sacas los 8 bytes, pero en realidad está grabado en el chip y el tamaño es de 64 bytes para iPhone 3G y 128 bytes para el iPhone 3GS.

  2. El NCK tiene 15 dígitos (base 10 por lo que no es alfanumérico). es decir. el NCK máximo sería 999999999999999

La clave del dispositivo es incorrecta.

Se debería leer:

deviceUniqueKey = SHA (NCK + CHIPID + Norid)

teaEncryptedData = & seczone [0x400]

rsaEncryptedData = TEA_DECRYPT (teaEncryptedData, deviceUniqueKey)

validRSAMessage = RSA_DECRYPT (rsaEncryptedData, rsaKey)

Cuando su producto NCK Si tiene un mensaje RSA válido, ha encontrado el NCK correcto para desbloquear su dispositivo.

+1

Hola, Chris, gracias por tu respuesta, ¿podrías indicarme dónde obtuviste tu información? También la pregunta del millón de dólares, en este momento podemos recuperar toda la información necesaria del iPhone, por lo que sería posible aplicar fuerza bruta al NCK ¿verdad? Quiero decir que tengo a disposición al menos 100 unidades conectadas en red, puedo escribir un código de distribución para facilitar la fuerza bruta, y con algunos ajustes de los algos no deberíamos tomar mucho tiempo para obtener una clave de 15 dígitos. Solo tengo curiosidad por qué no está siendo considerado por la comunidad de desbloqueo. – d123

+0

La razón principal es porque un exploit de nivel de arranque es necesario para obtener los datos de seczone. No ha habido uno público desde el iPhone 4. –

0

Aquí es el python script que puede descifrar la memoria de banda base iPhone por lo que será capaz de obtener todas las fichas de NCK como

identificación de CHIP NOR ID IMEI calla té hashes

Pero este guión era usado solo para viejas bandas base (chipset S-Gold) pero siempre puede hacer las suyas propias. También aquí hay algunas maneras de volcar la banda base de iphone en el archivo usando iPhone core dump function o mediante otro script como dumper NOR. Espero que esta ayuda

Cuestiones relacionadas