Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-12-2008
rmendoza83 rmendoza83 is offline
Miembro
 
Registrado: ago 2006
Posts: 50
Poder: 18
rmendoza83 Va por buen camino
Question Cargar tu programa desde otro programa

Buenas Tardes amigos, espero que el titulo se entienda un poco, en realidad la pregunta se debe a como dificultar un poco el trabajo de un hacker para sabotear un programa realizado por uno, es decir, se puede en delphi hacer alguna rutina que sea capaz de cargar en memoria o poner en ejecucion un programa tambien compilado en delphi? la idea principal es tener un exe principal, pequeno y que su trabajo principal sea solo en cargar y descargar de memoria este otro programa principal (es decir, el programa que se desea proteger), bien sea usando hilos u otra forma. Tambien pudiese ser que el programa compilado en delphi se modifique en forma binaria y se aplique algun algoritmo de encriptacion para que este pueda estar fisicamente con el programa loader, por denominarlo asi. De ser asi, pues el trabajo de loader es pues desencriptar el programa y ponerlo en ejecucion directamente en memoria real, y pues al terminar solo tendria que liberar la memoria y terminar.

Pienso que de esta forma se les hace un poco mas dificil a los hackers crackear nuestro trabajo.

Espero su respuesta.

Saludos.

Ing. Reinaldo Mendoza.
Responder Con Cita
  #2  
Antiguo 29-12-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Tal vez utilizar paquetes de ejecución (Runtime Packages), también llamados BPLs podría servirte para lo que quieres.

Tendrías un achivo.exe que se encargaría de cargar y descargar bpls y serían los bpls los que contendrían toda la información de tu programa.
__________________

Responder Con Cita
  #3  
Antiguo 30-12-2008
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.233
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
No tengo mucha idea del tema, pero piensa que los programas se "atancan" una vez que están cargados en memoria para "debuggarlos", por lo tanto una vez que tu programa esté cargado en memoria todo el trabajo que has hecho estará "perdido" por decirlo así.

Lo más apriximado a lo que comentas son los empaquetadores/encriptadores de ejecutables, que una vez el programa se ejecuta, los desempaquetan en memoria para ejecutarlos (UPX, AsPack, Armadillo, Petite, Shrinker, y una larga lista...), aunque como la mayoría no son muy efectivos, para alguien con experiencia.

El hecho de trabajar con DLL, OCX, BPL,... puede dificular un poco el trabajo, pero cuanquiera de ellos se puede empequetar/desempaquetar y debuggar.

También debes tener en cuenta que el hecho de desempaquetar en memoria, y lanzar otros programas así como modificarlos tal como comentar te puede acarrear algun que otro quebradero de cabeza con algun que otro antivirus .

Que conste que no es mi idea desanimarte, ni mucho menos, pero por lo que se:
* Un sistema muy complejo de protección tal vez evite al 95% de los piratas.
* Un sistema relativamente sencillo de protección siguiendo unas pautas básicas (digo sencillo, no tonto) tal vez evite al 90% de los piratas.

Mi opinión es que ese por 5% no vale a pena gartar mucho tiempo, y complicar mucho las cosas y que posteriormente los clientes tengan problemas con los programas. Además, piensa que el sistema de protección es algo que puedes ir mejorando con las versiones, si consideras que es necesario.

Un saludo.
__________________
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
  #4  
Antiguo 30-12-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por rmendoza83 Ver Mensaje
...cargar en memoria o poner en ejecucion un programa... ...la idea principal es tener un exe principal, pequeno y que su trabajo principal sea solo en cargar y descargar de memoria este otro programa principal (es decir, el programa que se desea proteger)... ...que el programa compilado en delphi se modifique en forma binaria y se aplique algun algoritmo de encriptacion para que este pueda estar fisicamente con el programa loader... ...el trabajo de loader es pues desencriptar el programa y ponerlo en ejecucion directamente en memoria real, y pues al terminar solo tendria que liberar la memoria y terminar...
Si tu objetivo es "librarte" de los crackers, no deberias dar tantas ideas a favor de ellos.

Lo que me parece es que quieres es hacer un virus, downloader, troyano, polimorfo... y aunque las apariencias engañen, los antivirus no sabrán la diferencia.
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
Responder Con Cita
  #5  
Antiguo 04-01-2009
rmendoza83 rmendoza83 is offline
Miembro
 
Registrado: ago 2006
Posts: 50
Poder: 18
rmendoza83 Va por buen camino
Cita:
Empezado por ContraVeneno Ver Mensaje
Tal vez utilizar paquetes de ejecución (Runtime Packages), también llamados BPLs podría servirte para lo que quieres.

Tendrías un achivo.exe que se encargaría de cargar y descargar bpls y serían los bpls los que contendrían toda la información de tu programa.
Hola amigo, me gusta esta idea para poder portar una clases que tengo, mi pregunta es, tendras algun ejemplo de como puedo crear la bpl que contenga la implementacion de la clase, y pues en otro proyecto en delphi poder hacer uso de esta clase, y poder heredarla y hacer cualquier operacion de clases desde este nuevo proyecto?

Te explico un poco como debe ser este proyecto. Es un sistema que se desea que sea 100% adaptable al usuario, y pues se tiene una dll con codigo abierto para que los analistas que esten con los clientes puedan hacer modificaciones sobre esta dll y no sobre el fuente principal, se entiende? quisiera utilizar esta idea de la bpl para que estos puedan usar las distintas clases que ya estan desarrolladas, la idea es que reutilicen y no reimplementen. me entiendo?

