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

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

Здесь можно купить книгу "Практический анализ двоичных файлов " в печатном или электронном виде. Также, Вы можете прочесть аннотацию, цитаты и содержание, ознакомиться и оставить отзывы (комментарии) об этой книге.

Автор: Дэннис Эндриесс

Форматы: PDF

Издательство: ДМК Пресс

Год: 2022

Место издания: Москва

ISBN: 978-5-97060-978-1

Страниц: 461

Артикул: 99179

Возрастная маркировка: 16+

Электронная книга
1699

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

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

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


Вступительное слово
Предисловие
Благодарности
Введение
ЧАСТЬ I. ФОРМАТЫ ДВОИЧНЫХ ФАЙЛОВ
Глава 1. Анатомия двоичного файла
1.1 Процесс компиляции программы на C
1.2 Символы и зачищенные двоичные файлы
1.3 Дизассемблирование двоичного файла
1.4 Загрузка и выполнение двоичного файла
1.5 Резюме
Глава 2. Формат ELF
2.1 Заголовок исполняемого файла
2.2 Заголовки секций
2.3 Секции
2.4 Заголовки программы
2.5 Резюме
Глава 3. Формат PE: краткое введение
3.1 Заголовок MS-DOS и заглушка MS-DOS
3.2 Сигнатура PE, заголовок PE-файла и факультативный заголовок PE
3.4 Секции
3.5 Резюме
Глава 4. Создание двоичного загрузчика с применением libbfd
4.1 Что такое libbfd?
4.2 Простой интерфейс загрузки двоичных файлов
4.3 Реализация загрузчика двоичных файлов
4.4 Тестирование загрузчика двоичных файлов
4.5 Резюме
ЧАСТЬ II. ОСНОВЫ АНАЛИЗА ДВОИЧНЫХ ФАЙЛОВ
Глава 5. Основы анализа двоичных файлов в Linux
5.1 Разрешение кризиса самоопределения с помощью file
5.2 Использование ldd для изучения зависимостей
5.3 Просмотр содержимого файла с помощью xxd
5.4 Разбор выделенного заголовка ELF с помощью readelf
5.5 Разбор символов с помощью nm
5.6 Поиск зацепок с помощью strings
5.7 Трассировка системных и библиотечных вызовов с помощью strace и ltrace
5.8 Изучение поведения на уровне команд с помощью objdump
5.9 Получение буфера динамической строки с помощью gdb
5.10 Резюме
Глава 6. Основы дизассемблирования и анализа двоичных файлов
6.1 Статическое дизассемблирование
6.2 Динамическое дизассемблирование
6.3 Структурирование дизассемблированного кода и данных
6.4 Фундаментальные методы анализа
6.5 Влияние настроек компилятора на результат дизассемблирования
6.6 Резюме
Глава 7. Простые методы внедрения кода для формата ELF
7.1 Прямая модификация двоичного файла с помощью шестнадцатеричного редактирования
7.2 Модификация поведения разделяемой библиотеки с помощью LD_PRELOAD
7.3 Внедрение секции кода
7.4 Вызов внедренного кода
7.5 Резюме
ЧАСТЬ III. ПРОДВИНУТЫЙ АНАЛИЗ ДВОИЧНЫХ ФАЙЛОВ
Глава 8. Настройка дизассемблирования
8.1 Зачем писать специальный проход дизассемблера?
8.2 Введение в Capstone
8.3 Реализация сканера ROP-гаджетов
8.4 Резюме
Глава 9. Оснащение двоичных файлов
9.1 Что такое оснащение двоичного файла?
9.2 Статическое оснащение двоичных файлов
9.3 Динамическое оснащение двоичных файлов
9.4 Профилирование с помощью Pin
9.5 Автоматическая распаковка двоичного файла с помощью Pin
9.6 Резюме
Глава 10. Принципы динамического анализа заражения
10.1 Что такое DTA?
10.2 Три шага DTA: источники заражения, приемники заражения и распространение заражения
10.3 Использование DTA для обнаружения дефекта Heartbleed
10.4 Факторы проектирования DTA: гранулярность, цвета политики заражения
10.5 Резюме
Глава 11. Практический динамический анализ заражения с помощью libdft
11.1 Введение в libdft
11.2 Использование DTA для обнаружения удаленного перехвата управления
11.3 Обход DTA с помощью неявных потоков
11.4 Детектор утечки данных на основе DTA
11.5 Резюме
Глава 12. Принципы символического выполнения
12.1 Краткий обзор символического выполнения
12.2 Удовлетворение ограничений с помощью Z3
12.3 Резюме
Глава 13. Практическое символическое выполнение с помощью Triton
13.1 Введение в Triton
13.2 Представление символического состояния абстрактными синтаксическими деревьями
13.3 Обратное нарезание с помощью Triton
13.4 Использование Triton для увеличения покрытия кода
13.5 Автоматическая эксплуатация уязвимости
13.6 Резюме
ЧАСТЬ IV. ПРИЛОЖЕНИЯ
Приложение A. Краткий курс ассемблера x86
A.1 Структура ассемблерной программы
A.2 Структура команды x86
A.3 Употребительные команды x86
A.4 Представление типичных программных конструкций на языке ассемблера
Приложение B. Реализация перезаписи PT_NOTE с помощью libelf
B.1 Обязательные заголовки
B.2 Структуры данных, используемые в elfinject
B.3 Инициализация libelf
B.4 Получение заголовка исполняемого файла
B.5 Нахождение сегмента PT_NOTE
B.6 Внедрение байтов кода
B.7 Выравнивание адреса загрузки внедренной секции
B.8 Перезапись заголовка секции .note.ABI-tag
B.9 Задание имени внедренной секции
B.10 Перезапись заголовка программы PT_NOTE
B.11 Модификация точки входа
Приложение C. Перечень инструментов анализа двоичных файлов
C.1 Дизассемблеры
C.2 Отладчики
C.3 Каркасы дизассемблирования
C.4 Каркасы двоичного анализа
Приложение D. Литература для дополнительного чтения
D.1 Стандарты и справочные руководства
D.2 Статьи
D.3 Книги
Предметный указатель

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

Чтобы оставить отзыв, зарегистрируйтесь или войдите

Внимание!
При обнаружении неточностей или ошибок в описании книги "Практический анализ двоичных файлов (автор Дэннис Эндриесс)", просим Вас отправить сообщение на почту help@directmedia.ru. Благодарим!