DevMedia

Descompiladores

0
Há algumas semanas estava navegando pela internet e encontrei o site onde tinha um link para um segundo site onde era possível baixar um programa para descompilação de executavéis desenvolvidos no delphi (qualquer versão). Como a curiosidade foi muita, baixei o programa e testei nos meus projetos, após o processamento, este programa realmente descompilava o executável, mas o código fonte era todo em assembler mas ainda era possível adicionar ao código já existente novas linhas de comando.
Como posso impedir que alguém use um descompilador nos meus programas??


Publicidade

Respostas (23)

0
Cara tu ta ferado ñ tem geito se alguem que entendi do assundo abre na morau ..se eu pegar um programa teu eu abro ele de cabo a rabo ... desiste ñ tem geito.. mais ñ to disendo que é imposiveu eu vi um programa na internet que ñ deixa abrir o outro progama mais isso é pra pessoa que ñ entendi estas pessoa ñ vai conseguir abrir se vc fecha ele com este programa mais pessoas mais esperiente pega teu programa e faz gato e sapato...tu ta verado... mais ve se a microsoft tem ...rrr.ssss
mais é isso ai


0
Colega,

Não há descompilador para Delphi. O que existe são disassemblers (´desmontadores´), ou seja, não retornam o código fontes e sim o código em assembly. Como acontece com qualquer outra linguagem.

http://www.thefreecountry.com/programming/disassemblers.shtml


0

Citação:
Cara tu ta ferado ñ tem geito se alguem que entendi do assundo abre na morau ..se eu pegar um programa teu eu abro ele de cabo a rabo ... desiste ñ tem geito.. mais ñ to disendo que é imposiveu eu vi um programa na internet que ñ deixa abrir o outro progama mais isso é pra pessoa que ñ entendi estas pessoa ñ vai conseguir abrir se vc fecha ele com este programa mais pessoas mais esperiente pega teu programa e faz gato e sapato...tu ta verado... mais ve se a microsoft tem ...rrr.ssss
mais é isso ai


:arrow: :D :roll: :?:


0

Citação:

Citação:
Cara tu ta ferado ñ tem geito se alguem que entendi do assundo abre na morau ..se eu pegar um programa teu eu abro ele de cabo a rabo ... desiste ñ tem geito.. mais ñ to disendo que é imposiveu eu vi um programa na internet que ñ deixa abrir o outro progama mais isso é pra pessoa que ñ entendi estas pessoa ñ vai conseguir abrir se vc fecha ele com este programa mais pessoas mais esperiente pega teu programa e faz gato e sapato...tu ta verado... mais ve se a microsoft tem ...rrr.ssss
mais é isso ai


:arrow: :D :roll: :?:


Idem :lol: :lol:


0
Tema que sempre volta ...

descompiladores.


0
Já ouvi falar em paginas de engenharia reversa que programas feitos em Clipper ou Visual Basic podem ser descompilados ao código original... em Clipper nunca mexi, mas do VB(sux, very sux... :x ) não duvido nada... :P


0
Com o Clipper é extremamente simples... vc abre o Valkyrie (ou outro descompilador) indica o .exe e pronto... todos os .prg estarão lá totalmente descompilados...
Já vi tbm um ´descompilador´ de .dcu que tráz o código para ´próximo´ do original... mostrando ao menos os nomes e referencias das procedures e funcitions, mas as implementações das mesmas ficam em ASM...


0
O máximo que da para ser feito é chegar no código assembly. Ao código fonte original não tem como. Pelo menos não com aplicativos gerados pelo Delphi. E mesmo que um programador veja o código em assembly não será de grande utilidade. É mais fácil ele fazer do zero do que descompilar, analisar o código assembly e traduizr para o object pascal. A não ser que você tenha criado um novo padrão de arquivo, um programa de criptografia ou de quebra de senhas ou ainda de proteção (tipo as proteções de cópia de CD, de região de DVD) acho que não vai ser necessário se preocupar com isso pois creio que dificilmente o seu programa será alvo de engenharia reversa. Programas que fazem uso de caixa 2 talvez também possam ser descompilados por um perito para análise. Nesse caso ha outras maneiras de se camuflar um código.


0
Olá

