Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to protect .NET executable from de4dot or similar tools?

I have tried obfuscation with following obfuscators but none is successful against de40 tool [https://bitbucket.org/0xd4d/de4dot/]

It's really painful to see how easy this is.. just drag the obfuscated .net exe on de4dot.exe and you will get the source code..

Obfuscators tried are:

Agile.NET (aka CliSecure) Babel.NET CodeFort CodeVeil CodeWall CryptoObfuscator DeepSea Obfuscator Dotfuscator .NET Reactor Eazfuscator.NET Goliath.NET ILProtector MaxtoCode MPRESS Rummage Skater.NET SmartAssembly Spices.Net Xenocode

All are useless.. that's really frustrating..

Can you give some better solution for protection against this tool?

like image 453
Shivraj Avatar asked Jan 29 '13 10:01

Shivraj


2 Answers

de4dot will be compatible with most obfuscators/protectors out there very soon, and if not, something else will.

What I'd do is download Confuser from codeplex and use the advanced feature tab in that.

What I do that ALWAYS works and can't be reversed, is I:

Confuse everything but 'reduce meta' in 'Advanced' in confuser. I then, Compress the assembly with RPX packer. I then, Re-Confuse the compressed assembly with 'Resource encryption' in Confuser.

This makes the assembly almost entirely irreversible (there are always those people who are good crackers). I'd also suggest adding md5/sha-1 encryption to your strings IN the source code.

With all these methods of protection, I'd officially say your .net assembly is very severely protected.

like image 188
Phenomite Avatar answered Sep 24 '22 18:09

Phenomite


I faced the same problem and couldn't work it out until now. I follow releases of some obfuscators. I checked the latest version of ILProtector was released so I tried it to protect .NET executable and can say ILProtector definitely works against de4dot. de4dot cannot decompile protected assemblies.

like image 41
Ivan Developer Avatar answered Sep 25 '22 18:09

Ivan Developer