FreeObfuscator.NET protection

.NET · C# · DLL · EXE

Декодирование стека вызовов после обфускации

Как восстановить имена методов в трассировке ошибки с помощью файла карты переименования.

Открыть обфускатор

Загрузка файла, аккаунт и оплата используют английский интерфейс.

После переименования трассировка ошибки содержит имена вроде a.b(c d). Файл карты переименования Pro, созданный для той же сборки, позволяет восстановить имена методов и их типы.

Декодер восстанавливает имена методов и содержащие их типы, но не имена и типы параметров, а также не номера строк. Номера строк берутся из PDB неосвобождённой сборки, поэтому архивируйте её вместе с релизом.

Как защитить сборку и проверить результат

  1. Соберите проект в конфигурации Release и сохраните исходную сборку, символы и файлы конфигурации.
  2. Загрузите управляемую .NET DLL или EXE. Начните с неподписанной сборки и никогда не загружайте приватные ключи.
  3. Скачайте результат, замените сборку в тестовой среде и выполните те же функциональные тесты.

Что входит в бесплатную версию

Бесплатный тариф обрабатывает один файл размером до 1 МБ и не требует регистрации. Переименование затрудняет чтение внутренних символов. Block ILDasm помечает сборку так, что дизассемблер ILDasm от Microsoft её не открывает; другие инструменты это не блокирует. Pro добавляет шифрование строк, обфускацию потока управления и другие слои защиты. Актуальные лимиты и цены указаны на странице тарифов.

Free / Pro →

Как проверить, что защита работает

Сравните исходную и защищённую сборку в ILSpy: убедитесь, что внутренние имена изменились, а при включённом шифровании строк — что нужные строки скрыты. Затем запустите программу и сравните результаты. Успешная загрузка сборки не проверяет все пути выполнения. Обфускация повышает стоимость анализа, но не делает секреты в клиентском приложении безопасными.

ILSpy · .NET →

Связанные руководства