Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » PEAnatomist

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6

Открыть новую тему     Написать ответ в эту тему

RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
PEAnatomist


Бесплатная утилита PEAnatomist поддерживает практически все известные и некоторые недокументированные структуры внутри файлов MS PortableExecutable (EXE, DLL, SYS и подобных), библиотек LIB и объектных файлов в форматах COFF, MSVC CxxIL и ExtendedObj, файлов отладочной информации в форматах DBG и MS PDB, а также выполняет несложный анализ полученных данных.
 
Программа не ограничивается обычным набором из файлового/опционального заголовков, импорта, экспорта, ресурсов и т.д. PEAnatomist глубоко вонзает "скальпель" в таблицы Base Relocations, LoadConfig и ExceptionsData.
Вскрываются все поля и таблицы из LoadConfig - вплоть до версий из свежайших Windows SDK и ещё не документированных. Производится лёгкий анализ содержимого по релоцируемым VA, в т.ч. для специфичных типов релокации архитектур ARM7 Thumb и IA64. И, наконец, полный разбор таблиц ExceptionsData для архитектур x64, ARM7, ARM7 Thumb, ARM64 (в том числе и гибридных CHPE и ARM64EC), IA64 и специфичных для языка данных обработки исключений.
На закуску ещё есть декодирование всех элементов из Rich-подписи с указанием всех используемых при создании PE инструментов, отображение многих типов отладочной информации, заголовков VisualBasic5/6, таблиц метаданных dotNET и нативных сборок (NGEN и Ready2Run).
Кроме PE формата, поддерживаются и объектные файлы COFF, ExtendedObj и MSVC CxxIL (промежуточный язык компилятора MSVC), MS PDB (ProgramDatabase) в формате MSFv7 и DBG (Stripped Debug Information).
Установка программы не требуется, дополнительных зависимостей нет. Права администратора программе не нужны, но без них не получится добавить ассоциации с файлами в проводнике. Программа никуда кроме файла настроек (рядом с программой или в %appdata% в зависимости от ряда условий) ничего не пишет, не отправляет.


 
Домашняя страница :: Список изменений :: Скачать новую версию 0.2.12509.1612 (2024-01-09)

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 19:56 11-10-2019 | Исправлено: RamMerLabs, 21:01 15-01-2024
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los
Если речь идёт именно от ресурсах, а не о распознанных строках в пределах всего файла, то для их просмотра есть отдельная вкладка - "Ресурсы". Конечно, можно смотреть текстовые ресурсы и во через поиск строк, но проще воспользоваться предназначенной для этого функцией.
Насколько мне известно, тот же ResourceHacker не делает поиск строк по всему файлу, так что сравнить в данном случае не получится.

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 12:48 05-01-2021 | Исправлено: RamMerLabs, 12:49 05-01-2021
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
RamMerLabs,
я об этом
exescope

res hacker

 
 
 

