Autor
|
Tema: crackme 1 y 2 (Leído 14,749 veces)
|
|
yardbird_miguel
Desconectado
Mensajes: 82
Long Live Rock ´N´Roll
|
1ero resuelto
Contraseña por privado
Editado: Mañana miro el segundo
Suerte
|
|
« Última modificación: 18 Octubre 2007, 01:17 am por yardbird_miguel »
|
En línea
|
...In my heart, In my mind, in my soul I was looking for you..."July Morning" Uriah Heep
...ohhhhhh, ohhhhh, ohhhhh, ohhhhh, all you need is Rock ´N´Roll..."All You Need Is Rock ´N´Roll" White Lion
...Te suplico que me avises si me vienes a buscar, no es porque te tenga miedo, solo me quiero arreglar... "Cancion Para Mi Muerte" Sui Generis
|
|
|
karmany
|
Después de echarles un vistazo, voy a añadir (aunque no sean del autor de este post), estos dos crackmes ya que son muy interesantes para Newbies: -El crackme 1 porque del (1-10) tiene de dificultad 0. -El crackme 2 es muy interesante ya que trabaja con variables de tipo Double, y aunque es muy sencillo, utiliza los registros de la pila (hay 8, ST0-ST1-...-ST7) y puede despistar. Incluso hay una instrucción que hace referencia a un Qword = 8 bytes. Todo esto de las operaciones con punto flotante es muy interesante... y difícil. Este crackme nos puede ayudar a comprender un poco todo este tema.
Hay un doc muy interesante sobre este tema del punto flotante. El enlace está en el post-it de "Links Interesantes".
|
|
|
En línea
|
|
|
|
karmany
|
Sólo para los recién iniciados en el Arte de la Ingeniería Inversa...!! A ver si alguien (abstenerse los foreros con experiencia) se atreve a hacer un pequeño tutorial de cómo resolver el crackme1. Con 2-3 lineas sobra Pd. Si alguien sabe cómo resolverlo, pero no está seguro de hacer bien el tutorial o tiene dudas.... un mp. Es muy sencillo, no podemos dejar éste sin solucionar... Un saludo karmany
|
|
|
En línea
|
|
|
|
Vingilot
Desconectado
Mensajes: 27
|
Hola!
Apenas llevo unos pasos en esto del cracking, proponiais que un novato en el tema propusiera un tutorial, he intentado hacerlo pero me ha resultado imposible.
Averigüe cual es la clave para entrar ya que venía como unicode al abrirlo con el OllyDBG, estuve leyendo las lecciones, de ricardo narvaja y en su primer crakme cambio un salto condicional por uno sin condición y ese crackme lo resolvi, trate de hacer lo mismo con este pero no ha dado resultado nada de lo que intente, me centre en esta parte del código:
00401E7B CMP EAX,EDI 00401E7D JGE SHORT Crackme1.004017C8
Que salta a la parte donde pone el unicode.
Si pueden darme algún consejo seguire con ello, entiendo que es un crakme muy sencillo incluso para iniciados pero bueno poco a poco se empieza
Un saludo.
|
|
|
En línea
|
|
|
|
karmany
|
Hola Vingilot, bienvenido.
Muy bien por tu interés, es la forma de aprender. Cualquier duda que tengas te echaremos un cable.
Voy a echar un vistazo al crackme1 a ver dónde fallas... luego vuelvo..
Un saludo karmany
|
|
|
En línea
|
|
|
|
karmany
|
Acabo de echarle un vistazo, te voy a explicar dónde fallas.
Mira efectivamente estás en la zona correcta. Sólo hay una subrutina que comienza en: 401E00 PUSH EBP y termina en 401FC0 RETN
Ése salto en el que te has parado, cuando examines más programas compilados en Visual Basic, verás que es un salto característico y que normalmente siempre salta. No tiene nada que ver con el serial ni con nada de eso, pero eso ya lo verás cuando examines varios programas en Visual Basic.
Continúa después de ese salto, no lo modifiques y sigue el código y seguidamente verás una función típica de Visual Basic: __vbaStrCmp
Ya no te digo más... jeje
Bueno si sigues teniendo dudas, coméntalo Un saludo karmany
|
|
|
En línea
|
|
|
|
sempus
Dakishimetai no ni...
Colaborador
Desconectado
Mensajes: 2.391
GJDAM 愛している
|
00401E7B CMP EAX,EDI 00401E7D JGE SHORT Crackme1.004017C8
estas bien,yo comenze con esto pero lo deje por falta de tiempo, recien hoy me puse a verlo y el primero esta demasido facil despues de poner tu BP en 00401E7B ya lo tienes cocinado cuando olly se detenga presiona f7 y luego f8 hasta llegar a 00401E9A (Que es lo que dijo karmany "vbastrcmp) cuando estas alli ya lo hiciste todo strcmp=instruccion para comparar cadenas solo tienes que ver que hay en la parte inferior derecha (no me acuerdo como se llama) no se si con esto violo regla alguna si me equivoco por favor hacermelo saber
|
|
|
En línea
|
...si la tuviera detendría el tiempo para verla como lo hago en este momento y seria feliz eternamente... Descarga openSUSE
|
|
|
Vingilot
Desconectado
Mensajes: 27
|
Gracias por su ayuda tanto de karmany como de sempus, la verdad es que estaba obcecado con ese CMP y no vi __vbaStrCmp, tengo ligeros conocimientos en programación en C así que esto lo vi ya más claro.
Corri el programa varias veces para ver por donde iba el "chico malo" y por donde el "chico bueno", y el salto estaba en:
00401EDA JE SHORT Crackme1.000401F1F
Cuando saltaba mostraba el mensaje de error, (al cual le tengo ya algo de manía).
Trate de poner alguna instrucción para que no saltase pusiese lo que pusiese el usuario pero de tan verde aún no conozco que comandos usar, así que trás pelearme con él un rato decidi jugar sucio, no quiero que saltes? pues te borro.
00401EDA CMP EAX,EAX
Si lo sé me direis que es burdo y una chapuza que es una instrucción que no hace nada pero bueno funciona ^^.
Un saludo a todos y muchas gracias por el tiempo que emplean, si más adelante tengo mejores bases haré encantado el tutorial pero la verdad es que aún hago las cosas en plan prueba error y no quiero liar a la gente.
Una vez más gracias. Me gusta el mundillo este de la Ingeniería Inversa.
|
|
|
En línea
|
|
|
|
sempus
Dakishimetai no ni...
Colaborador
Desconectado
Mensajes: 2.391
GJDAM 愛している
|
00401EDA JE SHORT Crackme1.000401F1F
Cuando saltaba mostraba el mensaje de error, (al cual le tengo ya algo de manía).
Trate de poner alguna instrucción para que no saltase pusiese lo que pusiese el usuario pero de tan verde aún no conozco que comandos usar
00401EDA JE SHORT Crackme1.000401F1F efectivamente aca tienes que cambiar el JE por un JNZ y luego guarda los cambios y cuando el usuario digite algo (sea lo que sea) dara el mensaje correcto a menos claro que digite de suerte la clave que es correcta entonces dara error. solo ve a esa direccion y presiona barra espaciadora, luego donde dice JE cambialo por JNZ y presiona el boton assemble, luego cierra la ventanita y da click derecho y "copy to ejecutable-selection" cierra la ventana que se abre luego y da "si" coloca el nombre que quieres y da guardar, eso es todo.
|
|
|
En línea
|
...si la tuviera detendría el tiempo para verla como lo hago en este momento y seria feliz eternamente... Descarga openSUSE
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Crackme
Ingeniería Inversa
|
byebye
|
8
|
6,026
|
6 Julio 2003, 11:12 am
por shoulck
|
|
|
Os dejo un crackme, mi primer crackme ^^
« 1 2 »
Ingeniería Inversa
|
frankener1986
|
14
|
13,648
|
14 Agosto 2006, 00:59 am
por sircid
|
|
|
[CrackMe] - D-CrackMe by .:WindHack:.
Ingeniería Inversa
|
.:WindHack:.
|
3
|
4,268
|
26 Julio 2010, 23:45 pm
por .:WindHack:.
|
|
|
[CRACKME] Crackme 3 por MCKSys Argentina
« 1 2 3 »
Ingeniería Inversa
|
MCKSys Argentina
|
29
|
19,755
|
18 Enero 2013, 20:48 pm
por SITEA
|
|
|
[CRACKME] Crackme 4 por MCKSys Argentina
« 1 2 »
Ingeniería Inversa
|
MCKSys Argentina
|
14
|
13,837
|
6 Diciembre 2011, 02:46 am
por PeterPunk77
|
|