Рекомендуем

Работа с файлами в Win32Румянцев П.В. Работа с файлами в Win32
Азбука программирования в Win 32 APIРумянцев П.В. Азбука программирования в Win 32 API
Проектирование интерфейса пользователя средствами Win32 APIГанеев Р.М. Проектирование интерфейса пользователя средствами Win32 API

Книга

Исследование программ: до дизассемблера и отладчика

2-е изд., стереотип.
Первое издание вышло в свет в 2004 г.
2017 г.
367 стр.
Тираж 50 экз.
Формат 60х90/16 (145x215 мм)
Исполнение: в мягкой обложке
ISBN 978-5-9912-0681-5
ББК 32.97
УДК 004.42
Аннотация

Приведена обширная информация о структуре PE-файлов (исполняемых файлов операционных систем семейства Microsoft Windows). Рассмотрены структура исполняемого файла в целом, а также структура составляющих его частей. Особое внимание уделено вопросам не отражённым в документации Microsoft, а также неточностям в документации. Рассмотрены методы исследования программ, используемые до начала исследования программ при помощи дизассемблеров и отладчиков. Книга содержит многочисленные примеры, иллюстрирующие работу с отдельными частями исполняемого файла, такими как таблицы экспорта, импорта, ресурсы. Несмотря на то, что книга рассчитана на программистов, она позволит понять всем интересующимся «внутренностями» исполняемых файлов – из каких «составных частей» состоят файлы .exe и .dll.

Для программистов, будет полезна специалистам по защите информации, студентам и аспирантам.

Оглавление

Предисловие. Немного философии

Введение

Заголовки исполняемого (РЕ) файла
Заголовок DOS
Заголовки PE-файла
«Обязательный» заголовок PE-файла
«Необязательный» заголовок РЕ-файла

Таблица разделов

Разделы
Раздел экспорта
Раздел импорта
Раздел ресурсов
Окно диалога
Информация о версии программы
Ресурс типа меню
Строковые ресурсы

Формат метаданных, используемых платформой .NET
Структура таблиц метаданных
Логическая структура метаданных
Как «добраться» до кода
Обработчики исключений

Ресурсы в исполняемых файлах .NET
Работа с ресурсами в приложениях
Программное добавление ресурсов
Добавление ресурсов из командной строки
Добавление ресурсов в VS.NET
Использование ресурсов в приложении
Физическая организация ресурсов в исполняемом файле
Формат .resources

Логическое представление данных
Формирование манифеста сборки
Формирование данных о сборке
Формирование списка файлов
Формирование описания ресурсов
Формирование описания модуля
Получение логической структуры данных из физической структуры
Сигнатуры и их раскодирование
Получение исходного кода программы
Дизассемблирование программ

Приложения
Приложение А. Описание работы программы-просмотрщика
Приложение Б. Возможные значения поля Characteristics в структуре IMAGE_SECTION_HEADER
Приложение В. Возможные значения битов логической шкалы в описании элемента меню
Приложение Г. Список таблиц, используемых CLR
Приложение Д. Список закодированных токенов и число разрядов, на которые необходимо производить сдвиг