DLL Obfuscation
timb24
Posts: 5
I am new to using SmartAssembly. I have SA Std v6.9.0.114 running Win 7 64-bit. Source code is C#. Visual Studio 2010.
When I SA build any of my DLLs, and then use ILSpy to decompile/browse, the obfuscation seems to be falling short of what I expected. In ILSpy I can still see the namespace all of the classes under the namespace - names are unobfuscated. Then looking inside each of the classes, most of the method names are unchanged; enums are unchanged; a lot more of the logic control flow is still there (more than I expected; still enough to get the idea of what's going on). Initially I turned on Obfuscation : Types/Methods Name Mangling to Unicode and advanced; Fields Name Mangling to advanced renaming. Also Control Flow Obfuscation : Strongest. And Strings Encoding : all checked. After seeing the initial results, I went to the other extreme and turned on Dependency Merging; cranked up Obfuscation and Control Flow Obfuscation to the highest levels... But still saw more decompiled source than I thought I would. I did try obfuscating an .exe, and got much better results.
Being a new user, I assume that I'm missing something, doing something wrong, etc... I am looking for help, advice, other things to try to get better results.
Thanks,
Tim
When I SA build any of my DLLs, and then use ILSpy to decompile/browse, the obfuscation seems to be falling short of what I expected. In ILSpy I can still see the namespace all of the classes under the namespace - names are unobfuscated. Then looking inside each of the classes, most of the method names are unchanged; enums are unchanged; a lot more of the logic control flow is still there (more than I expected; still enough to get the idea of what's going on). Initially I turned on Obfuscation : Types/Methods Name Mangling to Unicode and advanced; Fields Name Mangling to advanced renaming. Also Control Flow Obfuscation : Strongest. And Strings Encoding : all checked. After seeing the initial results, I went to the other extreme and turned on Dependency Merging; cranked up Obfuscation and Control Flow Obfuscation to the highest levels... But still saw more decompiled source than I thought I would. I did try obfuscating an .exe, and got much better results.
Being a new user, I assume that I'm missing something, doing something wrong, etc... I am looking for help, advice, other things to try to get better results.
Thanks,
Tim
Comments
If you don't want to merge it then try to make as much as you can into internal classes etc and only leave the ones you really need to be accessed from outside the dll as public.
Hope that helps. I'm just another ordinary user of SA btw