Библиотека knigago >> Компьютеры: Операционные системы >> Linux >> Практический анализ двоичных файлов


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 1757, книга: Месть одноклассника
автор: Михаил Георгиевич Серегин

Роман "Месть одноклассника" Михаила Серегина - это захватывающий детективный триллер, который удержит вас в напряжении до самого конца. Книга погружает вас в запутанный мир убийств, мести и старых обид. Сюжет разворачивается вокруг трагической смерти школьника, найденного мертвым на территории школы. Детектив Павел Романов берется за расследование и быстро понимает, что это дело больше, чем просто школьная потасовка. По мере того, как Романов углубляется в расследование, он...

СЛУЧАЙНАЯ КНИГА

Дэннис Эндриесс - Практический анализ двоичных файлов

Практический анализ двоичных файлов
Книга - Практический анализ двоичных файлов.  Дэннис Эндриесс  - прочитать полностью в библиотеке КнигаГо
Название:
Практический анализ двоичных файлов
Дэннис Эндриесс

Жанр:

Linux, Крэкинг и реверсинжиниринг

Изадано в серии:

неизвестно

Издательство:

ДМК Пресс

Год издания:

ISBN:

978-5-97060-978-1

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Практический анализ двоичных файлов"

В книге представлено подробное описание методов и инструментов, необходимых для анализа двоичного кода, который позволяет убедиться, что откомпилированная программа работает так же, как исходная, написанная на языке высокого уровня. Наряду с базовыми понятиями рассматриваются такие темы, как оснащение двоичной программы, динамический анализ заражения и символическое выполнение. В каждой главе приводится несколько примеров кода; к книге прилагается сконфигурированная виртуальная машина, включающая все примеры. Руководство адресовано специалистам по безопасности и тестированию на проникновение, хакерам, аналитикам вредоносных программ и всем, кто интересуется вопросами защиты ПО.

Читаем онлайн "Практический анализ двоичных файлов". [Страница - 2]

компиляции................................................................................... 35
1.1.3
Этап ассемблирования.......................................................................... 37
1.1.4
Этап компоновки................................................................................... 38
Символы и зачищенные двоичные файлы..................................................... 40
1.2.1
Просмотр информации о символах................................................... 40
1.2.2
Переход на темную сторону: зачистка двоичного файла. ........... 42
Дизассемблирование двоичного файла.......................................................... 42
1.3.1
Заглянем внутрь объектного файла................................................... 43
1.3.2
Изучение полного исполняемого двоичного файла. .................... 45
Загрузка и выполнение двоичного файла...................................................... 48
Резюме..................................................................................................................... 50

Глава 2. Формат ELF................................................................................................. 52
2.1

Заголовок исполняемого файла........................................................................ 54
2.1.1
Массив e_ident......................................................................................... 55
2.1.2
Поля e_type, e_machine и e_version..................................................... 56
Содержание

7

2.2

2.3

2.4

2.5

2.1.3
Поле e_entry............................................................................................. 57
2.1.4
Поля e_phoff и e_shoff............................................................................ 57
2.1.5
Поле e_flags. ............................................................................................. 57
2.1.6
Поле e_ehsize. .......................................................................................... 58
2.1.7
Поля e_*entsize и e_*num...................................................................... 58
2.1.8
Поле e_shstrndx....................................................................................... 58
Заголовки секций.................................................................................................. 59
2.2.1
Поле sh_name........................................................................................... 60
2.2.2
Поле sh_type............................................................................................. 60
2.2.3
Поле sh_flags............................................................................................ 61
2.2.4
Поля sh_addr, sh_offset и sh_size.......................................................... 61
2.2.5
Поле sh_link.............................................................................................. 62
2.2.6
Поле sh_info. ............................................................................................ 62
2.2.7
Поле sh_addralign.................................................................................... 62
2.2.8
Поле sh_entsize........................................................................................ 62
Секции..................................................................................................................... 62
2.3.1
Секции .init и .fini................................................................................... 64
2.3.2
Секция .text.............................................................................................. 64
2.3.3
Секции .bss, .data и .rodata. .................................................................. 66
2.3.4
Позднее связывание и секции .plt, .got, .got.plt.............................. 66
2.3.5
Секции .rel.* и .rela.*. ............................................................................. 70
2.3.6
Секция .dynamic...................................................................................... 71
2.3.7
Секции .init_array и .fini_array. ............................................................ 72
2.3.8
Секции .shstrtab, .symtab, .strtab, .dynsym и .dynstr........................ 73
Заголовки программы......................................................................................... 74
2.4.1
Поле p_type............................................................................................... 75
2.4.2
Поле p_flags.............................................................................................. 76
2.4.3
Поля p_offset, p_vaddr, p_paddr, p_filesz и p_memsz......................... 76
2.4.4
Поле p_align. ............................................................................................ 76
Резюме..................................................................................................................... 77

Глава 3. Формат PE: краткое введение. ...................................................... 78
3.1
3.2

3.3
3.4
3.5

Заголовок MS-DOS и заглушка MS-DOS. ......................................................... 79
Сигнатура PE, заголовок PE-файла и факультативный заголовок PE...... 79
3.2.1
Сигнатура PE........................................................................................... 82
3.2.2
Заголовок PE-файла............................................................................... 82
3.2.3
Факультативный заголовок PE............................................................ 83
Таблица заголовков секций................................................................................ 83
Секции..................................................................................................................... 84
3.4.1
Секции .edata и .idata. ........................................................................... 85
3.4.2
Заполнение в секциях кода PE............................................................ 86
Резюме..................................................................................................................... 86

Глава 4. Создание двоичного загрузчика с применением
libbfd. ................................................................................................................................ 88
4.1
4.2

8

Что такое libbfd?.................................................................................................... 89
Простой интерфейс загрузки двоичных файлов. ......................................... 89
Содержание

4.3

4.4
4.5

4.2.1
Класс Binary. ............................................................................................ 92
4.2.2
Класс --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.