Всего записей: 7336 | Зарегистр. 08-09-2001 | Отправлено: 14:38 05-01-2021
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los
Дык и я об этом же. Это ресурсы - отдельная директория в PE-файлах, формируемая по отдельно заданным правилам. Для них в PEAnatomist'е так же есть отдельная вкладка - "Ресурсы" ("Resources"). И там точно так же есть указание локализации ресурса.  
Вкладка "Строки" ("Strings"), скриншот которой Вы привели в первом своём посте - это инструмент, позволяющий распознать любые строки в любом месте файла безразлично к исходному формату. С его помощью можно увидеть и строки в ресурсах, но в силу особенностей формата директории ресурсов (строки не нуль-терминированые, а с предварительным указанием длины), выглядеть это может немного "нечитаемо" что ли. Смотреть ресурсы детектором строк - всё равно, что есть суп вилкой - результат будет, но ведь есть специальный инструмент

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 15:00 05-01-2021
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обновление программы до версии 0.2.1 (2021-03-04):
110B.009: Значительное улучшение парсера символов MSVC ILStore (CxxIL) и увеличение совместимости с различными версиями VS
1111.027: Добавлено декодирование таблицы локальных символов (.cil$sy) формата MSVC ILStore (CxxIL) в OBJ-файлах
1117.033: Добавлено отображение номера строки начала функции в исходном файле в описании символов MSVC ILStore (CxxIL)
1117.034: Исправлено отображение имён исходных файлов в описании символов MSVC ILStore (CxxIL) для версий VS 2002 и 2003 (кодировка не UTF8)
1118.035: Исправлено декодирование LF_POINTER в таблицах типов CodeView и MSVC ILStore (CxxIL), если описываемый тип является указателем на член класса
1119.036: Изменены имена некоторых ключей в файле настроек для переносимости в будущих версиях
111B.039: Исправлено отображение описания CodeView типа в таблицах MSVC ILStore (CxxIL), если отладочная информация вынесена в PDB
111C.046: Устранена ошибка отображения неправильного имени в описании типа CodeView, на который ссылается другой тип или символ (в редких случаях)
1201.071: Ускорена работа с секциями в OBJ-файлах (построение индексов для быстрого доступа к секциям с однородным содержимым)
1205.081: Добавлена поддержка ExtendedObj файлов (a.k.a. BIGOBJ, obj-файлы с количеством секций больше 0xFEFF)
1207.094: Для некоторых типов отладочной информации CodeView доступно более подробное описание (например для LF_POINTER, LF_MODIFIER, LF_ARRAY и LF_BITFIELD выводятся описание типа, на который они ссылаются, и некоторые свойства)
120C.110: Уточнена интерпретация части данных из подписи Rich
121B.116: Лицензия программы изменена с MIT на Freeware (текст Лицензионного соглашения размещён в файле "Readme")
1303.122: Исправлена ошибка разбора информации о версии из секции ресурсов в отдельных случаях
1304.123: Исправлена ошибка получения имени файла для LIB-архивов, созданных BSD-совместимым набором инструментов
1304.124: Добавлена поддержка ARM64EC в OBJ-файлах

 
Сайт программы # Скачать новую версию

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 22:48 04-03-2021
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обновление программы до версии 0.2.2 (2021-03-25):
1305.000: Исправлено отображение названия типа CodeView в описании, если индекс типа не задан
1307.001: Устранена ошибка отображения текста манифеста из ресурсов PE в редких случаях
1307.003: Добавлена поддержка IA64, MIPS и Hitachi SH4 архитектур в парсере CxxIL
1308.006: Исправлена ошибка разбора CxxIL для MSVC из VS2008Beta1
1309.007: Устранен бесконечный разбор таблицы IMAGE_DIRECTORY_ENTRY_BASERELOC в редких случаях
1309.008: Исправлена ошибка отображения IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG для некоторых файлов, созданных версиями компоновщика ниже 6.0
1309.010: Исправлено возможное ошибочное распознавание OBJ-файла (регресс версии 0.2.1)
130D.019: Чистка и оптимизация процедур разбора кодов раскрутки ARM Thumb и ARM64
130F.022: Добавлено текстовое описание условия выполнения эпилога для кодов раскрутки ARM Thumb
130F.023: Исправлена ошибка отображения условия выполнения эпилога для кодов раскрутки ARM Thumb, если эпилог указан как единственный (флаг E)
130F.028: Добавлен подсчёт начала эпилога для кодов раскрутки ARM Thumb и ARM64, если эпилог указан как единственный (флаг E)
1311.029: Исправлена мелкая ошибка в определении минорной версии VS2017-2019 в Rich подписи (регресс версии 0.2.1)
1311.030: Исправлена ошибка отображения значений из IMAGE_DELAYLOAD_DESCRIPTOR.UnloadInformationTableRVA в таблице отложенного импорта
1312.044: Исправлен механизм наполнения сведений для описания RVA в PE, добавлено обнаружение новых сведений
1312.045: Ускорено отображение таблицы GFID
1313.046: Упрощена процедура загрузки некоторых файлов
1315.051: Хранение сведений для описания RVA в PE переведено в хеш-таблицу, значительно сократилось время поиска описания для RVA
1318.053: Добавлена реакция на Ctrl+Insert наравне с Ctrl+C для копирования в буфер обмена из ListView
1318.057: Расширен набор статусной информации из ListView: номер строки в фокусе, общее число строк, число выделенных строк

 
Сайт программы # Скачать новую версию

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 00:21 25-03-2021
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обновление программы до версии 0.2.3 (2021-05-09):
1319.000: Исправлено значение номера отмеченной строки для пустого ListView в определённых ситуациях
131A.001: Устранено возможное зависание программы после возобновления поиска, если содержимое списка было изменено
131B.007: Добавлено определение начала функции и её описания на вкладке LoadConfig GuardEHContinuations для x64
131B.008: Исправлено отображение индекса в таблице типов CodeView в OBJ-файлах, если используется PCH (регресс версии 0.2.2)
140B.011: Оптимизировано отображение статусной информации из ListView для очень больших списков
140B.014: Добавлено отображение дополнительных записей символов Function (.bf, .ef) и FunctionSym в таблице COFF-символов OBJ-файлов
140C.015: Исправлено ошибочное отображение значения INT в таблице CFG IAT, если импорт происходит по ординалу (регресс версии 0.2.2)
140D.017: Добавлен разбор /<XFGHASHMAP>/ в LIB-файлах
140F.022: Добавлен сбор сведений об обработчиках исключений (x64, ARM, ARM Thumb, ARM64, IA64) и COFF-символах для описания RVA в PE файлах
1410.025: Ускорено отображение таблицы COFF-символов в PE-файлах, добавлено отображение некоторых дополнительных записей символов
1411.029: Выпадающий список с выбором колонки для поиска отключается, если доступен только текстовый поиск по всем колонкам (т.е. только один вариант поиска)
1413.031: Добавлен экспорт битовой карты GFID в файл
1415.032: Исправлена ошибка разбора таблицы ресурсов в PE-файлах в случае размещения IMAGE_RESOURCE_DATA_ENTRY в самом конце таблицы
1416.038: Добавлено опциональное отображение полных путей в списке недавних файлов, длинные пути ограничиваются до имени файла и начальной части пути
1416.039: Изменён формат заголовка главного окна - первым выводится имя загруженного файла
1417.045: Устранена избыточная работа с меню во время загрузки файлов и формирования списка недавних файлов
1418.046: Добавлено уведомление оболочки ОС об изменении ассоциаций с файлами
1419.049: Добавлена опциональная всплывающая подсказка с описанием RVA, вычисляемого в FLC (по умолчанию выключена)
141A.053: Добавлено определение начала функции и её описания на вкладке LoadConfig GuardEHContinuations для ARM64 (InsiderPreview 21364)
141B.055: Исправлена ошибка отображения множественного значения ключа "Translation" в ресурсах RT_VERSION
141B.057: Добавлена колонка с описанием функций в таблице ExceptionsData для всех поддерживаемых архитектур (для x64, ARM Thumb и ARM64 некоторые колонки теперь скрыты по умолчанию)
1505.059: Исправлена ошибка отображения SEH Scope на странице ExceptionsData для ARM7/ARM LE в некоторых случаях
1507.060: Добавлена отдельная вкладка для цепи раскрутки ARM64 на странице ExceptionsData
1507.072: Добавлено распознавание некоторых типов обработчиков исключений для всех поддерживаемых архитектур
1507.073: Добавлена колонка с типом обработчиков исключений в таблице ExceptionsData, колонка с RVA обработчика скрыта по умолчанию
1508.074: Устранена редкая ошибка наполнения сведений из таблицы экспорта для описания RVA

 
Сайт программы # Скачать новую версию

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 01:41 09-05-2021
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обновление программы до версии 0.2.4 (2021-06-08):
150F.001: Добавлен код раскрутки для инструкций Pointer Authentication extension из ARM64 (InsiderPreview 21382)
1511.003: Добавлена колонка со значением глубины цепи раскрутки в таблице ExceptionsData для x64 (по умолчанию скрыта)
1511.004: Исправлена ошибка включения скрытых по умолчанию колонок в ListView после перезапуска программы (регресс с версии 0.2.0)
1516.013: Устранен крах программы во время разбора испорченной таблицы COFF-символов в PE-файлах
1517.015: Исправлена старая ошибка отображения вкладки "Безопасность" для PE-файлов в отдельных случаях
1518.016: Исправлена ошибка валидации настроек положения окна программы, если противоположные стороны окна выходят за пределы рабочего стола (регресс с версии 0.2.0)
151B.021: Добавлен график энтропии
151B.025: Добавлены настройки вычисления энтропии для построения графика и настройки отображения графика
1601.032: Добавлена подсказка о смещении в файле и соответствующей секции под курсором на графике энтропии
1604.033: Последняя активная вкладка диалога настроек восстанавливается при его повторном открытии (до перезапуска программы)
1608.040: Добавлены опциональные метки границ секций на графике энтропии

 
Сайт программы # Скачать новую версию

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 00:18 09-06-2021
qqqqqqqqqqa

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Классная тулза! Предлагаю фичу: проверять сертификаты и описывать их статус тут: https://i.imgur.com/Oi9lVJW.png
 
