CRIPTOGRAFAR

SILVAHH 01/10/2012 23:24:19
#410993
Amigos, desculpem minha ignorância, mais será que alguém consegue me ajudar com isso? o projeto no link http://www.macoratti.net/vbn_cpt1.htm serve tanto pra encriptar quanto para desencriptar o arquivo, mais quando ele for desencriptar o arquivo, não quero que ele gere o arquivo na forma desencriptada, quero que ele apenas execute o arquivo encriptado, alguém consegue ajudar?

o projeto da pra abixar no final do link que passei ai que nosso amigo JABA postou ^ ^
LUIS.HERRERA 02/10/2012 09:27:29
#411000
SilvaHH o que você quer é bem complicado, pois na realidade seu EXE não será recriado (decriptografado), mas seim [Ô]Explodido[Ô] apenas na memória RAM. Isso é o que os chamaodos programas PE fazem, compactam/encriptam um ou vários arquivos em um único, seja EXE, ou outra extensão e depois revertem o processo. Alguns fazem isso em arquivos temporários, para uso e depois de fechar o aplicativo eles excluem esse temporário, outros jogam tudo direto na memória RAM, mas para isso há um gerenciamento grande dos endereços de memória.

Os pontos positivos, são redução do tamanho do arquivo distribuído, evitar que o mesmo seja aberto por um editor Hex, ou tenha o código revertivo pelos desofuscadores do .Net.
Os pontos negatívos, estes programas geralmente são encarados pelo Windows e programas antivírus, como suspeitos ou até como vírus mesmo e são bloqueados. Para rodar você tem que dizer ao windows/antivírus que não teve bloquear esse arquiso que é seguro.

Há programas prontos na web para isso, alguns pagos outros gratuitos. O mais famoso é o UPX compactador, que gera um EXE com tudo que você quiser, e roda seu programa encapsulado direto na RAM. O problema é que a versão normal não aceita .Net, Porém há um outro semelhante, não lembro o nome que é voltado para .Net. Mas não sei como está o desenvolvimento dele, se tem continuidade, suporte a todas as versões do .Net e como os antivírus encaram ele, só testando.

Desenvolver isso não é tarefa fácil, teria de usar C ou C++ para gerenciar a memória, não sei se algo feito em .Net poderia criar esse recurso, e se criar não se justificaria, pois ao proteger o programa 1, seu código de reversão estaria desprotegido no programa 2, então não vejo o porque criar algo assim em .Net. Procure no Google por PE UPX .NET e encontrará o link para este aplicativo.

SILVAHH 02/10/2012 12:05:06
#411029
Oi LUIS HERRERA

Muito obrigado mesmo pelas suas explicações, estou pesquisando sobre o que você me falou agora ^ ^
JABA 02/10/2012 12:13:44
#411030
Veja se isso resolve o seu problema: http://msdn.microsoft.com/pt-br/library/dd997372.aspx

vlw
SILVAHH 02/10/2012 13:39:20
#411037
Isso serve, mais o problema amigo é como eu faço isso com o arquivo encriptado? como o amigo ali de cima falou o LUIS HERRERA teria que [Ô]Explodir[Ô] o arquivo na memória, se der de fazer isso resolve completamente meu problema ^ ^
JABA 02/10/2012 14:42:17
#411049
1- Quando você for gerar esse executável, ele já vai ter que estar encriptografado. Você pode seguir aquele exemplo do macoratti que te passei.

2- O sistema que irá executa-lo, fará esse processo de desencriptação. Isso quer dizer que na hora de executá-lo, vai ter que tirar essa encriptação de qualquer forma, tanto se estiver no disco ou na memória e essa opção de salva-lo no disco como um arquivo temporário ou executa-lo da memoria após desencriptogração é sua. Sendo assim, ao meu ver, você já tem todo o material que precisa para fazer o que pretende.
SILVAHH 02/10/2012 15:00:30
#411052
Citação:

1- Quando você for gerar esse executável, ele já vai ter que estar encriptografado. Você pode seguir aquele exemplo do macoratti que te passei.

2- O sistema que irá executa-lo, fará esse processo de desencriptação. Isso quer dizer que na hora de executá-lo, vai ter que tirar essa encriptação de qualquer forma, tanto se estiver no disco ou na memória e essa opção de salva-lo no disco como um arquivo temporário ou executa-lo da memoria após desencriptogração é sua. Sendo assim, ao meu ver, você já tem todo o material que precisa para fazer o que pretende.



Sim amigo, tenho tudo aqui, o problema é que quando o processo de descriptografar acontece eu não quero que ele crie um novo executável descriptografado, quero que ele apenas execute como nosso amigo falou, [Ô]Explodir[Ô] ele na memória ^ ^

é essa a parte que nãos ei fazer =/
Página 2 de 2 [17 registro(s)]
Tópico encerrado , respostas não são mais permitidas