|
61
|
Programación / Ingeniería Inversa / Re: Como crackear "iapd" archivo del iphone
|
en: 25 Agosto 2010, 17:51 pm
|
de programas del "iphone" no tengo ni idea de como son, pero si son como los de PC para windows, y con un editor hexadecimal puedes modificarlo, prueba a buscar la cadena 68 88 13 00 00
68 es el caracter hexadecimal del PUSH (empujar un valor para realizar un evento) 88 13 00 00 es la cadena hexadecimal de 1388 que en decimal equivale a 5000 milisegundos = 5 segundos.
De todas formas sin un debuguer no puedes estar seguro de que corresponde a un evento timer, pudiendo ser cualquier valor 5000 que se utilize en otros eventos ó partes del programa.
De encontrarla sería probar a cambiarla para mas segundos conformes necesites ó bien ponerla a cero, 68 00 00 00 00, con lo que se suelen deshabilitar el evento timer.
No sé en que lenguaje están hechos los programas para el iphone, así que bajo tu responsabilidad con lo que cambies, debes estar muy seguro, y de ser compatible con windows, puedes debuguearla con Ollydbg y asi puede comprender algo mejor su codigo, y quizás puedas encontrar mejor lo que se debe cambiar.
|
|
|
62
|
Programación / Ingeniería Inversa / Re: Duda instrucciones POPAD/POPA
|
en: 24 Agosto 2010, 21:10 pm
|
Buenas chicos, Hace poco que estoy leyendo los manuales de Cracking desde cero de Ricardo Narvaja y me surgio una duda. POPA equivale a: pop DI, SI, BP, SP, BX, DX, CX, AX (los valores recuperados correspondientes a ESP y SP, no se colocan en los registros sino que se descartan). Alguien podria explicarme lo que esta subrayado? No termino de entender lo que se descartan. Un saludo y gracias La explicación la tienes aqui La pila sigue la norma LIFO (last in, first out) y funciona como una pila de platos. Si colocamos uno a uno cinco platos sobre una pila, y luego los vamos cogiendo, tomaremos en primer lugar el último que hayamos puesto, luego el penúltimo etc., hasta llegar al que hayamos puesto en primer lugar, que será el último que cogeremos. La dirección para acceder al plato superior de la pila, es decir al valor en que podemos acceder en cada momento, está contenida en un registro (ESP) y, lógicamente, va variando según se van añadiendo o retirando valores.
Como puedes comprender en ESP (y SP) se pone el valor al que se puede acceder en cada momento y como va variando conforme se añaden o recuperan valores, es por lo que este no debe cambiarse al recuperarse los valores de los otros registros guardados. Espero que ahora lo tengas claro. Saludos.
|
|
|
64
|
Programación / Ingeniería Inversa / Re: modificar en delphi quien me ayuda
|
en: 21 Agosto 2010, 19:40 pm
|
Hola naiber, ya estamos por aqui devuelta de las vacaciones, veo y creo que practicamente tienes resuelto el tema, y que las opciones que quieres habilitar pienso que de entrada no te las da habilitadas porque no tenemos los equipos perifericos necesarios conectados al puerto COM y/o equipos auxiliares para el desempeño de las funciones completas del programa. Dependiendo de los perifericos se asigna un valor de puntero en memoria, que luego se comprueba para habilitar las configuraciones de las opciones del programa De todas formas si quieres tener activadas dichos botones de radios del FORM que indicas, puedes hacerlo forzando el valor en memoria de la constante de referencia, a la que si le hacemos una busqueda de todas las referencias a dicha constante, nos da el siguiente resultado de la imagen de abajo, y dependiendo del valor que ahí se guarda y que se obtiene tras una función de comprobación de versión, (fijate que es lo que hay antes de que la variable EAX tome el valor correspondiente), tras ese proceso sale el valor en EAX, siendo 0 cuando no tenemos nada conectado ó configurado en los perifericos (si no me equivoco), y si lo forzamos para que tome el valor 1, 2 ó 3 (con cada uno de esos valores se te habilitan algunos ó todos los botones de radios, en los que estás interesado). Saludos.
|
|
|
67
|
Programación / Ingeniería Inversa / Re: Ayuda con este software, no se encuentra en ninguna parte
|
en: 19 Agosto 2010, 07:15 am
|
Bueno en "este caso" no tiene mucho que ver ni el hacking ni el cracking dentro de la base de datos fv2 .mdb tienes unas tablas con claves válidas. (el programador ha sido un poco descuidado). para verlas e imprimirlas, abres la base de datos con microsof office access, y lo configuras en Herramientas -> Opciones -> Pestaña Ver -> Mostrar Objetos ocultos. (y pulsas en Aplicar y Aceptar). ahora en tablas ya verás una con el nombre de MSysHASH y otra con el nombre de MSysHASH2, en la primera tienes una lista de claves para uso de 90 dias y en la segunda para uso de 420 dias, (utiliza las de una tabla ó las de la otra, según mas te convenga). P.d. Si un mismo dia lo registras dos veces para aumentar los dias, te dára un mensaje de error por duplicidad en indices, y es porque la fecha de registro tiene que ser unica sin duplicados, para eso tendrias que borrar el registro anterior en la tabla MSysLic Salud y suerte.
|
|
|
68
|
Programación / Ingeniería Inversa / Re: Detectar Packers
|
en: 31 Julio 2010, 19:26 pm
|
Hola Revolutions, en el IDR tienes practicamente lo mismo que en DeDe ... (pero está más actualizado con las definiciones por ahora hasta la versión Delphi 2009) ... En la ventana de formularios, puedes seleccionar en modo texto o en modo form, para ver los offset debes ponerlo en modo "form", y seleccionas cualquiera de los formularios del programa analizado, haces doble click sobre el nombre del form en cuestion, y te saldra su diseño grafico en pantalla. Bueno pues en el formulario, haces click derecho sobre el control del formulario que quieras controlar (por ejemplo el botón de OK, un Timer, etc), o sobre una parte vacia del formulario donde podras selecionar los distintos eventos asociados a este form, una vez selecciones el evento que quieres ver, en la ventana de atrás "CodeViewer (F6)", verás el codigo y los offset, (pulsa escape para quitar el form de la pantalla y te deje ver el texto).
|
|
|
|
|
|
|