Obfuscation: Renaming and Simple Code Removal
Do you think obfuscation is something that can be done whenever the code is complete? If you do, you are not alone. It seems most developers treat the obfuscation step of the life cycle pretty much the same as they treat building the installation package (ie. MSI) - it isn't their problem. This idea of obfuscation being someone else's problem or just something that will be done once the code is complete, reminds me of how the integration step use to be treated ... that is until Continuous Integration became widespread. It is true that obfuscation can be put off until the code is complete, but chances are it will be a disappointing and painful step. More ...
Obfuscation: String Encryption
Last time I discussed renaming, this time I want to discuss String Encryption. String Encryption is the process of encrypting quoted strings that appear in your code, these strings are stored in the #US heap in an assembly. The #US heap is made up of strings that are referenced in the IL (or when you write your code these strings are in your methods, properties, etc.). This means when you disassemble or decompile an assembly you will see these strings in plain text. For example, if I want to get around some part of your system that gives me a message like "Invalid Password, Please try again", first thing I would do is disassemble the assembly to an IL file and search for that text. Once I find that message I can start to figure out how to jump over it ... I'm sure you get the point. String encryption is an obfuscation technique that encrypts the strings so they are not simple to read. More ...
Book Review: Obfuscating.Net: Protecting your code from prying eyes
Back in 2001 when I had just started learning .Net, I spent a lot of time using ILDasm trying to really get an understanding of how things work (by taking them apart and seeing what they were made of). Then after I started using .Net on a day to day basis, I didn’t find myself using ILDasm as often, because my time was better spent focusing on higher level problems developing solutions to business problems. Now after using .Net for a few years, my needs have evolved as has the tools available. ILDasm is now just another tool in the toolbox used for object browsing, discovery and debugging along with some other utilities such as Lutz Roeder’s Reflector and DILE. As the tools we developers use for troubleshooting and debugging advance, so too do the utilities available to crack our code. Like most software developers, I like to get paid for code that I write and not have it shared unless I choose to. This means I also need a set of tools too protect my code when necessary. One of the tools I can use is obfuscation. More ...
Obfuscation Resources
Blogs
.Net Obfuscator
Rss Feed
Obfuscator
Rss Feed
Websites
Code Obfuscation
Documentation
Articles
Obfuscation and
obfuscators
Obfuscation
Obfuscation: Cloaking you
Code from Prying Eyes
Deploying
Visual Basic .Net Applications: Obfuscation Systems
Obfuscate
It: Thwart Reverse Engineering of Your Visual Basic.Net or C# Code
Obfuscation and
Decompilation
.Net Obfuscators
On the
(Im)possibility of Obfuscating Programs
Review:
Eschew Obfuscation? Maybe You Shouldn't
The .Net Framework &
Protecting you Code - Introduction
Intellectual Property
Protection and Code Obfuscation
Watermarking, Tamper-Proofing, and Obfuscation - Tools for Software Protection
Obfuscation of executable code to improve resistance to static disassembly
Protect
.Net work with obfuscation
Obfuscation and .Net
Secure Your .Net Code
Obfuscation - Protect
your Assemblies and Executables
Giving a .Net
Assembly a Strong Name
Essential
Obfuscate Technical Whitepaper
Obfuscation
Presentations
Creating a .Net
Obfuscator by Godfrey Nolan
.Net Obfuscation
by Godfrey Nolan
Application
Code Security by Gabriel Torok
Deobfuscation:
Reverse Engineering Obfuscated Code by Sharath Udupa, Saumya Debray,
Matias Madou
Decompilation & Obfuscation by John T. Hopkins
Books
Obfuscating .Net: Protecting Your Code From Prying Eyes by Daniel
Appleman
Obfuscators
Salamander.Net
Obfuscator
Demeanor for .Net,
Enterprise edition
Spices.Net Suite
Dotfuscator
{ smartassembly }
Tools lists
Code Obfuscation
Tools
Code
protection - Objfuscation
Comparisons
How-To-Select an
Obfuscation Tool for .Net
