Problema con DLL para HARDkey.Net

Iniciado por good_as_gold, 8 Junio 2019, 21:36 PM

0 Miembros y 1 Visitante están viendo este tema.

good_as_gold

¡Buenas!

Este es mi primer hilo en el sitio así que sepan disculpar si cometo algún error obvio.

Resulta que pude completar el gran tutorial que hizo MCKSys Argentina para emular el tipo de llaves HARDkey.Net y, al menos probando la DLL por mi cuenta, todo funciona perfecto. El problema es que, al reemplazar la original en el programa real, no logro hacer que funcione.

Hay algo que hice un poco distinto: la DLL la armé en VB6. Tuve que usar un DEF para que el linkeador genere una DLL "común" y, al menos en los lenguajes que probé, funcionó.

Si ejecuto el programa con Olly veo que la rutina (HARDkey) incluso llega a ejecutarse y luego tira una excepción, pero no sé bien por qué. El nombre del export es exactamente el mismo que el de la DLL original y el tipo de datos de los parámetros, si no me confundo, también.

Va link a la DLL que generé. ¿Alguna idea?

https://send.firefox.com/download/ca920a6f39dfbb32/#RSjpGDSNMcXS0oA4jVmmLQ
Password: hard

¡Muchas gracias!

good_as_gold

Finalmente reescribí la DLL en C y tema resuelto. Muchas gracias.

Geovane

¡Hola

Esto funciona para las protecciones antiguas.

Las más modernas comprueban muchas otras cosas además de completar simplemente una CALL.

Mucho más simple hoy escribir el driver que un dll para satisfacer el dongle imitado.
Porque el driver hace que el sistema operativo conozca automáticamente cada solicitud del programa por peticiones kernel.

Saludos.
Para servicios, envíe un mensaje privado, sólo para servicios en curso hasta fecha de 10/06/2019

MCKSys Argentina

Cita de: Geovane en 10 Junio 2019, 03:44 AM
¡Hola

Esto funciona para las protecciones antiguas.

Las más modernas comprueban muchas otras cosas además de completar simplemente una CALL.

Mucho más simple hoy escribir el driver que un dll para satisfacer el dongle imitado.
Porque el driver hace que el sistema operativo conozca automáticamente cada solicitud del programa por peticiones kernel.

Saludos.

Eso no es cierto. He visto programas modernos protegidos con estas llaves y sempre dependerá de cómo lo implemente el programador.

Jamás será más sencillo escribir un driver que una DLL (ni hablar de tener que dejar el sistema vulnerable por tener que usar drivers sin firmar).

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."