Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-02-2005
T-man T-man is offline
Miembro
 
Registrado: oct 2004
Posts: 28
Poder: 0
T-man Va por buen camino
Como impedir crackeo de BD y Aplicacion??

Hola. tengo una duda..quisiera saber como uds manejan éste tema.
Yo hice mi aplicacion en delphi, lo cual tengo Proyecto.exe y tengo mi archivo datos.gdb. Éste archivo lo almaceno en un subdirectorio de mi aplicación.
Ahora bien, cuando genero el instalador, debo permitir al usuario que vea ese archivo??? Y si lo hago, como hago para que nadie pueda tocar ese archivo???
Pienso que con la contraseña y nombre de usuario de Interbase no alcanza, cualquiera puede eliminar la base de datos y la aplicacion dejaria de funcionar.


No solo eso, sino que cualquiera puede copiar el .exe de mi aplicacion y la base de datos y lo puede instalar en otra compu y funcionaria. Como hago para que el instalador me genere archivos que impidan hacer eso?????

Bueno espero sus respuestas, sus técnicas y a ver que se puede hacer con éste tema.
Muchas gracias.
Responder Con Cita
  #2  
Antiguo 04-02-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por T-man
...Pienso que con la contraseña y nombre de usuario de Interbase no alcanza, cualquiera puede eliminar la base de datos y la aplicacion dejaria de funcionar.
...
No solo eso, sino que cualquiera puede copiar el .exe de mi aplicacion y la base de datos y lo puede instalar en otra compu y funcionaria. Como hago para que el instalador me genere archivos que impidan hacer eso?????
Bueno en cuanto a lo primero yo no me preocuparia... porque no puedes hacer nada; A alguien (un poco tonto o un poco torpe...) que se le ocurra borrar el fichero de GDB, si se lo llegaras a proteger, se le ppodría ocurrir borrar el EXE, o formatear el disco, o ... Se trata de que no accedan a la Base de Datos y eso con usuario y cointraseña debería estar resuelto, contra otros contratiempos (como el que comentas) poca solución...
Ya en serio, si la seguridad debe ser muy alta (en tu sistema), lo primero sería modificar la estructura física y pasar la BD a un servidor diferente al que nadie tuviera acceso físico y gestionar correctamente los permisos en la aplicación para que nadie no autorizado editara/modificara/borrada datos a los que no tuviera acceso.

En cuanto a lo segundo, puedes implementar tu propio sistema de seguridad o utilizar algunos de los componentes que existen para ello; Date una vuelta por internet busca componentes para proteger programa (shareware/trial) y si sigues teniendo dudas lo comentas.

Échale un vistazo a éste Link; Son componentes para proteger aplicaciones.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 04-02-2005
T-man T-man is offline
Miembro
 
Registrado: oct 2004
Posts: 28
Poder: 0
T-man Va por buen camino
Gracias por responder. Ahora le echare un vistazo a eso que me pasaste.
Un poco lo pude solucionar. Al crear el instalador con Inno Setup puse el directorio de la base de datos como oculta.
Que tiene de positivo?? que un usuario en windows no tiene ni idea que existe ese directorio.
Que tiene de negativo?? que si la base de datos llegara a fallar, como hago para que se ponga visible para realizar alguna restauracion?? es decir, si esta visible, puedo acceder a ella de todas maneras mediando algun programa visual como IBConsole o IBAdmin???

Bueno muchas gracias.
Adios
Responder Con Cita
  #4  
Antiguo 04-02-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Si necesitas ver o volver a restaurar el directorio oculto (cosa que también puede hacer otro usuario) puedes hacerlo desde el menú de Herramientas del propio Explorador de Windows (Herramientas/Opciones de Carpeta/ver/Mostrar todos los archivos y carpetas ocultos); Pero bueno está bien, porque ésto te elimina a muchos usuarios que no sepan de ésta opción.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 04-02-2005
T-man T-man is offline
Miembro
 
Registrado: oct 2004
Posts: 28
Poder: 0
T-man Va por buen camino
Ok muchas gracias...ya vere que decision tomar, si hacer esa o alguna otra cosa..muchas gracias.
Responder Con Cita
  #6  
Antiguo 04-02-2005
Avatar de jzginez
jzginez jzginez is offline
Miembro
 
Registrado: sep 2003
Ubicación: Puebla, México
Posts: 247
Poder: 21
jzginez Va por buen camino
Lo que puedes hacer para que no copien tu aplicación a otra computadora es usar el registro de windows, en mi caso creo tres claves:
- Una para guardar el numero de identificación del disco duro
- Otra la ip del servidor
- La última el path de la base de datos

estas las optengo por una dll que llamos desde inno setup

En el arhivo principal de la aplicación vuelvo a generar el número del disco duro y lo comparo con el almacenado en el registro de windows, si es el mismo se ejecuta la aplicación sino cierro la aplicación. Antes de conectar la base de datos genero una cadena con la ip del servidor, el path la base de datos y el nombre de la base y esta la asigno a la propiedad databsename del componente ibdatabase, con esto tambien mis maquinas clientes saben en que maquina buscar la base de datos.
__________________
Espero poder seguir exprimiéndote el cerebro 8)
Jorge Zamora Ginez
Puebla, Pue. México
Responder Con Cita
  #7  
Antiguo 04-02-2005
Avatar de mamcx
mamcx mamcx is online now
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Manejas trajetas de credito? Informacion bancaria, medica, genetica, trabajas para la CIA o ???? Si no es asi, que te preocupa?.

Esto es un deseo tipico... pero no muy realista. Un buen articulo (en ingles) sobre medidas mas practicas y menos costosas es este:

http://www.codeproject.com/gen/desig...tialWisdom.asp

Lo mejor es que si un CAMPO en especial debe estar protegido (como el nombre de quien lo compro) lo guardes encriptado dentro de la BD. Eso junto a la contraseña de la misma es mas que suficiente. Igual se debe hacer con los passwords y datos VERDADERAMENTE sensibles como numeros de trajeta de credito y cosas asi.

El punto es que en seguridad, si se tiene acceso al equipo/archivo ya DEJO DE EXISTIR LA SEGURIDAD. Punto.

NO pierdas tu tiempo haciendote la "seguridad". Las ideas que se te ocurran, no importa que tan geniales parezcan ya se las idearon hace años. Si estas fastidian a los clientes honestos peor. Te recomiendo mejor comprar algun software para esto, libreria o lo que sea, y gasta mas tiempo en proveer buen soporte, libera frequentemente y estudia sobre seguridad de software.
__________________
El malabarista.
Responder Con Cita
  #8  
Antiguo 05-02-2005
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Checa Esto....

Yo te recomendaría llevar un registro de las Series de los Discos Duros de las PC's que usarán los Sistemas, es decir, si tu cliente agrega otra PC más, solo Registra la Serie del Disco Duro y no podrán usar el Programa en otra PC que no sea el mismo numero de Serie.

Otra es de Generar una Clave Encriptada Cada Día de acuerdo a la Fecha y el Nombre de la Empresa con que esta registrada tu BD por lo que si alguien entra a la BD para ver que Clave tiene cierto Día de Trabajo no podrá descifrarlo porque tendría que desencriptar dicha clave, Consiguete en este caso un buen algoritmo de Encriptación.

Que tengas buen día.
Responder Con Cita
  #9  
Antiguo 07-02-2005
T-man T-man is offline
Miembro
 
Registrado: oct 2004
Posts: 28
Poder: 0
T-man Va por buen camino
bueno, gracias a todos por responder. la verdad que tampoco quiero que mi sistema sea imposible de copiar, solamente preguntaba para ponerle algun obstaculo o dificultad y queria saber cuales usan ustedes.

adios.
Responder Con Cita
  #10  
Antiguo 07-02-2005
Avatar de sercornejov
sercornejov sercornejov is offline
Miembro
 
Registrado: may 2003
Ubicación: Neiva - Colombia
Posts: 88
Poder: 21
sercornejov Va por buen camino
Oye T-man: ¿Tu aplicación se vende masivamente o tu la instalas en cada cliente?

Si la instalas en cada cliente y no deseas que sea copiada, pues una manera de hacerlo a la "Indigena" es:

Genera un archivo con extención "XXX", realmente no importa cual sea la extención y copialo en el WINDOWS o en el WINDOWS\SYSTEM32 o donde se te de... pero que siempre sea un directorio que use windows. Luego en tu aplicación, al iniciarce le dices que busque ese archivo, si no está, pues no arranca.

Solo sirve si tu aplicación no es de distribución masiva. y si tu o tu empresa dedican tiempo a cada cliente.

es muy simple pero efectiva...


Sergio
__________________
En Colombia hay muchos, pero muchos colombianos muy buenos. Los violentos son pocos y los vamos a controlar...
Responder Con Cita
  #11  
Antiguo 22-02-2005
davezf davezf is offline
Miembro
 
Registrado: dic 2004
Posts: 59
Poder: 20
davezf Va por buen camino
Hola a todos,

Por lo que entiendo con poner el numero de serie del disco en el registro de windows, evitas que se copie la aplicacion y la BD a otro equipo.

Pero, en mi caso, preferia crear un cd de instalacion. Entonces como evito que desde el cd de instalacion se creen las copias del programa?
__________________
Dave
Responder Con Cita
  #12  
Antiguo 23-02-2005
Avatar de jzginez
jzginez jzginez is offline
Miembro
 
Registrado: sep 2003
Ubicación: Puebla, México
Posts: 247
Poder: 21
jzginez Va por buen camino
Hola, como tampoco supe como proteger que no copiaran el cd de instalación lo que hise fue crear un demo por 30 dias guardando en el registro de windows la fecha de instalación y un contador, los cuales estan alterados sumandole el numero que pensaste, multiplicandolo por si mismo, etc. jeje para que si alguien revisa el registro de windows no vea facilmente lo que es cada numero.
el cd de instalación que entrego es el del demo y una vez que el cliente decide que si quiere el sistema voy personalmente a instala la versión que no usa el contador y no le cambio el cd al cliente asi que si este lo presta o lo copia solo copiara el demo, para no tener problema de que si el cliente cambia de computadora pierda el sistema le doy el servicio de reinstalación gratis.
pero recuerda lo que dice mamcx

"El punto es que en seguridad, si se tiene acceso al equipo/archivo ya DEJO DE EXISTIR LA SEGURIDAD. Punto."
__________________
Espero poder seguir exprimiéndote el cerebro 8)
Jorge Zamora Ginez
Puebla, Pue. México
Responder Con Cita
  #13  
Antiguo 02-03-2005
davezf davezf is offline
Miembro
 
Registrado: dic 2004
Posts: 59
Poder: 20
davezf Va por buen camino
Podriais indicarme como puedo almacenar el numero de serie del disco duro en una clave del registro con inno setup
__________________
Dave
Responder Con Cita
  #14  
Antiguo 02-03-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.272
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Revisa éste post:
http://www.clubdelphi.com/foros/showthread.php?p=79738

Éstos días hemos estado hablando de eso mismo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 02:48:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi