Перейти к содержимому
Aback Tools Logo

Декодер обфусцированных стек-трейсов .NET

Декодируйте обфусцированные стек-трейсы .NET от ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly и других. Инструмент автоматически определяет тип обфускатора по шаблонам имён, разбирает каждый кадр и предоставляет интерактивный маппер символов для ручного переименования. Вся обработка выполняется локально и приватно — бесплатно, без регистрации.

.NET Obfuscated Stack Trace Decoder

Paste an obfuscated .NET stack trace to decode obfuscated class and method names. The tool automatically detects which obfuscator was used (ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly, or Babel.NET) based on naming patterns. Rename obfuscated symbols manually in the mapping table and see the deobfuscated trace update live.

Examples:

Paste an obfuscated .NET stack trace above to decode it. The tool automatically detects the obfuscator type, parses each frame, and lets you manually rename obfuscated symbols. Click any example below the input area to try it with different obfuscation patterns.

Почему стоит использовать наш декодер обфусцированных стек-трейсов .NET?

  • Мгновенная деобфускация стек-трейсов .NET: декодируйте обфусцированные стек-трейсы .NET сразу, вставив трейс и позволив инструменту распознать шаблоны обфускаторов ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly и других. Каждая строка разбирается и аннотируется, а обфусцированные имена классов и методов выделяются для удобства. Переименовывайте любой символ вручную одним щелчком.
  • Безопасная и приватная обработка стек-трейсов .NET: вся деобфускация стек-трейсов происходит исключительно в вашем браузере. Ваши обфусцированные трейсы, данные сопоставления и результат деобфускации никогда не покидают устройство. Никаких загрузок данных, никакого отслеживания, никакой регистрации — полная приватность для работы с проприетарным кодом .NET.
  • Онлайн-декодер стек-трейсов без установки: используйте декодер стек-трейсов .NET прямо в любом современном браузере без загрузок, плагинов IDE и дополнительных инструментов. Включает интерактивный просмотрщик трейсов с построчным разбором, определение обфускатора с оценкой уверенности, ручное переименование символов с живым предпросмотром и экспорт результата деобфускации.
  • Совместимость со всеми основными обфускаторами .NET: поддерживает стек-трейсы от ConfuserEx, Dotfuscator, Obfuscar, SmartAssembly, Babel.NET и .NET Reactor. Распознаёт такие шаблоны имён, как имена классов и методов из одной буквы (a, b, A, B), имена с подчёркиванием в начале (_a, _b), числовые суффиксы (a_0, a_1) и хешированные идентификаторы. Движок определения оценивает каждый шаблон, чтобы выявить вероятный инструмент обфускации.

Типичные сценарии использования декодера стек-трейсов .NET

  • Отладка обфусцированных отчётов о сбоях .NET: когда приложение .NET падает в продакшене, стек-трейс содержит обфусцированные имена классов и методов вроде a.a() или Class1.Method1(). Разработчики используют декодер, чтобы определить, какие реальные ветви кода дают сбой, что позволяет отлаживать проблемы без файла сопоставления исходного кода.
  • Анализ обфусцированных сторонних библиотек .NET: исследователи безопасности и разработчики, работающие со сторонними .NET-библиотеками, часто сталкиваются с обфусцированными ссылками на сборки в стек-трейсах. Декодер помогает выявить паттерны вызовов, понять поведение библиотеки и решить проблемы интеграции без реверс-инжиниринга всего бинарника.
  • Реагирование на инциденты и форензика: при расследовании инцидентов безопасности с участием .NET-вредоносного ПО или скомпрометированных приложений аналитики используют декодер для разбора обфусцированных трейсов из журналов событий, дампов сбоев и систем мониторинга. Декодированные трейсы раскрывают поток выполнения, помогая выявить векторы атак и пострадавшие компоненты.
  • Анализ сбоев в CI/CD-конвейерах: в автоматизированных CI/CD-конвейерах обфусцированные стек-трейсы из релизных сборок можно захватывать и декодировать для выявления регрессий. Декодер помогает сопоставить обфусцированные стек-трейсы со значимыми идентификаторами, позволяя командам точно определить изменения кода, вызвавшие ошибки сборки или времени выполнения.
  • Интеграция с APM и отслеживанием ошибок: инструменты мониторинга производительности приложений (APM), такие как Sentry, Application Insights и Datadog, захватывают обфусцированные стек-трейсы из релизных сборок. Разработчики вставляют эти трейсы в декодер, чтобы понять, какие функции, модули или компоненты вызывают ошибки, и расставить приоритеты исправлений по реальному влиянию.
  • Обучающий инструмент для анализа обфускации .NET: преподаватели по безопасности и тренеры по .NET используют декодер, чтобы обучать студентов техникам обфускации и реверс-инжиниринга. Студенты могут вставлять обфусцированные трейсы, видеть, как разные шаблоны обфускации (ConfuserEx против Dotfuscator против Obfuscar) создают различные соглашения об именах, и учиться декодировать каждый из них.