Creio que se alguém tiver a perícia (além de paciência) de descompilar teu programa, analisar o assembly e adicionar/modificar funções, ele será bom o suficiente para olhar o seu executavel e fazer um dele... Não vejo motivo para que isso aconteça realmente

Até+


Citação:
Cara tu ta ferado ñ tem geito se alguem que entendi do assundo abre na morau ..se eu pegar um programa teu eu abro ele de cabo a rabo ... desiste ñ tem geito.. mais ñ to disendo que é imposiveu eu vi um programa na internet que ñ deixa abrir o outro progama mais isso é pra pessoa que ñ entendi estas pessoa ñ vai conseguir abrir se vc fecha ele com este programa mais pessoas mais esperiente pega teu programa e faz gato e sapato...tu ta verado... mais ve se a microsoft tem ...rrr.ssss
mais é isso ai
O que viria a ser isso exatamente...?


0
No Clipper, até a versão 5.2, você pode utilizar o Valkyrie.
Mesmo assim, fica tudo numa única unit, o que não permite recompilação.
Você teria que redistribuir todas as procedures e tentar inúmeras vezes recompilar. Ainda assim poderia não ter sucesso (muito mais provável).

No Delphi, existem alguns descompiladores por aí que se dizem milagreiros.
Até hoje não vi nenhum descompilar nada além de código Assembly ou apenas extrair os forms da aplicação (que, sozinhos, não fazem absolutamente nada e qualquer um pode montar os forms iguais no próprio Delphi), nem mesmo semelhante ao Valkyrie, com todas as units num único arquivo.

Para evitar a extração dos forms, ainda existem alguns bons compactadores de executáveis. Mas aumentam um pouco (geralmente, bem pouco) a utiização de memória das aplicações.
Alguns compactadores têm seus descompactadores. Portanto, também não são a solução.

Mas, na minha opinião, não se preocupe!
Talvez só a Borland tenha um descompilador real e eficiente para programas feitos em Delphi (se tiver!!). 8)


0

Citação:
Cara tu ta ferado ñ tem geito se alguem que entendi do assundo abre na morau ..se eu pegar um programa teu eu abro ele de cabo a rabo ... desiste ñ tem geito.. mais ñ to disendo que é imposiveu eu vi um programa na internet que ñ deixa abrir o outro progama mais isso é pra pessoa que ñ entendi estas pessoa ñ vai conseguir abrir se vc fecha ele com este programa mais pessoas mais esperiente pega teu programa e faz gato e sapato...tu ta verado... mais ve se a microsoft tem ...rrr.ssss
mais é isso ai


Esse cara é tão bom que postou a seguinte mensagem:


Citação:
Ai pessoal to presisando de uma forsinha é o seguinte alguem sabe uma stirng para saber se a pessoal esta conectado exemplo tenho um IP 200.154.12.1 quero saber se esta pessoa esta conectada se souber manda ai pa min eu agradeso a forsinha..ta fuiiiiiiii


Está em http://delphiforum.icft.com.br/forum/viewtopic.php?t=52922

Além do Português corretíssimo, parece ser um exímio profissional!
Deveria abrir uma empresa de consultoria para a Borland, Microsoft, etc.
:idea:

:lol: :lol: :lol:


0
Bem, como já foi dito, é muito mais trabalhoso descompilar uma aplicação e remontá-la do fazer toda novamente.

A não ser que vc já conheça os fontes e a estrutura da aplicação... dessa forma, uma chamada à uma procedure que parece vaga para uma outra pessoa e que ela vai precisar ficar ´garimpando´ referências, para quem já conhece é extremamente simples redristribuir, corrigir recompilar tudo...

Foi por isso q citei o Valkyrie pq, nos tempos em que não existia CDR-W, já perdi fontes de aplicações minhas e ele me foi extremamente útil, poupando um grande retrabalho...

T+


0

Citação:
Foi por isso q citei o Valkyrie pq, nos tempos em que não existia CDR-W, já perdi fontes de aplicações minhas e ele me foi extremamente útil, poupando um grande retrabalho...
T+

Colegas,

Vale lembrar que o Clipper era pseudo-compilado, mas dependendo da versão do linkeditor utilizado (BLinker), nem o Valkyrie conseguia trazer de volta.


0
A melhor cópia é a inédita. Vivemos num pais que mais forma engenheiros no mundo, e uns dos menos registra patentes. Formamos o maior número de dentistas, e temos uma das maiores populações de banguelas. Enfin, ainda ficamos discutindo como copiar, reverter, destruir o trabalho alheio. É gostoso quando podemos dizer, este eu fiz. Lembrando que reengenharia reversa, sem uma autorização judicial, é crime. É P I R A T A R I A!! Vamos desenvolver, gente, desenvolver.


0
Quem aqui falou em destruir o trabalho alheio (com exceção do colega Joilson) ?

T+


0
Companheiros da lista,

Existem componentes para diversas ferramentas de desenvolvimento, inclusive para Delphi, que permitem embutir na aplicação proteções anti-debugging e ações preventivas contra disassemblers. Para Delphi, consultem este site:

http://Antidebug.ifrance.com
Componente ADP (AntiDebugging Protection)

Dizem que é um excelente componente, mas é pago, e duvido muito que se ache algo pra Delphi nos moldes deste componente free e com fontes.

[]s
Rubem Rocha
Manaus, AM


0

Citação:
A melhor cópia é a inédita. Vivemos num pais que mais forma engenheiros no mundo, e uns dos menos registra patentes. Formamos o maior número de dentistas, e temos uma das maiores populações de banguelas. Enfin, ainda ficamos discutindo como copiar, reverter, destruir o trabalho alheio. É gostoso quando podemos dizer, este eu fiz. Lembrando que reengenharia reversa, sem uma autorização judicial, é crime. É P I R A T A R I A!! Vamos desenvolver, gente, desenvolver.


Muitas vezes eu já precisei descompilar meus programas em Delphi e Clipper pra recuperar partes do código fonte porque eu tinha perdido e o burro aqui tinha se esquecido de fazer backup... Eu já precisei muitas vezes debuggar meus programas feito em Delphi por um disassembler/debugger (uso o OllyDBG), porque eu muitas vezes uso coisas de muito baixo nível que é impossível de debuggar pelo Delphi (é possivel pelo CPU, mas não tem recursos legais como o OllyDbg.

Resumindo: Nem sempre que você debugga ou descompila outro aplicativo é pirataria/modo de danificar o outro programa.


0
Pensei, Vinicius2k, que meia palavra bastasse. Então aí vai. Se o programa não é seu, de sua autoria, é pirataria sim!!! E isto constitui crime. Quando eu postei a minha resposta, é óbvio, é lógico, é sensato dizer, que eu não precisava dizer que a regra não vale para o ou os proprietário(s) do programa. Este sim, pode fazer o quiser com ele, até vender. Agora reengenharia reversa em softwartes alheios, é crime!!! Não entendam essa resposta, como uma resposta mal-educada, eu estou apenas me justificando. Nada para o Nildo, para o Vinicius2k ou qualquer outro que seja.


0
Paulo,

É também óbvio q engenharia reversa de software que não seja de sua propriedade é pirataria e é crime.
Na minha opinião, vc é que não precisava ter dito isto, já que não estamos discutindo pirataria e sim proteção contra ela e recuperação de fontes. A discussão é sobre como proteger e não como crackear... por isso vc foi mal interpretado.

T+


0
Valeu, Vinicius. Realmente eu é que entendi mal.


0

Citação:
Valeu, Vinicius. Realmente eu é que entendi mal.


:P

Pessoal, existe um tópico criado por mim com muito conteúdo interessante (só haja paciencia para ler tudo... :oops: )

Aqui vai: http://delphiforum.icft.com.br/forum/viewtopic.php?t=23765


0

Citação:
Valeu, Vinicius. Realmente eu é que entendi mal.

Blz Paulo. :wink:


Citação:
Pessoal, existe um tópico criado por mim com muito conteúdo interessante (só haja paciencia para ler tudo...

Afe... me lembro dele... é grande mesmo, mas vale a pena ler... muitas idéias foram discutidas nele...

T+


0
Descompilador Para Delphi:
Não descompila 100¬ mas já ajuda. - Versão Demo.
ftp://pontal.mgt.com.br/apa/desc.zip

[]´s.

Christian.