Пример как это делают другие:
https://i.imgur.com/4YOpAD1.png

Всего записей: 1 | Зарегистр. 25-07-2018 | Отправлено: 15:39 06-08-2021
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
qqqqqqqqqqa
Спасибо за отзыв!
Есть планы переделать всю вкладку с информацией о PE Authenticode, но это не приоритетная задача.  
Расчёт и проверку хешей - как самого Authenticode, так и других (т.е. sha/sha2 и всяких fuzzy-хешей) - вообще пока не рассматриваю, имхо это будет только лишняя работа на их вычисление, в то время как мне хотелось бы сохранить максимально быстрый запуск и работу программы, особенно для сравнительно больших файлов. Возможно вычисление хешей будет добавлено, когда программа наконец станет многопоточной и подобные вычисления можно будет проводить в фоне по мере необходимости.

Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 15:15 07-08-2021
RamMerLabs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обновление программы до версии 0.2.5 (2021-08-25):
  • Ревизия контекстного меню ListView и улучшение доступности управления с клавиатуры
  • Добавлена поддержка Cxx20Modules в парсере MSVC ILStore (CxxIL)
  • Добавлены настройки количества запоминаемых недавних файлов и форматирования копируемого в буфер обмена текста
  • Актуализированы некоторые относящиеся к ARM64EC структуры из WDK 22000
  • Значительно ускорено построение таблицы ExceptionsData в OBJ-файлах
  • Исправлено несколько ошибок
     
    Сайт программы # Подробнее об изменениях # Скачать новую версию

  • Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 14:40 25-08-2021 | Исправлено: RamMerLabs, 14:41 25-08-2021
    dermatolog

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RamMerLabs
    Пожалуйста, загляните в РМ.

    Всего записей: 49 | Зарегистр. 13-02-2003 | Отправлено: 11:30 06-09-2021
    RamMerLabs

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Обновление программы до версии 0.2.6 (2021-11-08):
  • Исправлен ряд ошибок парсера таблиц импорта для модифицированных PE
  • Актуализированы сведения о новых символах Codeview из VS2022
  • Уточнена интерпретация некоторых номеров сборки из подписи Rich
  • Расширен набор данных для описания CoffGroups в таблице IMAGE_DEBUG_TYPE_POGO
  • Многочисленные мелкие исправления
     
    Сайт программы # Подробнее об изменениях # Скачать новую версию

  • Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 20:48 08-11-2021
    ValidolX

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RamMerLabs
    закинул файло, на коем зависон, надо убивать процесс

    Всего записей: 1719 | Зарегистр. 22-07-2001 | Отправлено: 23:36 08-11-2021
    RamMerLabs

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ValidolX
    Спасибо, такой файл видел, это из подборки corkami, но пока что решение этой проблемы не приоритетно.

    Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 01:30 09-11-2021
    Lin1980



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RamMerLabs
    Приветствую, а оверлей не отображается или он где-то спрятан в меню?

    Всего записей: 1293 | Зарегистр. 19-04-2007 | Отправлено: 20:30 09-11-2021
    RamMerLabs

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Lin1980
    Доброго дня!
    Нет, с оверлеем программа никак явно не контактирует. За исключением чтения Authenticode-подписи, разумеется.
    Лишь на графике энтропии оверлей будет отображён, если исследуемый файл удастся смапить  вместе с оверлеем (если файл настолько большой, что не может быть смаплен целиком в АП 32-битного процесса, то оверлей вовсе мапиться не будет).
    А что бы Вы хотели увидеть касательно оверлея?

    Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 21:42 09-11-2021 | Исправлено: RamMerLabs, 21:45 09-11-2021
    Lin1980



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RamMerLabs
    Да собственно пока ничего конкретного, хотя бы его наличие, адрес, размер

    Всего записей: 1293 | Зарегистр. 19-04-2007 | Отправлено: 15:51 10-11-2021
    RamMerLabs

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Обновление программы до версии 0.2.7 (2022-01-03):
     
  • Расчёт энтропии с настраиваемым перекрытием блоков для графика энтропии
  • Возможность сохранять в файл сразу несколько выделенных ресурсов PE или записей из LIB
  • Cтраница с описанием WoW-переходников в гибридных PE (ARM64EC,ARM64X)
  • Исправлена ошибка обработки таблицы исключений для кода эмулируемой архитектуры в гибридных PE (ARM64EC)
  • Улучшена совместимость с отдельными старыми версиями MS Visual Studio
     
    Сайт программы # Подробнее об изменениях # Скачать новую версию

  • Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 23:30 03-01-2022
    WWWaiyter



    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Афигеть.. Софт для работы с ресурсами в килобайтах..! И такой полезный... Респект прям...

    Всего записей: 4355 | Зарегистр. 26-12-2019 | Отправлено: 14:16 21-01-2022
    RamMerLabs

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Обновление программы до версии 0.2.8 Final (2022-03-05):
     
  • Добавлено отображение информации о IMAGE_DEBUG_TYPE_BBT (Basic Block Transformation)
  • Исправлена ошибка разбора заголовка CORCOMPILE_HEADER для .NetFramework 4.6 - 4.6.2
  • Добавлена поддержка IMAGE_FILE_MACHINE_POWERPCBE (Xbox 360, только несжатые PE)
  • Добавлена поддержка IMAGE_REL_BASED_HIGHADJ
  • Исправлен ряд ошибок
     
    Сайт программы # Подробнее об изменениях # Скачать новую версию

  • Всего записей: 94 | Зарегистр. 24-02-2007 | Отправлено: 22:52 05-03-2022
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6

    Компьютерный форум Ru.Board » Компьютеры » Программы » PEAnatomist


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru