Autor
|
Tema: Crackear un componente .net (Leído 1,996 veces)
|
pezpc
Desconectado
Mensajes: 2
|
Estoy intentando crackear un componente web para manipulación de imágenes. El componente esta compilado en .net. He intentado descompilarlo, pero el ensamblado esta protegido con un obfuscator y no puedo recompilar el código descompilado. Para poder usar el componente en otros programas hay que incrustar una licencia, en el ensamblado de nuestro programa, que nos es proporcionada por email al descargar el programa.
Protecciones:
-El fichero que contiene la licencia es un fichero xml y esta firmado con el algoritmo RSA y por lo tanto solo dispongo de la clave publica que se encuentra en otro fichero xml incrustrado en la dll del componente.
-El componente a su vez esta firmado el algoritmo RSA y solo dispongo de la clave publica.
Problemas:
Tengo dos posibilidades para crackear el componente. Se exactamente que punto del programa devuelve true o false si la licencia es correcta o no, y también se que texto hay que poner el fichero xml de licencia para que devuelva true la función que lo comprueba. Mi problema es que tanto si modifico la dll como el fichero de licencia recibo un error al intentar usar el componente pues comprueba que el contenido ha sido alterado y los hash no coinciden. Y ahí es donde me pierdo no se como calcular un nuevo hash valido para el componente o para la licencia.
Mi interés por el componente es únicamente educativo pues este solo vale 20 $ y además es fácil programar uno parecido. Pero estoy interesado en aprender un poco mas sobre cracking para poder proteger mis aplicaciones y por ello estaría enormemente agradecido al que ayudara o me explicara que posibilidades hay de crackear este componente.
|
|
|
En línea
|
|
|
|
Unravel
BlueHack Team
Ex-Staff
Desconectado
Mensajes: 1.016
|
Te da igual el calcular un nuevo hash, porque luego deberías firmarlo, y no tienes la clave privada. El proceso lógico que debería hacer esa protección es el siguiente. El programa (o quien sea) calcula un hash de parte del código o de la licencia, luego descifra con la pública el hash que tiene almacenado de su código original (la firma) y los compara. Si no coincide es que algo a cambiado. Ahí es donde tienes que atacar, y saltarte la condición que compare los hashes.
Si esto es una movida porque lo compara el SO directamente o algo así, tb puedes generarte una pareja privada/publica, realizar las modificaciones, calcular luego el hash (según los bytes y las cabeceras sabes que algoritmo usa), cifrarlo con tu privada, guardarlo encima del anterior y cambiar la pública del componente, que ya la conoces.
En cualquier caso, si lo consigues, coméntamelo, porque no debe de ser nada fácil.
|
|
|
En línea
|
"La verdad es un ácido corrosivo que salpica casi siempre al que la maneja". Santiago Ramón y Cajal.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Reproductor Remoto utilizando remoting y el componente axWindowsMediaPlayer
.NET (C#, VB.NET, ASP)
|
titouci2010
|
1
|
3,242
|
6 Abril 2011, 21:16 pm
por [D4N93R]
|
|
|
Componente Joomla
Desarrollo Web
|
cayolo
|
1
|
3,604
|
29 Agosto 2011, 16:56 pm
por madpitbull_99
|
|
|
componente joomla
Desarrollo Web
|
kakashi20
|
2
|
2,298
|
11 Marzo 2012, 03:05 am
por Graphixx
|
|
|
[Delphi] Crackear componente AlphaControls
Programación General
|
BigBear
|
3
|
2,403
|
14 Febrero 2014, 15:34 pm
por BigBear
|
|
|
pdf en componente java
Java
|
bengy
|
0
|
1,359
|
7 Septiembre 2014, 21:22 pm
por bengy
|
|