Что такое деобфускация стек-трейсов .NET?

Деобфускация стек-трейсов .NET — это процесс преобразования обфусцированных имён классов и методов в стек-трейсах исключений .NET обратно в читаемые, осмысленные идентификаторы. Когда приложения .NET обфусцируются инструментами вроде ConfuserEx, Dotfuscator или Obfuscar, все имена метаданных систематически заменяются короткими бессмысленными идентификаторами. Стек-трейс, который изначально выглядел как MyApp.Services.UserService.Authenticate(), может превратиться в a.a() или _0._1().

Наш декодер стек-трейсов .NET разбирает обфусцированные трейсы, определяет использованный обфускатор по шаблонам имён и предоставляет интерактивный интерфейс для ручного переименования обфусцированных символов. Хотя автоматическое восстановление исходных имён невозможно без файла сопоставления обфускатора, декодер значительно сокращает усилия, необходимые для понимания обфусцированных отчётов о сбоях и журналов.

Как работает наш декодер стек-трейсов .NET

  1. 1. Вставьте стек-трейс: скопируйте обфусцированный стек-трейс .NET из журналов ошибок, отчётов о сбоях или APM-инструмента и вставьте его в поле ввода. Декодер поддерживает все стандартные форматы стек-трейсов исключений .NET, включая многострочные трейсы с информацией InnerException и TargetSite. Приведены примеры трейсов для демонстрации различных шаблонов обфускации.
  2. 2. Проанализируйте и определите обфускатор: инструмент разбирает стек-трейс построчно, извлекая все имена пространств имён, классов и методов. Движок определения обфускации анализирует шаблоны имён, длины идентификаторов и структурные характеристики, чтобы выявить вероятный обфускатор. Каждый результат включает оценку уверенности. Разобранный трейс отображается в интерактивной таблице с номером строки, обфусцированным именем и обнаруженными шаблонами.
  3. 3. Переименуйте и экспортируйте: нажмите на любое обфусцированное имя в трейсе, чтобы назначить осмысленную замену. Таблица сопоставления отслеживает все ваши переименования и применяет их согласованно по всему трейсу. Результат деобфускации обновляется в реальном времени по мере переименования. Скопируйте деобфусцированный трейс или экспортируйте таблицу сопоставления в JSON для повторного использования с трейсами той же сборки.

Разбор шаблонов имён обфускации .NET

  • Имена из одной буквы (ConfuserEx): классы и методы переименовываются в одну строчную букву: a.a(), b.a(), c.b(). Первая буква обозначает класс, вторая — метод. Когда буквы заканчиваются, используются имена из двух букв (aa.ab()).
  • Шаблон Dotfuscator: использует имена классов из одной буквы с нумерованными суффиксами методов: A.a(), A.a_0(), B.b(). Dotfuscator сохраняет регистр: заглавные буквы для классов, строчные для методов.
  • Шаблон Obfuscar: имена полностью строчными буквами без структуры пространств имён: class_a.method_a(), class_b.method_b(). Obfuscar также использует сгенерированные компилятором имена классов отображения <>c и <>9 для лямбда-замыканий.
  • Шаблон SmartAssembly: более длинные хешированные идентификаторы с подчёркиваниями, например _003A_Class._003A_Method() или Class_0.Method_0(). SmartAssembly также использует закодированные Unicode-escape в именах метаданных, из-за чего они выглядят как мусорный текст в стек-трейсах.
  • Смешанные и пользовательские шаблоны: некоторые обфускаторы комбинируют техники или используют собственные схемы имён. Декодер определяет несколько сигнатур шаблонов на запись и сообщает наиболее вероятный обфускатор по общему распределению шаблонов.

Приватность, безопасность и доступность

Инструмент «Декодер стек-трейсов .NET» на 100% бесплатный и не требует регистрации. Весь разбор и деобфускация стек-трейсов выполняются локально в вашем браузере на JavaScript — ваши обфусцированные трейсы, данные сопоставления и результат деобфускации никогда не покидают устройство. Нет ограничений на использование или размер файла. Инструмент поддерживает автоматическое определение обфускатора с оценкой уверенности, интерактивный построчный разбор трейса, ручное переименование символов с постоянной таблицей сопоставления, применяемой ко всему трейсу, живой предпросмотр результата деобфускации, экспорт таблицы сопоставления в JSON и готовые примеры с различными шаблонами обфускации. Используйте его столько раз, сколько нужно для декодирования ваших стек-трейсов .NET.

Часто задаваемые вопросы

Декодер обфусцированных стек-трейсов .NET преобразует обфусцированные имена классов и методов в стек-трейсах .NET обратно в читаемую форму. Когда приложения .NET обфусцируются инструментами вроде ConfuserEx или Dotfuscator, имена классов и методов заменяются короткими бессмысленными идентификаторами. Этот инструмент помогает декодировать такие имена, определить использованный обфускатор и выполнить ручное переименование.

Декодер стек-трейсов поддерживает все основные обфускаторы .NET, включая ConfuserEx, Dotfuscator Community/Pro, Obfuscar, SmartAssembly, Babel.NET и .NET Reactor. Движок определения анализирует шаблоны имён, чтобы выявить вероятный обфускатор, с оценкой уверенности для каждого результата.

Без доступа к файлу сопоставления обфускатора исходные имена нельзя восстановить автоматически. Однако декодер предоставляет инструменты ручного переименования, позволяющие присвоить обфусцированным идентификаторам осмысленные имена и построить постоянную таблицу сопоставления, которую можно экспортировать в JSON для повторного использования.

Поддерживаются все стандартные форматы стек-трейсов исключений .NET, включая трейсы из консольных приложений, ASP.NET, ASP.NET Core, WPF, Windows Forms, Xamarin, Unity и .NET MAUI. Также поддерживаются трейсы из Sentry, Application Insights, Datadog и ELMAH.

Безусловно. Вся обработка происходит исключительно в вашем браузере. Ваши стек-трейсы, данные сопоставления и результат деобфускации никогда не отправляются на сервер. Аккаунт не требуется. Вы можете безопасно обрабатывать проприетарный или конфиденциальный код.

Движок определения анализирует шаблоны имён в стек-трейсе. ConfuserEx создаёт имена из одной буквы (a, b, c). Dotfuscator использует классы с заглавной буквы и методы со строчной с числовыми суффиксами. Obfuscar создаёт имена только строчными буквами с подчёркиваниями. SmartAssembly использует хешированные идентификаторы с закодированными Unicode-последовательностями.

Да. Однако каждая обфусцированная сборка создаёт уникальные обфусцированные имена. Построенная вами таблица сопоставления относится к одной версии сборки. При декодировании трейсов из другой версии потребуется создать новую таблицу сопоставления для этой версии.

Шаблон a.a() — самое распространённое соглашение обфускации имён в .NET. Первая буква (a) обозначает имя класса, вторая (a) — имя метода. Так, a.a() может означать ClassA.MethodA(). Эти шаблоны используют ConfuserEx, Dotfuscator и многие другие обфускаторы .NET.

Да — 100% бесплатно, без регистрации, без аккаунта и без ограничений на использование. Декодируйте столько стек-трейсов, сколько нужно, сколько угодно раз. Все функции, включая определение обфускатора, ручное переименование, таблицы сопоставления и экспорт, доступны без ограничений.