Saludos y gracias por el comment.
Responder Con Cita
  #6  
Antiguo 04-01-2009
rmendoza83 rmendoza83 is offline
Miembro
 
Registrado: ago 2006
Posts: 50
Poder: 18
rmendoza83 Va por buen camino
Thumbs up

Cita:
Empezado por Neftali Ver Mensaje
No tengo mucha idea del tema, pero piensa que los programas se "atancan" una vez que están cargados en memoria para "debuggarlos", por lo tanto una vez que tu programa esté cargado en memoria todo el trabajo que has hecho estará "perdido" por decirlo así.

Lo más apriximado a lo que comentas son los empaquetadores/encriptadores de ejecutables, que una vez el programa se ejecuta, los desempaquetan en memoria para ejecutarlos (UPX, AsPack, Armadillo, Petite, Shrinker, y una larga lista...), aunque como la mayoría no son muy efectivos, para alguien con experiencia.

El hecho de trabajar con DLL, OCX, BPL,... puede dificular un poco el trabajo, pero cuanquiera de ellos se puede empequetar/desempaquetar y debuggar.

También debes tener en cuenta que el hecho de desempaquetar en memoria, y lanzar otros programas así como modificarlos tal como comentar te puede acarrear algun que otro quebradero de cabeza con algun que otro antivirus .

Que conste que no es mi idea desanimarte, ni mucho menos, pero por lo que se:
* Un sistema muy complejo de protección tal vez evite al 95% de los piratas.
* Un sistema relativamente sencillo de protección siguiendo unas pautas básicas (digo sencillo, no tonto) tal vez evite al 90% de los piratas.

Mi opinión es que ese por 5% no vale a pena gartar mucho tiempo, y complicar mucho las cosas y que posteriormente los clientes tengan problemas con los programas. Además, piensa que el sistema de protección es algo que puedes ir mejorando con las versiones, si consideras que es necesario.

Un saludo.
Hola neftali, gracias por tus muy buenos comentarios, pues tu opinion esta totalmente acertada a lo que yo pense al principio, pero en mi pais el tema de la pirateria no es tomado en cuenta como debe ser. Y pues aca los negocios con software con grandes, y pienso que alguien que muy facilmente gane honorarios por montar un software que desarrollo mi grupo pues es algo que molesta mucho.

Respecto a estos desencriptadores pues es exactamente a lo que me refiero y quisiera hacer, pero no quiero algo ya desarrollado, quisiera yo mismo desarrollarlo en delphi. Tendra alguna idea de como se haria esto? por los algoritmos de encriptacion no te preocupes, de eso me encargaria yo y pues si logro hacerlo lo subire al site como un aporte.

Saludos.

Cita:
Empezado por cHackAll Ver Mensaje
Si tu objetivo es "librarte" de los crackers, no deberias dar tantas ideas a favor de ellos.

Lo que me parece es que quieres es hacer un virus, downloader, troyano, polimorfo... y aunque las apariencias engañen, los antivirus no sabrán la diferencia.
Hola, no quiero hacer un antivirus, en realidad solo dificultar un poco a los hackers de por aca a que ganen dinero facil. y personalmente pienso que librarse de los hackers es una tarea que diria imposible, siempre existe alguien que lograra crackear un algoritmo, o programa, personalmente fui en mis inicios un hacker de aplicaciones de escritorio y aprendi muchos trucos, y respecto a crackear los programas que residen en memoria es un poco mas trabajo que crackear un fuente, y por ello deseo elaborar esta aplicacion.

Gracias y Saludos.
Responder Con Cita
  #7  
Antiguo 05-01-2009
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Cita:
Empezado por rmendoza83 Ver Mensaje
Hola amigo, me gusta esta idea para poder portar una clases que tengo, mi pregunta es, tendras algun ejemplo de como puedo crear la bpl que contenga la implementacion de la clase, y pues en otro proyecto en delphi poder hacer uso de esta clase, y poder heredarla y hacer cualquier operacion de clases desde este nuevo proyecto?
http://dn.codegear.com/article/27178

no trabajas en Monterrey, ¿o si?
__________________

Responder Con Cita
  #8  
Antiguo 05-01-2009
rmendoza83 rmendoza83 is offline
Miembro
 
Registrado: ago 2006
Posts: 50
Poder: 18
rmendoza83 Va por buen camino
Thumbs up

Cita:
Empezado por ContraVeneno Ver Mensaje
http://dn.codegear.com/article/27178

no trabajas en Monterrey, ¿o si?
Hola, no estoy en mexico. Soy de Venezuela, pero para cualquier cosa estamos a la orden, voy a revisar el tuto que me enviaste. Gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Mandar llamar a otro programa desde delphi7 mar_a Varios 11 09-09-2010 18:23:10
Tweak modificar un programa desde otro. turminator Varios 13 23-06-2006 16:02:47
Pegar código en el editor IDE desde otro programa Jonnathan Varios 2 20-04-2006 16:55:41
Cerrar mi programa desde otro Sr_Sombrero API de Windows 2 02-12-2004 23:12:09
llamar a otro programa desde el mio sergionr Lazarus, FreePascal, Kylix, etc. 1 15-05-2003 19:35:06


La franja horaria es GMT +2. Ahora son las 20:19:45.


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