Сообщений 39    Оценка 125 [+1/-0]         Оценить  
Система Orphus

Проект “Phoenix”

Дизассемблер/декомпилятор сборок .NET

Автор: М. Ушаков
Опубликовано: 20.06.2004
Исправлено: 16.11.2005
Версия текста: 1.0
Что это такое

Краткая характеристика проекта

Планируемые возможности
Текущее состояние проекта
Текущие планы

Что это такое

Данный проект имеет своей целью создание утилиты для работы с файлами, содержащими MSIL байт код. На первоначальном этапе планируется научиться работать с метаданными .NET.

Краткая характеристика проекта

  1. Платформа - .NET v. 1.1
  2. Язык разработки - C#
  3. Пользовательский интерфейс – GUI
  4. Модульная, расширяемая архитектура

Планируемые возможности

  1. Дизассемблирование:
  1. Декомпиляция:
  1. Ресурсы – показ, экспорт;
  2. Работа с двоичным представлением метаданных (на уровне таблиц PE файла)
  3. Механизм деобфускации;
  4. Возможность работы со сборками версий MSIL выше 1.1 (поддержка generics)

Текущее состояние проекта

Реализовано:

  1. Базовая архитектура работы с метаданными (замена стандартному System.Reflection по части сбора данных)
  2. Просмотр метаданных сборки.
  3. Форматтер MSIL, C#
  4. Замена CodeDOM – пространство имен Phoenix.CodModel
  5. Декомпилятор
  6. GUI – кой – какой.

Текущие планы

Ввести в CodeModel понятия CompileUnit, Namespace, TypeDeclaration и т.п. для более полного описания единицы трансляции в декомпиляторе.

Переписать форматер C# для поддержки новых понятий CodeModel и упрощения самого форматтера - сейчас он занимается несвойственными ему функциями.

Сделать поддержку атрибутов.

Сделать поддержку полей с FieldRVA != 0

При разрешении системных сборок сделать эмуляцию логики .NET framework – при запросе отсутствующих сборок framework`a загружать подходящие сборки версии не ниже запрашиваемых.

Архитектура AssemblyBuilder - для отсутствующих сборок (от которых зависит анализируемая сборка) создавать временные сборки, состоящие из метаданных «выуженных» из таблиц импорта.

Ввести понятие проекта

Состав проекта

Настройки UI

Анализируемая сборка

Автогенеренные сборки

Результаты декомпиляции.


Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав.
    Сообщений 39    Оценка 125 [+1/-0]         Оценить