elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Brute Force en Python hacia un DMG
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Brute Force en Python hacia un DMG  (Leído 1,984 veces)
AngelFire

Desconectado Desconectado

Mensajes: 118


WTF :)


Ver Perfil WWW
Brute Force en Python hacia un DMG
« en: 21 Febrero 2017, 09:59 am »

Buenas, sin saber mucho de python se me ha ocurrido hacer este script para sacar la key de un fichero .dmg (058-07911-219.dmg) contenido en un fichero .ipsw (iPad2,1_9.0_13A344_Restore.ipsw). Algo que según tengo entendido por la cantidad combinaciones es imposible de romper en la actualidad ya que hablamos de una longitud de 72 caracteres en formato hexadecimal. Por lo cual he tomado un random en el incremento del conteo para poder jugar con el factor suerte que no esta de nuestro lado  ;D si nos vamos a probabilidades.
 
Evidentemente la key de ese fichero no se obtuvo mediante fuerza bruta.

La duda:
¿Si por casualidad de la vida se generará la key valida de 72 caracteres en formato hexdecimal (f44e1a776ad2f2f2d8ecc2befee610ea4536a37713a83db0396835c74c1b2af3343fd433), como notificar o detener el script?

Código
  1. import time
  2. import os
  3. import random
  4.  
  5. def gen_all_hex():
  6.    i = 0
  7.    while i < 16**72:
  8.        yield "{:072X}".format(i)
  9.        #i += 1
  10.        i += random.randint(1, 1)
  11.        time.sleep(.1) # Wait 100ms
  12.  
  13.  
  14. for s in gen_all_hex():
  15.    print (s)
  16.    os.system('%s %s' % ('dmg.exe extract 058-07911-219.dmg 058-07911-219d.dmg -k', s))
  17.    #os.system('dmg.exe extract 058-07911-219.dmg 058-07911-219d.dmg -k f44e1a776ad2f2f2d8ecc2befee610ea4536a37713a83db0396835c74c1b2af3343fd433')

Para mas información sobre lo que intento con mi absurdo script pueden referirse a https://www.theiphonewiki.com/wiki/Firmware_Keys/9.x

Gracias por leer y cualquier comentario o contribución es bienvenida. :rolleyes:


« Última modificación: 22 Febrero 2017, 04:15 am por Eleкtro » En línea

Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.788



Ver Perfil
Re: Brute Force en Python hacia un DMG
« Respuesta #1 en: 22 Febrero 2017, 05:07 am »

¿Si por casualidad de la vida se generará la key valida de 72 caracteres en formato hexdecimal (f44e1a776ad2f2f2d8ecc2befee610ea4536a37713a83db0396835c74c1b2af3343fd433), como notificar o detener el script?

Hola.

Desconozco de donde sale ese misterioso proceso "dmg.exe", pero en el hipotético caso de que haya sido desarrollado profesionálmente entonces el proceso debería terminar su ejecución devolviendo un código de salida (0, 1, etc) correspondiente al estado exitoso o no de la extracción. Asumiendo esto, entonces puedes resolver el problema por ejemplo haciendo uso del módulo subprocess para evaluar el código de salida de dicho proceso y terminar el ciclo en caso de que el código de salida sea satisfactorio (dicho código de salida suele ser un cero, pero dependiendo del programador puede especificar un código específico, distinto)...

Ejemplo:
Código
  1. # -*- coding: UTF-8 -*-
  2.  
  3. import os, random as rand, subprocess as sp, sys, time
  4.  
  5. def gen_all_hex():
  6.  i = 0
  7.  while i < 16**72:
  8.    yield "{:072X}".format(i)
  9.    #i += 1
  10.    i += rand.randint(1, 1)
  11.    time.sleep(.1) # Wait 100ms
  12.  
  13. for s in gen_all_hex():
  14.  print (s)
  15.  proc   = sp.Popen('%s %s' % ('dmg.exe extract 058-07911-219.dmg 058-07911-219d.dmg -k', s), stdout=sp.PIPE)
  16.  stdout = proc.communicate()[0]
  17.  ret    = proc.returncode
  18.  if ret == 0:
  19.    print 'Successful extraction!'
  20.    break
  21.  
  22. sys.exit(0)

¡Saludos!.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
brute force en vb
Programación Visual Basic
luidin 8 6,274 Último mensaje 6 Julio 2007, 14:03 pm
por 3k1n0x
HTTP Brute-Force con Python
Programación General
kiriost 1 4,384 Último mensaje 9 Octubre 2011, 05:03 am
por Mr.Blue
Ataque brute force en python
Análisis y Diseño de Malware
lapcpc 4 4,485 Último mensaje 12 Diciembre 2011, 17:36 pm
por Elemental Code
Tutorial atques de Brute-Force hacia cuentas de YouTube
Hacking
RabyzHacks 0 2,437 Último mensaje 21 Diciembre 2013, 16:33 pm
por RabyzHacks
AYUDA: Brute Force Con Python
Scripting
RedLucky 0 1,887 Último mensaje 12 Diciembre 2017, 03:32 am
por RedLucky
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines