Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: greenvati en 13 Diciembre 2007, 04:55 am



Título: como descubrir el algoritmo y crear un keygen
Publicado por: greenvati en 13 Diciembre 2007, 04:55 am
Hola cual es el truco o procedimiento para desarrollar un Keygen para programas, basados en algoritmos, es decir como se descubre un algoritmo de un programa x para que sea valido y todo eso.

como se hace todas esas combinaciones.

Saludos


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: Ferсhu en 13 Diciembre 2007, 06:14 am
y simple miras el codigo vez lo q hacee y creas un programa q cree numeros en base a ese algoritmo. o q haga lo inverso del algoritmo depende como sea.


ejemplo tonto:

miras el algoritmo y descubris q hace algo asi:

Código:
leer (key)

if (key%789456==0) Registrado
else no registrado



Entonces el keygen seria..., hay muchas formas, pero eleji esta:

Código:
key=random(10000000)// tira numeros aleaterios 
if (key%789456==0) mostrar(key)

y te va tirando codigos validos para el programa q use ese algoritmo

Nota: eso no es ningun lenguaje jaja aclaro  :P


Saludos!!


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: Shaddy en 13 Diciembre 2007, 08:12 am
jajajajja tambien podrías hacer un keygen que hiciese..

Citar
n = random(100);
key = 789456*n;
printf ("Clave: %ld",key);

xDxDxD en vez de crear 2000 claves hasta que sean múltiplos del número, generas un randomizado del número y lo multiplicas no xd?

Salu2..


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: Ferсhu en 13 Diciembre 2007, 17:37 pm
claro eso es a lo q yo me referia con...

Citar
creas un programa q cree numeros en base a ese algoritmo. o q haga lo inverso del algoritmo depende como sea.

yo hice como el algortimo y vos como la inversa.

q es obvio q es mejor el segundo ya q no desperdicia tiempo.


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: Shaddy en 14 Diciembre 2007, 00:21 am
y si, que importa si el resultado es igual no? :O), somos crackers :P, todo vale :P.

Salu2..


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: x4uth en 15 Diciembre 2007, 21:42 pm
el resultado no es =, el de FeRcHu podria estar toda la vida y no darte un serial valido, xk si la fuerza bruta es fea, si no la haces de manera sistematica es peor... en cambio la otra solucion te daria un serial en nanosegundos.


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: Shaddy en 16 Diciembre 2007, 13:39 pm
el resultado no es =, el de FeRcHu podria estar toda la vida y no darte un serial valido, xk si la fuerza bruta es fea, si no la haces de manera sistematica es peor... en cambio la otra solucion te daria un serial en nanosegundos.

No quiere decir que sea ni mas listo ni mas wapo.. simplemente que mi solucion es mejor :D.  :rolleyes:


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: Schencho en 29 Septiembre 2010, 20:45 pm
Tengo una duda parecida, ¿a partir de un número X de serial válidos se puede obtener el algoritmo que ha generado dichos serial? Es decir, el proceso inverso. ¿Exite algún programa que compare dichos serial y pueda generar ese algoritmo? ¿Cuantos serial válidos harían falta para encontrar el algoritmo? Porque supongo que si se puede hacer, cuantos más serial tengamos mejor.

Imagino que no es lo mismo tener 5 serial válidos de orden XXX-XXX-XXX que 5 serial de XXXXX-XXXXX-XXXXX-XXXXX. Cuantas más combinaciones se pueden generar, más serial válidos serán necesarios. Realmente estoy lanzando suposiciones porque no tengo mucha idea, pero pienso que se debería poder hacer el proceso inverso. Pasar de un número X de serial al algoritmo. Es evidente que lo mejor sería tener todas las combinaciones posible para hacerlo, claro la dificultad está es obtener el algoritmo partiendo de unos pocos serial.


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: MCKSys Argentina en 29 Septiembre 2010, 21:33 pm
Hola!

El tema es que si no le aplicas Ingenieria Inversa a la rutina que comprueba el serial, normalmente es CASI imposible determinar el serial correcto.

Por ej, si uno de los seriales validos tiene 6 caracteres, entonces tendras todas las combinaciones de caracteres imprimibles elevados a la 6 (lo cual es un numero muy grande). Si un proceso de brute force demoras 1 segundo por cada comprobacion, en unos años tendras tu serial...  :P

No hablar si el serial tiene un diccionario (listado de caracteres validos) o si para cada usuario/maquina hay 1 serial solamente. Con eso, te pasarias ese tiempo buscando 1 sola combinacion de caracteres.

En fin, lo mejor es analizar el programa, sacarle el algortimo, reversearlo y despues hacer el keygen...

De ultimas, siempre puedes parchear o hacer un loader  ;)

Saludos!


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: Schencho en 29 Septiembre 2010, 21:56 pm
MCKSys Argentina no entiendo muy bien lo que quieres decir, ¿que es practicamente imposible hacerlo?. Por ejemplo, si yo dispongo de 10 serial válidos que activan un programa, ¿a partir de esos 10 serial no podría sacar el algoritmo que los ha generado?


Título: Re: como descubrir el algoritmo y crear un keygen
Publicado por: MCKSys Argentina en 30 Septiembre 2010, 00:24 am
Creo que no. Si no reverseas el codigo, no lo creo factible.

Por supuesto, al menos que sea algo muy sencillo y progresivo.

De lo contrario, no le veo forma...  :)

Saludos!