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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: 1 2 [3] 4
21  Programación / Ingeniería Inversa / Re: CrackMe 2.0 en: 7 Marzo 2014, 18:37 pm
El codigo fuente del keygen demuestra que esos valores los he encontrado.  :P

Asi es. Cometi el error de obtener un nombre en base a una key.

De todas formas, si se hace lo mismo que lo que hace el crackme, el keygen esta listo en 2 segundos...  :P

Si nadie mas intenta el keygen, subo el keygen correcto...  ;)

Saludos!

No mire mucho en codigo fuente porque no programo en VB, cuando avanze mas en C++ pienso aprender VB, pero por ahora no se ni crear un cuadro que se llame Form1, y eso que viene por default (? ajaj

PD: Yo intente hacer el keygen a base del programa, para aprender (osea, a base de ingenieria inversa) y me costo a pesar de tener una "base", osea, de saber mas o menos lo que hacia el programa, mas que todo porque no entendía mucho las funciones de las operaciones matemáticas y las tuve que buscar.

S2
22  Programación / Ingeniería Inversa / Re: Ayuda programa en: 7 Marzo 2014, 18:32 pm
Bueno después de mucho mirar y mirar, lo he conseguido. Gracias a todos.
Lo único que tenia que hacer era cambiar el salto a otra dirección después del mensaje, lo tenía delante de los ojos y no he sabido verlo. Gracias de nuevo.


Suerte para tus futuros cracks :p

S2
23  Programación / Ingeniería Inversa / Re: CrackMe 2.0 en: 7 Marzo 2014, 02:32 am
A que trampa te refieres?

AQUI DARE UN DATO DEL KEYGEN, SI QUERES HACERLO VOS NO LO LEAS:

A que si el serial name o si el serial en si, es menor que o mayor que cierto numerito magico, no funciona :p

PD: Aunque las keys que me diste funcionan (creo yo xd) hay ciertas keys que faltan (ej el key del name 4898 falta) :p

S2

EDIT: OK, lo probe con mi keygen y hay name-key de tus seriales que a mi me dice que son invalidos mi keygen, pero la app si los acepta, okok, trabajare en poner a punto mi keygen antes de criticar el tuyo xD

EDIT2: Bien ahora si lo arregle, y veo que faltan BASTANTES seriales en tu keygen, igual el mio lo hice pidiendo que ingrese un serial_name y luego dandole la key de ese serial name, luego me hablas mp si queres, y lo hablamos, pero por ahora te dejo que vos descubras como arreglar tu keygen si queres :p

S2
24  Programación / Ingeniería Inversa / Re: CrackMe 2.0 en: 6 Marzo 2014, 23:33 pm
Bueno, me puse a mirar el crackme y esta sencillo.

Hice un keygen en VB6, el cual genera todas las posibles combinaciones nombre-key (las cuales son 3584  ;)).

Creo que lo mejor que tiene es la parte de timing como antidbg, pero se patchea rapidamente.

Mi opinión es como la que haz colocado: 2/10

Saludos!

PD: Te envio link de descarga del keygen por MP.

Exelente!, ahí miro el mp y te agrego a la lista, igual tengo algo que testear del keygen antes de ponerte, porque tiene una que otra trampa, gracias por lo de la dificultad, me ayuda mucho :)

PD: A mi el KeyGen me costo sin tener el codigo fuente(osea sin usarlo) porque a pesar de saber lo que hacia, tube que investigar ciertas funciones de ASM que no sabia que eran xd

S2
25  Programación / Ingeniería Inversa / CrackMe 2.0 en: 6 Marzo 2014, 02:43 am
Hola, como les va? espero que muy bien!

Para mejorar y ver como funcionaba y distintas cosas ollydbg intente ir haciendo un crackme y irlo mejorando y a diferencia de el otro crackme, este esta bastante mas protegido, y con los fines que tiene, creo que podria tener su pequeña dificultad, en los metodos que pregunte el otro dia estoy trabajando, es un poco dificil xD

Especificaciones:

Lenguaje: C++

*Dificultad general: 1,5 o 2/10*

Peso: 200KB
Descarga: Mediafire

Probado en: Windows XP, pero estoy casi seguro de que funciona en cualquier windows, pero en un momento uso fflush asique olvidense de Linux :/

----------------------------
Retos:
1.Patchear para que acepte cualquier key.
2.Lograr obtener todas las keys posibles
3.Hacer un keygen
4. Divertirse.

Dificultades(segun yo jaja):
Patchear: 0,5-10
Obtener las keys: 1,5-10
KeyGen: 2-10
----------------------------

Cabe aclarar que me gustaria que me dijeran la dificultad que tuvieron ustedes, porque quiero saber que dificultad tiene tiene

S2

Descarga: https://www.mediafire.com/?3xjxi43nycv169b

PD: El codigo fuente talvez voy a modificarle cosas, "hacerlo un header" y ver que puedo hacer, si es que les parece que tiene una dificultad aceptable, esperaria hacer uno de 3 para eso, pero es medio cosa de romperse la kbza hacer eso.

Para aparecer en las listas mandarme un MP con la solucion.

Lista de los que los resolvieron(Obtubieron key):
-

Lista de los que los resolvieron(KeyGen):
-MCKSys Argentina
26  Programación / Ingeniería Inversa / Re: Ingeneria inversa .exe que era .jar en: 6 Marzo 2014, 02:23 am
Hola!

Cuando se ejecuta el EXE, deploya algo en el disco? Desconozco si el runtime de Java puede cargar una app desde la memoria directamente (como puede hacer .NET).

Quizás el jar este en el temp...  :P

Saludos!

Creo que puede, yo me acordaba que un juego lo hacia asi(minecraft) y su caperta estaba en la carpeta "AppData" (%appdata% desde ejecutar y entra) asique debe de poder, busca como dice MCKSys en la carpeta temporal y busca en appdata.

S2
27  Programación / Ingeniería Inversa / Re: Ayuda con Cabtv en: 5 Marzo 2014, 16:28 pm
Deberías seguir leyendo y leyendo hasta dejar de ser un novato, yo se muy poco de esto y tengo mis metas, pero uno debe conocer sus limitaciones, estas pidiendo que te lo crackeen, porque por lo que sabes aun no vas a poder ni empezar :p

S2, seguí leyendo y analizando crackmes y veras como luego si sabes por donde empezar :)
28  Programación / Ingeniería Inversa / Re: Ayuda con la API VirtualProtect para protejer un programa en: 1 Marzo 2014, 16:43 pm
VirtualProtect te serviría específicamente para aludir bp on memory, ya que estos dejan de funcionar cuando se modifica el permiso de una sección. Durante el arranque podrías ir cambiando los permisos, aun así quedan los BP int3 y hardware breakpoint, ahora en sí podrás mitigar el porcentaje de éxito de un ataque a tu aplicación aun así no esperes tener una aplicación incrackeable, es cosa de decir la palaba mágia MCKSys Argentina o Fly y el programa se autocrackea  y te da un keygen  :laugh:

Saludos y suerte

Pense que para lo que me servia era para bloquear los Int3, y los hadware breackpoints si me quedaban, pero bueno e.e

PD: Ya se que no puede ser incrackeable, en algun momento tengo que checkear la key, y alguien va a sber donde, pero la cosa es hacerlo complejo :p

Bueno, no programo en C++ por lo que no podría darte un ejemplo concreto en ese lenguaje.
Por otro lado, lo que puedes hacer es usar, por ej. el algoritmo Adler32 (el de zlib) para calcular el checksum de una parte de tu codigo (digamos, por ej., el sector de codigo que se encarga de comprobar el serial de tu aplicacion.).
Lo que haces es pasarle Adler a los bytes de ese codigo y guardas ese valor en alguna parte (puede ser en un solo DWORD o en varias partes. Mientras mas tedioso sea, mejor.)
Luego haces una función que verifique cada tanto ese codigo con Adler (el trigger lo elijes tu. Podria ser aleatorio.). Como te dije antes, puedes hacer un thread que verifique los bytes y si encuentra una diferencia, puedes setear un flag que haga que el programa se comporte de forma extraña, que haga calculos incorrectos, en fin, que se corrompa de forma "sutil" (eso es mejor a cerrar todo. Si cierras todo, el cracker se dará cuenta de que hay algo mal!)

Otra cosa que puedes usar es codigo automodificable/autoencriptable. Por ej. partes la rutina de registracion/verificacion en partes y cada parte se descifra antes de ejecutarse y la anterior se vuelve a cifrar.

Tambien convendria que no pongas todo el codigo junto. Como te dije antes, mientras mas tedioso, mejor para ti.

Otra idea es que pongas chequeos aleatorios al serial, que no esten en la rutina principal de registracion/verificacion, pero que sean necesarios para la correcta registracion del proggie.

En fin, hay millones de cosas que puedes hacer...  :P

Saludos!

Muchas gracias por todas las ideas, ire investigando una por una, luego posteare mis resultados de como me fue, muchas gracias a los 2.

S2
29  Programación / Ingeniería Inversa / Re: Ayuda con la API VirtualProtect para protejer un programa en: 1 Marzo 2014, 07:01 am
Un metodo eficaz para detectar los int3 es hacer un checksum del codigo que quieres proteger.
Luego, puedes crear un thread que realice el checksum y compare el valor obtenido con el original.
Un int3 modificaria el valor calculado.

Con los HBPs es mas complejo, pues (hablando de OllyDbg) los plugines pueden detectar y evitar a la perfeccion el borrado de los registros de debug.

Saludos!

Me darias un ejemplo de este metodo para C++?

Gracias por la respuesta :)
30  Programación / Ingeniería Inversa / Ayuda con la API VirtualProtect para protejer un programa en: 1 Marzo 2014, 05:36 am
Hola a todos, primero que todo, pensé en poner este post en el foro de C++ pero como mas que todo lo quiero para proteger el programa no sabia, porque hasta donde investigue (y lo poquito que logre entender) esta API tienen infinidad de usos.

Estaba viendo algunas formas de proteger un programa y la verdad que avance bastante en esto de la protección y yo que se bastante poquito, estoy bastante emocionado y quería saber esto de lograr bloquear los BP, que hasta donde lei se puede hacer con esta API ya que evitamos que se ponga el INT3, pero seguro eso ya lo saben así que voy al caso...

Me podrían ayudar a como usar correctamente esta API, definir sus dimensiones y si se puede algun ejemplo o consejo?, se los agradecería muchísimo porque me encariñe con el tema de proteger una aplicación(va, un CrackMe)

S2 y gracias de ante mano.

PD: Y si me dicen como detectar los HBP esta mas que bueno, mas que todo saque esto del post de karmany y el resto de los métodos los investigue por mi cuenta y los logre utilizar con un muy buen resultado, pero estos 2 no.
Páginas: 1 2 [3] 4
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines