Skip to content

Latest commit

 

History

History
101 lines (77 loc) · 3.46 KB

File metadata and controls

101 lines (77 loc) · 3.46 KB

ConfuserExx

CI CodeQL MIT License

An actively maintained fork of ConfuserEx — an open-source protector for .NET applications.

The original mkaring/ConfuserEx has been dormant since 2022. This fork includes bug fixes, new features, and modern .NET support.

Features

  • Supports .NET Framework 2.0/3.5/4.x, .NET Standard 2.0, .NET Core, .NET 5+/6/7/8+
  • Symbol renaming (Support WPF/BAML)
  • Protection against debuggers/profilers
  • Protection against memory dumping
  • Protection against tampering (method encryption)
  • Control flow obfuscation
  • Constant/resources encryption
  • Reference hiding proxies
  • Disable decompilers
  • Embedding dependency
  • Compressing output
  • Extensible plugin API
  • Roslyn code analysis integration
  • Auto-detection of .NET runtime paths for modern framework support

What's improved over upstream

  • Fixed WPF resource renaming, .NET Standard obfuscation, control flow protection
  • Serialization-aware renaming (DataContract, DataMember, JsonProperty)
  • Graceful handling of external/unresolvable assemblies (no more crashes)
  • Auto-detection of .NET Core/5+/6/7/8+ runtime assembly paths
  • CLI --snkey and --snkeypass options for CI/CD signing
  • Wildcard module loading in .crproj files
  • Roslyn analyzers (NetAnalyzers + Roslynator) for code quality
  • GitHub Actions CI/CD with automatic releases
  • Better error messages for .NET 6+ native host executables

Usage

Confuser.CLI.exe <path to project file>

The project file is a ConfuserEx Project (*.crproj). The format of project file can be found in docs/ProjectFormat.md.

CLI Options

-n|noPause   : no pause after finishing protection
-o|out       : specifies output directory
-probe       : specifies probe directory
-plugin      : specifies plugin path
-debug       : specifies debug symbol generation
-snkey       : specifies strong name key file path
-snkeypass   : specifies strong name key password

Bug Report

See the Issues section. Please check existing issues before filing a new one.

Contributing

  1. Fork the repository
  2. Create a feature branch from pre-release
  3. Make your changes and ensure CI passes
  4. Open a PR targeting pre-release

License

Licensed under the MIT license. See LICENSE.md for details.

Contributors

Credits

0xd4d for dnlib and extensive .NET metadata knowledge. Ki (yck1509) for the original ConfuserEx. Martin Karing for maintaining the project through v1.6.