Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: jaxoR en 27 Abril 2015, 01:50



Título: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: jaxoR en 27 Abril 2015, 01:50
Bueno, programo en C# (Aplicaciones comerciales mas que nada). Les voy a hacer CrackMe's mas que nada para aprender a proteger mis aplicaciones (a la mayoría las protejo con HWID con MySQL, pero nose que tan seguro es...).

Les dejo este pequeño y muy simple CrackMe, es muy, pero muy básico y extremadamente fácil (Para los que recién empiezan).

Simplemente tienen que ingresar un código y este les va a dar el mensaje si lo resolvieron o si no lo hicieron.

Link: http://www.mediafire.com/download/8qxk7pk84c3hr6j/CrackMe1.exe (http://www.mediafire.com/download/8qxk7pk84c3hr6j/CrackMe1.exe)

Saludos


Título: Re: [Reto] CrackMe I
Publicado por: RDGMax en 27 Abril 2015, 02:25
332112310

30 Segundos sin exagerar


Título: Re: [Reto] CrackMe I
Publicado por: jaxoR en 27 Abril 2015, 03:59
332112310

30 Segundos sin exagerar

Creo que tengo que seguir trabajando en ello :P


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: tincopasan en 27 Abril 2015, 06:17
RMax:
          Muy bien!ahora, supongo que llegate a esto:
Código
  1. private void button1_Click(object sender, EventArgs e)
  2.        {
  3.            string text = "";
  4.            string str = "";
  5.            int i = 0;
  6.            int length = 0;
  7.            text = this.textBox1.Text;
  8.            length = text.Length;
  9.            if ((length <= 7 ? true : length >= 10))
  10.            {
  11.                MessageBox.Show("Casi lo logras :(", "Error", MessageBoxButtons.OK, MessageBoxIcon.Hand);
  12.            }
  13.            else
  14.            {
  15.                for (i = length; i > 0; i--)
  16.                {
  17.                    str = string.Concat(str, text[i - 1]);
  18.                }
  19.                i = length;
  20.                if ((str[length - 1] % '\u0003' != 0 ? true : str[0] % '\u0004' != 0))
  21.                {
  22.                    MessageBox.Show("Casi lo logras :(", "Error", MessageBoxButtons.OK, MessageBoxIcon.Hand);
  23.                }
  24.                else
  25.                {
  26.                    MessageBox.Show("Lo lograste - FELICIDADES!", "Felicidades", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
  27.                }
  28.            }
  29.        }
  30.  
o así en vb
 If (If(str(length - 1) Mod Strings.ChrW(3) <> 0, True, str(0) Mod Strings.ChrW(4) <> 0)) Then

podrías explicar como lo resolviste para los que estamos aprendiendo!

Saludos

Mod: Debes usar GeSHi para publicar código


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: Arkangel_0x7C5 en 27 Abril 2015, 10:41
BaaaaaaD

yo lo he resuelto usando el ILSpy para sacar el codigo fuente y ya solo es mirar el codigo

Saludos



Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: MCKSys Argentina en 27 Abril 2015, 18:11
BaaaaaaD

yo lo he resuelto usando el ILSpy para sacar el codigo fuente y ya solo es mirar el codigo

Saludos

Creo que el autor dejó más que claro que el reto era muy sencillo de resolver...


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: RDGMax en 27 Abril 2015, 20:09
Para auto superarse la proxima un crackme/serialme de 60 segundos  :laugh:


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: jaxoR en 27 Abril 2015, 22:33
Disculpen mi ignorancia, pero tiene gracia mirar el código fuente con el ILSpy? Yo pensé que el reto estaba en sacarlo usando un debugger, de otra cualquier crackme hecho en VB o C# sería resuelto mirando el código.

Para auto superarse la proxima un crackme/serialme de 60 segundos  :laugh:

Por algo se empieza  :silbar:


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: MCKSys Argentina en 27 Abril 2015, 23:02
Disculpen mi ignorancia, pero tiene gracia mirar el código fuente con el ILSpy? Yo pensé que el reto estaba en sacarlo usando un debugger, de otra cualquier crackme hecho en VB o C# sería resuelto mirando el código.

No tiene gracia, pero es lo primero que se hace.

Recuerda que aquí no hay reglas (como en el "mundo real"). Por supuesto, a menos que el reto las imponga (que sólo sirven para hacer el reto más divertido).

El cracking se trata de romper protecciones y para ello, se usa todo lo disponible.

Si haces algo en .NET, mas te vale usar la proteccion mas intrincada que encuentres, de lo contrario reflector u otra tool de la línea, te despedazará el soft en segundos...

Saludos!


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: tincopasan en 28 Abril 2015, 00:15
1) concuerdo con MCKSys, en el reversing todo vale, hasta en mi caso prefiero parchar y no perder tiempo en buscar seriales.
2)Está bien que programes y subas tus crackmes, no importa si alguien lo hace en 10 segundos, otros lo usaràn para aprender y ese es el mayor objetivo de este foro, no ver quien es el mejor.
Sigue programando pero salvo que lo aclares para diversión cada cual lo hará a su manera.
3)¿De qué sirve resolverlo en 30 segundos sino se comparte ese conocimiento? Para egos hay otros foros mejores.


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: RDGMax en 28 Abril 2015, 02:12
Pienso que nadie se puede anojar porque le resuelvan su reto en 30 segundos.

Y si... En otros foros me consideran

http://forum.exetools.com/member.php?u=35899


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: jaxoR en 28 Abril 2015, 03:29
Que no se mal interprete, no me enoje ni nada, es la primera vez que diseño crackmes


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: tincopasan en 28 Abril 2015, 03:31
sin lugar a dudas no creo que nadie se enoje por que le resuelven un crackme aunque sea en 1 seg., pero la burla o el sarcasmo para alguien que está aprendiendo y participando está de más.
Bien por tí si en otros foros te consideran.
por si alguien que está intentando aprender no lo resolvió es como aclaró el autor muy fácil.
Se puede leer el código con cualquier desesamblador de net y en las funciones del botón que ya puse más arriba está la respuesta:
un largo determinado entre mayor que 7 y menor que 10 o sea 8 ó 9 y que solo cumpla la condición que el primer número sea divisible por 3 y el último divisible por 4 para que ambos den 0, los números intermedios pueden ser cualquiera.


Título: Re: [Reto] CrackMe I (Nivel: Básico / SuperFácil)
Publicado por: Arkangel_0x7C5 en 28 Abril 2015, 20:21
Creo que el autor dejó más que claro que el reto era muy sencillo de resolver...
Yo solo dije como lo resolvi....