Git Product home page Git Product logo

.net-obfuscator's Introduction

GitHub contributors GitHub forks GitHub Repo stars GitHub issues GitHub


Logo

.NET Obfuscator

💻 🎉 Awesome lists about all kinds of interesting .NET Obfuscator.
Discussions · Report Bug · Request Feature

About The Project

There are many great .NET obfuscators available on internet, however, I didn't find one that really suit my needs so I create this list. I want to gather all over .NET Obfuscator so that it'll be the last one you ever need.

Utilization

Certain languages like Java and .NET can be easily decompiled into readable source code. Code obfuscation is a process that makes your application binaries harder to read with a decompiler. It’s an important tool for protecting your business’s intellectual property.

Why Obfuscate Code?

Compiled languages like C++ get converted directly to bytecode. The only way to reverse engineer how they work is with a disassembler, which is an arduous and complicated process. It’s not impossible, but trying to infer high level application logic from a stream of assembly language is hard.

On the other hand, languages like C# and Java aren’t compiled for any particular operating system. Rather, they’re compiled to an intermediary language, like .NET’s MSIL. The intermediary language is similar to assembly, but it can be easily converted back into the source code. This means that if you have a public DLL or executable that your business is distributing, anyone with a copy of your executable can open it up in a .NET decompiler like dotPeek, and directly read (and copy) your source code.

Code obfuscation can’t prevent this process—any .NET DLL can be plugged into a decompiler. What obfuscation does do is use a number of tricks to make the source code annoying as hell to read and debug.

The simplest form of this is entity renaming. It’s common practice to properly name variables, methods, classes, and parameters according to what they do. But you don’t have to, and technically there’s nothing stopping you from naming them with a series of lowercase L’s and I’s, or random combinations of Chinese unicode characters. To the computer, there’s no issue, but it’s completely illegible to a human:

IlIIIIlIIIllIIIllIIll
lIIIllIIllIlIIIIlIIIl

An basic obfuscator will handle this process automatically, taking the output from the build, and converting it to something that’s a lot harder to read. There’s no performance hit compared to non-obfuscated code

More advanced obfuscators can go further, and actually change the structure of your source code. This includes replacing control structures with more complicated but semantically identical syntax. They can also insert dummy code that doesn’t do anything except confuse the decompiler. The effect of this is that it makes your source look like spaghetti code, making it more annoying to read.

Another common focus is hiding strings from decompilers. In managed executables, you can search for strings like error messages to locate sections of code. String obfuscation replaces strings with encoded messages, which are decrypted at runtime, making it impossible to search for them from a decompiler. This usually comes with a performance penalty.

Other Options: Convert to a Compiled Language

Converting one programming language to another isn’t an entirely crazy idea—Unity uses IL2CPP, a converter that transforms .NET code into compiled C++ bytecode. It’s a lot more performant, but it also helps secure games against easy cracking, which is crucial for an environment plagued by piracy and cheaters.

Microsoft has CoreRT, an experimental .NET Core runtime using Ahead-Of-Time compilation, though it isn’t ready for production use.

Should You Obfuscate?

If you’re deploying code in untrusted environments where you want to protect your source code, you should almost always use at least a basic obfuscator to rename functions, methods, and properties to make decompiling take a bit more effort.

If you really need nobody to be able to decompile your app, you can use a more intrusive obfuscator, but really you should consider if the problem would be better solved by switching to a language that doesn’t have this issue, such as C++ or Rust.

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

References

What is Code Obfuscation, and Should you use it? by Anthony Heddings

Lists of .NET Obfuscator

A =>

Agile

  • Agile- Agile.NET, Powerful Code Protection, Obfuscation, and Licensing Solution for your .NET Apps

Aldaray Rummage Obfuscator

AppFuscator

  • AppFuscator - Inteligence algorithm provide your application powerful protection!

ArmDot

  • ArmDot - Protection, software licensing tool, and obfuscator for C# and .Net with support of serial keys and files embedding

Arya

  • Arya - Arya is a simple obfuscator for .NET binaries.

AsStrongAsFuck


B =>

Babel

  • Babel - Protect your software against reverse engineering to safeguard the intellectual property of your code

Beds Protector

  • Beds Protector - Beds Protector | Best free obfuscation out right now ( ConfuserEx Mod )

BitHelmet

  • BitHelmet - BitHelmet obfuscator protects your .NET Portable Executables

BoxedApp

  • BoxedApp - Import and virtualize ActiveX, Flash and .Net runtime • Rich SDK for developers • Create custom packers • Supports both 32-bit and 64-bit applications • Virtual file system and registry

C =>

ConfuserEx

  • ConfuserEx - An open-source, free protector for .NET applications.

ConfuserEx 2

  • ConfuserEx 2 - Updated ConfuserEx (by mkaring), an open-source, free obfuscator for .NET applications.

Crypto

  • Crypto - Powerful Obfuscation & Code Protection For .Net That Actually Works!

Cyphor

  • Cyphor - Cyphor is more than just an obfuscator. Cyphor is the best, fastest, and most reliable obfuscation protection tool to work with.

cil-examining

  • cil-examining - A .NET Framework (.NET Core in the future) obfuscator. Owner is currently out sick thus working on project is stopped.

Cheap Obfuscator

Confuser1337

  • Confuser1337 - bad 2016 code, i dont recommend anyone uses it

D =>

dotNetObfuscator

DarkFuscator

  • DarkFuscator - Code obfuscator for .NET framework programs. Outdated in 2016, but was very functional in 2010/2011.Uses the Mono.Cecil library for interacting with .NET assemblies.

DarksProtector

DeepSea

  • DeepSea - DeepSea Obfuscator makes obfuscation of your .NET assemblies an intuitive and integrated part of your product development.

Demeanor

  • Demeanor - Demeanor for.NET protects your intellectual property by making it extremely difficult to reverse engineer your .NET applications.

Denvelope

DNGuard HVM

  • DNGuard HVM - Advanced .NET Code Protection and Obfuscation Technology

Dotfuscator

  • Dotfuscator - Dotfucator's .NET obfuscation and runtime checks have protected thousands of apps for over a decade.

DotNetGuard

DotNetPatcher

DotNetSafer

  • DotNetSafer - Increase the security of your software, reduce costs and save time with the tools that dotnetsafer offers you to protect your intellectual property and guarantee the integrity of your .NET and .NET Core applications.

Dotpack

  • Dotpack - Extreme (TM) binary packer for .NET

DCNETProtector

  • DCNETProtector - An open source tool to encrypt .NET assembly file, help people protect theirs copyright. It has a command line interface and some specific features. It claims to have only 6000 lines of code.

E =>

Eazfuscator

  • Eazfuscator - Eazfuscator.NET is the obfuscator for .NET platform.

Enigma Protector

  • Enigma Protector - A professional system for licensing and protecting executable files for Windows.

ElecKey

  • ElecKey - ElecKey is a suite of software and tools that provide a complete solution for software security, copy protection, and license management. It allows you to protect your software against piracy, tampering, and reverse-engineering, as well as gain full control over secure software distribution and licenses.

G =>

Guardship-.NET-Protector

  • Guardship-.NET-Protector - Guardship .NET Protector is a development software that helps to protect the executable file of .NET application by making its code unreadable for MSIL disassemblers.

Goldfuscator

  • Goldfuscator - A fork of the original SimpleObfuscator project, made for training.

H =>

Habib Extreme Protector


I =>

ILProtector

  • ILProtector - ILProtector is a protector for .NET applications. ILProtector is designed to protect intellectual property of the software.

IntelliLock

  • IntelliLock - IntelliLock is an advanced 100% managed solution for licensing controls and applications. While .NET Reactor offers a licensing system based on native code protection, IntelliLock opts a 100% managed way to apply licensing and protection features. This way single files can be produced without the need of additional files.

IntelliProtector

  • IntelliProtector - IntelliProtector .Net Obfuscator is excellent Free tool for your IntelliProtector .Net projects.

K =>

Krawk Protector

KoiVM

  • KoiVM - Virtualization made for .NET using ConfuserEX

L =>

lookatme

  • lookatme - NET Obfuscator for Studying purpose.

Lime-Crypter

  • Lime-Crypter - An obfuscation tool for .Net + Native files.

LoGic.NET

  • LoGic.NET - A more advanced free and open .NET obfuscator using dnlib.

M =>

MancoSoftware

  • MancoSoftware - Manco .NET Licensing System is the powerful licensing and copy protection software for .NET Windows Forms, WPF, WCF, WWF and ASP.NET applications, controls and components.

MdCrypt

  • MdCrypt - [WIP] A next-generation protector for .NET applications (.NET Framework, .NET Core, and more)

MemeVM

  • MemeVM - A small virtualizer for .NET which works together with ConfuserEx

MindLated

ModPhuserEx

  • ModPhuserEx - A .NET protector supporting .NET Core forked from the discontinued ConfuserEx

MPRESS

  • MPRESS - Free high-performance executable packer for PE32/PE32+/.NET executable formats!

N =>

netshrink

  • netshrink - netshrink is an exe packer aka executable compressor, application password protector and virtual DLL binder for Windows & Linux .NET applications.

Neo ConfuserEx

  • Neo ConfuserEx - Updated ConfuserEX, an open-source, free obfuscator for .NET applications

NetFuscate

  • NetFuscate - NETFuscate is a .NET obfuscator and a .NET code protection tool that offers protection against reverse engineering of your code.

NetShields

  • NetShields - A really strong & recommended for .NET Obfuscator

NETGuard

  • NETGuard - NETGuard.IO will decompose your file, encrypt your strings, data, resources, methods, will perform numerous runtime-based verifications to ensure a fully-shielded security for your file. The list of feature can be founded on our official documentation page.

NET Reactor

  • NET Reactor - NET Reactor is a powerful .NET code protection and software licensing system which completely stops any decompiling.

NETZ Compressor

NET-Obfuscator

Noisette

  • Noisette - An Obfuscator for .NET assembly

O =>

obfuscatus

  • obfuscatus - a .NET obfuscator based on mono cecil

ObfuscationAttributes

  • ObfuscationAttributes - Add watermarks of obfuscators, makes de4dot think your file is obfuscated. bad 2016 code, i dont recommend anyone uses it

Obfuscord

  • Obfuscord - Obfuscates A file Through Discord as a Bot using Discord.Net Api

Obfuscar

  • Obfuscar - Open source obfuscation tool for .NET assemblies

Obfuscator.NET 2009

OctopusObfuscator

Orange Heap obfuscator


P =>

pshield

  • pshield - Plugin-based obfuscator

Panda-Obfuscator

  • Panda-Obfuscator - PandaObfuscator an simple Obfuscator, free, OpenSource for .Net Applications

PAOfuscator

PC Guard

  • PC Guard - Professional software protection and licensing system for .NET framework (x86, AnyCpu, x64) and Windows 32bit and 64 bit applications.

PEunion

  • PEunion - PEunion (Binder, Crypter & Downloader)

Phoenix Protector

PV Logiciels dotNet Protector

  • PV Logiciels dotNet Protector - PV Logiciels dotNet Protector is a powerful .NET code protection system that prevents your assemblies from being decompiled.

R =>

Rzy Protector


S =>

Semantic Designs

  • Semantic Designs - The C# Obfuscator tool scrambles C# source code to make it very difficult to understand or reverse-engineer

Self-Morphing C# Binary

SharpObfuscator

  • SharpObfuscator - It is a Software Protection tool, designed to help .NET developers efficiently protect their software. It will obfuscate and protect your .NET code, optimize your .NET assembly for better deployment, minimize distribution size, increase performance & add powerful post-deployment debugging capabilities.

Skater .NET Obfuscator

  • Skater .NET Obfuscator - Rustemsoft proposes Skater .NET Obfuscator, an obfuscation tool for .NET code protection. It implements all known software protection techniques and obfuscation algorithms.

SkiDzEX

  • SkiDzEX - A modded version of ConfuserEx | SkiDzEx

SmartAssembly

  • SmartAssembly - Protect your .NET code and IP with SmartAssembly

String Encrypt

  • String Encrypt - Encrypt strings in source code & files using randomly generated algorithms, and generate the corresponding unique decryption code for any supported programming language.

StrongVM

  • StrongVM - StrongVM is a virtualizing protector for .NET applications.

SourceCodeObfuscator

SpecterObfuscator

Spices

  • Spices - Spices.Net Obfuscator is a .Net code obfuscation, protection and optimization tool that offers the wide range of technologies to completely protect your .Net code and secure your data.

T =>

Themida

  • Themida - Advanced Windows software protection system

Trinity-ConfuserEx-Mod


U =>

Unikod

  • Unikod - Text styling & obfuscation library for C#

V =>

vot4cs

  • vot4cs - A Virtualization Obfuscation Tool for C# program

VaporObfusactor

  • VaporObfusactor - VaporObfuscator is an obfuscator for .net made with dnlib

VMProtect 3.4

  • VMProtect 3.4 - VMProtect protects code by executing it on a virtual machine with non-standard architecture that makes it extremely difficult to analyze and crack the software. Besides that, VMProtect generates and verifies serial numbers, limits free upgrades and much more.

Y =>

Yano

  • Yano - Yano is an advanced obfuscator for Microsoft .NET applications

Z =>

Z00bfuscator

  • Z00bfuscator - Z00bfuscator is the simple, open-source, cross-platform obfuscator for .NET Assemblies built on .NET Core

.net-obfuscator's People

Contributors

kvanttt avatar mrakdev avatar notoriousrebel avatar notprab avatar sndjones001 avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.