Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como Proteger esto (https://www.clubdelphi.com/foros/showthread.php?t=68714)

pass 02-07-2010 00:22:08

Como Proteger esto
 
Hola, ante todo un saludos para todos lo que conforman esta gran comunidad

Mi pregunta es la siguiente tengo un projecto que contiene una parte en codigo asm ejm:

procedure prueba;
begin
asm
mov ax,1
push ax
push 255
call 100000h
end;
end;

el problema es es q si alguien pone un breakpoint en 100000 queda mostrado todo el codigo tal como esta en el source , lo que quiero hacer es proteger o encryptar cosa q no quede visible el codigo , no se si me deje entender

Casimiro Notevi 02-07-2010 00:35:49

Si pone un breakpoint es que tiene el delphi y el código fuente.

juanelo 02-07-2010 01:42:42

Cita:

Empezado por Casimiro Notevi (Mensaje 368905)
Si pone un breakpoint es que tiene el delphi y el código fuente.

No necesariamente.
Busca tambien en google OllyDBG

Casimiro Notevi 02-07-2010 01:54:06

Cita:

Empezado por juanelo (Mensaje 368916)
No necesariamente.
Busca tambien en google OllyDBG

Con eso ni tienes el código fuente ni puedes verlo en delphi :)

juanelo 02-07-2010 02:36:21

Cita:

Empezado por Casimiro Notevi (Mensaje 368918)
Con eso ni tienes el código fuente ni puedes verlo en delphi :)

De acuerdo contigo, yo iba mas allá, ya que hay herramientas que te pueden mostrar el codigo de nuestros programas en ensamblador, y con un poco de paciencia y conocimientos se puede llegar a saltar protecciones.
Una recomendacion, aunque no es 100% efectiva, es que se encripte el programa en cuestion con alguna herramienta existente, por lo menos asi se hace mas dificil el poder "debuggear" la aplicacion.

mamcx 02-07-2010 05:07:36

Ahora, la pregunta que me viene a la mente es porque piensas que debes proteger eso...

Muchos problemas de seguridad son mejor manejados con una reevaluacion del procedimiento global mas que del suceso puntual.

Es como dice el dicho: Si con el dedo te tocas la boca, la cara, el ombligo y los pies y en cada caso te duele, pues deja de tocarte con el dedo!

Casimiro Notevi 02-07-2010 10:38:14

Estoy de acuerdo con mamcx, ¿es tan importante proteger ese código?, porque con casi total seguridad es un código que ya se usa en otros sitios por otras personas, y seguramente no es un invento propio, y aunque lo fuese.

pass 02-07-2010 15:10:06

:(
 
nadie constesto a mi pregunta, encontre esto en google pero tampoco me funciono


delphimagic.blogspot.com/2008/10/como-proteger-tu-codigo.html
espero alguien pueda ayudarme

coso 02-07-2010 15:40:53

Creo que lo que querias era "proteger" tu parte en ensamblador. Eso te sera imposible, ese codigo sera exactamente lo que se vaya a cargar en el procesador. Ensamblador son mnemotecnicos de los codigos numericos que se le pasan al procesador, etc...por lo tanto, el "codigo fuente" que tu llamas es exactamente lo que hay o se va a cargar en memoria, solo que traducido (aplicando los mnemotecnicos como mov, int etc) otra vez para que los entendamos. Asi pues, para leer un programa en ensamblador, y por lo tanto tu codigo y la instruccion call 100000 etc, lo unico que necesitas es un editor de texto hexadecimal que te traduzca a assembler. Como mucho, para proteger como tu dices, podrias usar rutinas de descompresion en memoria en el momento de cargarse, o de desencriptacion de todo el exe, pero realmente es muy complicado y no creo que te valga la pena. Saludos.

ecfisa 02-07-2010 15:43:41

Hola pass.

Cita:

el problema es es q si alguien pone un breakpoint en 100000 queda mostrado todo el codigo tal como esta en el source , lo que quiero hacer es proteger o encryptar cosa q no quede visible el codigo , no se si me deje entender
Tál como dijo casimiro si álguien puede poner un breakpoint tiene que tener
el código fuente y por lo tanto ¿ para que protegerlo ?.

Coincido con mamcx en que la protección hay que atacarla globalmente.

Por otro lado es imposible impedir que álguien desensamble un código ejecutable,
ni siquiera hubicándolo en hard.

Ahora, si lo que buscas es que al desensamblar tu código; no se pueda o sea muy difícil
entender lo escrito inicialmente, te recomiendo que pongas "ofuscar código ejecutable"
en algún buscador.

No me he interiorizado en el tema de ofuscación, lamento no poder ayudarte
con eso.

Saludos.

pass 02-07-2010 17:08:21

no es necesario tener el codigo fuente por q esa call 100000 es usada por un juego y la conocen los q saben hackear el juego , el problema es q poniendo breakpoint ellos pueden mirar en memoria la funcion q hace mi proyecto


La franja horaria es GMT +2. Ahora son las 07:21:11.

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