ConfuserEx is an open-source protector for .NET applications. It offers
advanced security to applications written in C#, VB, F#, and other .NET
ConfuserEx is the successor to Confuser project. While Confuser is widely regarded as one of the strongest obfuscators available in .NET, ConfuserEx continues to provide excellent protections to .NET applications.
ConfuserEx is special in two ways:
ConfuserEx is open-source and free.
As far as I know, ConfuserEx is the only open-source and free .NET protector that has protections comparable with commercial protectors. Since it’s open-source, you could modify it to suits your need. Consequently, unlike other protectors, a generic deobfuscator for different custom version of ConfuserEx would be virtually impossible to be created.
ConfuserEx has plugin system.
ConfuserEx’s plugin system allows developers to create their own protections. This allows different modular protections to be applied in the same application, and greatly enhance the security.
Open-source does not necessarily reduce security, and close-source does not equals to strong protection.
Take the famous deobfuscator de4dot as an example. As stated in its homepage, it supports many close-sourced commerical protectors. It shows that close-sourced protectors are not necessarily secure.
Meanwhile, open-source protectors might not be as insecure as you maight thought. The predecessor of ConfuserEx, Confuser, has been released for 4 years. Only until recently, a public deobfuscator is available for it, and it doesn’t even have 100% sucess rate in deobfuscation. Apparently, Confuser, an open-source protector, provides better security than those close-sourced protectors.
Sure it is!
ConfuserEx has many techniques that commerical protector used, and some more! If you have any doubt about protection strength, feel free to contact me!
A GUI is available since version 0.2.0. Go check it out!
Documentation is now available at the project wiki! If you still got any problem, please don’t hesitate to contact me or open an issue!
ConfuserEx’s project format is quite similar to Confuser’s. There are few places to note:
confusionelements are replaced by
basePathattribute and use relative path in other places of project file.