Dotfuscator & setup (creare il setup che installi l'exe offuscato)

lunedì 20 ottobre 2008 - 17.58

Barabas Profilo | Junior Member

Salve a tutti,
ho creato la mia applicazione windows con vb.net, framework 2.0 e visual studio 2005.
è nata l'esigenza di proteggerla dalla decompilazione, ho pensato di usare il dotfuscator community edition 3.0 fornito col VS2005.
sono riuscito ad offuscare l'eseguibile con risultati soddisfacenti.
ora vorrei fare in modo che il setup che ho costruito installi il file offuscato invece di quello "normale"...
dovrei impostare da qualche parte nel progetto di installazione che l'eseguibile da installare è quello offuscato...
ma non riesco a capire come fare...
ho provato a sostituire fisicamente l'eseguibile normale con quello offuscato ma ogni volta che rigenero il progetto di installazione questo rigenera anche l'eseguibile senza offuscamento...
come posso fare?
ogni consiglio è bene accetto.
inoltre devo precisare che i tutorial dotfuscator che ho trovato facevano riferimento alla possibilità di aggiungere alla soluzione un progetto dotfuscator...
mentre nel mio visual studio 2005 questa possibilità non ce l'ho...
ho tentato di configurare l'ambiente ma non ho trovato niente a riguardo...
quindi ho proceduto aprendo l'interfaccia grafica autonoma di dotfuscator e dandole il percorso fisico dell'eseguibile da offuscare : ...mioprogetto\bin\debug\mioexe.exe

ciao e grazie in anticipo

Barabas

Brainkiller Profilo | Guru

>è nata l'esigenza di proteggerla dalla decompilazione, ho pensato
>di usare il dotfuscator community edition 3.0 fornito col VS2005.
>sono riuscito ad offuscare l'eseguibile con risultati soddisfacenti.

Come fai a valutare che i risultati sono soddisfacenti ? Io avevo fatto dei test e questo prodotto non mi ha dato molte soddisfazioni per via di qualità di offuscamento.

>ora vorrei fare in modo che il setup che ho costruito installi
>il file offuscato invece di quello "normale"...

Anche in questo caso vado a memoria. Allora so che nel pacchetto di setup tu oltre ai files che ti aggiunge lui automaticamente come Primary Output, puoi andare ad aggiungere file custom tuoi come .txt o altri .exe. Quindi togli il Primary Output e inserisci tu i file manualmente (tra questi il tuo .exe offuscato).
Ciao

David De Giacomi | <empty>
http://blogs.dotnethell.it/david/

maurosegato Profilo | Newbie

Ciao,
Sono d'accordo sulle magre soddisfazioni che da Dotfuscator Comunity Ediction.. Se invece usi la versione professional.. allora tutto ok!!
Saluti
Mauro Segato

Barabas Profilo | Junior Member

per quello che devo fare i risultati di offuscamento sono soddisfacenti.
l'applicazione non è "commerciale" e va installata insieme ad hardware dedicato internamente in azienda questa è la protezione principale.
però visto che con reflector bastano 2 click per decompilarla mi serve darle un minimo di protezione nel caso qualche filosofo smanettone tenti di modificarla e faccia danni.
l'offuscamento deve essere giusto un deterrente...
avevo già pensato di aggiungere l'exe offuscato al setup, ma pensavo di aggiungerlo all'output primario, non credevo che quest'ultimo si potesse eliminare.
ora provo...
ciao e grazie
Barabas

Brainkiller Profilo | Guru

>però visto che con reflector bastano 2 click per decompilarla
>mi serve darle un minimo di protezione nel caso qualche filosofo
>smanettone tenti di modificarla e faccia danni.
>l'offuscamento deve essere giusto un deterrente...

Ok hai ragione allora va bene questo approccio. A volte l'ho usato anche io.

>avevo già pensato di aggiungere l'exe offuscato al setup, ma
>pensavo di aggiungerlo all'output primario, non credevo che quest'ultimo
>si potesse eliminare.
>ora provo...

Facci sapere se funziona.
Ciao

David De Giacomi | <empty>
http://blogs.dotnethell.it/david/

Barabas Profilo | Junior Member

purtroppo solo ora ho potuto fare delle prove e ha funzionato abbastanza bene...
dico abbastanza perchè comunque mi devo ricordare di:

compilare il progetto

offuscare l'eseguibile

compilare il progetto di setup (che ingloba l'eseguibile offuscato)

mi piacerebbe fare tutto in un colpo solo perchè facilmente dopo una compilazione mi dimenticherò di rioffuscare...
e quindi farò il setup con l'eseguibile vecchio...

ho letto che ci sono eventi nel progetto di setup che è possibile utilizzare allo scopo:
postbuild
e
prebuild
ad esempio vorrrei lanciare la compilazione del progetto di setup e questa automaticamente rioffusca il nuovo eseguibile...
ma non ho trovato nessun esempio a riguardo...
qualche suggerimento?
grazie
Barabas
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5