Praktyczna inżynieria wsteczna | Ebook


Код: 15115719311
1588 грн
Цена указана с доставкой в Украину
Товар есть в наличии
КАК ЭКОНОМИТЬ НА ДОСТАВКЕ?
Заказывайте большое количество товаров у этого продавца
Информация
  • Время доставки: 7-10 дней
  • Состояние товара: новый
  • Доступное количество: 994

Заказывая «Praktyczna inżynieria wsteczna | Ebook», вы можете быть уверены, что данное изделие из каталога «Информатика, интернет» вы получите через 5-7 дней после оплаты. Товар будет доставлен из Европы, проверен на целостность, иметь европейское качество.

Электронная книга – цифровая версия продукта

Название: Практическое обратное проектирование

Автор: Гинваэль Колдвинд, Матеуш Юрчик

Формат файла: epub, mobi

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

Количество страниц: 526

Издание: 1

Год выпуска: 2016

ISBN: 978-83-01-19046-0

язык: польский

Описание:

Практическое обратное проектирование. Методы, приемы и инструменты

Реверс-инжиниринг программного обеспечения — это процесс углубленного анализа библиотек, приложений и систем, исходный код которых недоступен исследователю. Он позволяет как реконструировать и полностью понять логику конкретной программы, так и расширить знания о работе современных процессоров, компиляторов и целых операционных систем. Этот навык можно использовать для обнаружения и использования уязвимостей безопасности, анализа вредоносного ПО и даже для принятия более обоснованных программных решений и более легкого устранения ошибок в собственном коде.

Книга представляет собой сборник публикаций двенадцати польских авторов. авторы с многолетним опытом, ежедневно использующие представленные методики в своей работе в качестве экспертов и аналитиков по безопасности. Среди них мы найдем множество специалистов, работающих в крупнейших IT-компаниях, лауреатов премии Pwnie Award, узнаваемых спикеров известных конференций и членов ведущих команд, участвующих в соревнованиях по безопасности Capture The Flag. Материалы были отобраны и отредактированы Гинваэлем Колдвиндом и Матеушем Юрчиком.

Некоторые из затронутых тем:

Базовые структуры, известные из языков C и C++, с точки зрения реверс-инжиниринга. Исполняемые файлы в форматах ELF и PE, включая связанные с ними дополнительные возможности. Внутренняя конструкция защиты от использования уязвимостей безопасности. Реверс-инжиниринг программного обеспечения для платформ .NET и Python. Методы внедрения кода в другие процессы. Проектирование и анализ безопасности программ. Методы отслеживания выполнения – программные и с использованием поддержки современных процессоров. Обратный инжиниринг в анализе безопасности программного обеспечения. Разнообразие тем, затронутых авторами, означает, что эта книга может быть интересна как новичкам, так и энтузиастам, желающим расширить свои знания или расширить арсенал используемых инструментов и техник.

Содержание:

Введение 15

1. Низкоуровневые функции, структуры, классы и объекты 19

1.1. Вызов функций на (очень) низкоуровневых языках 21

1.1.1. CALL, RET и соглашения о вызовах 21

1.1.2. Соглашения о вызовах x86 24

1.1.3. Соглашения о вызовах x86-64 27

1.2. Структуры 28

1.2.1. «Угадывание» размера и расположения элементов структуры в памяти 30

1.2.2. Признание построения локальных и глобальных структур 30

1.2.3. Распознавание структуры динамически выделяемых структур 32

1.3. Классы, объекты, наследование и виртуальные массивы 34

1.3.1. Простой класс и структура 34

1.3.2. Объекты = структуры + функции + этот вызов 38

1.3.3. Все остается в семье, т.е. по наследству 38

1.4. Резюме 41

2. Среда выполнения в системах GNU/Linux 43

2.1. Введение 45

2.2. Исполняемые файлы ELF 45

2.2.1. Идентификация целевой системы и архитектуры 46

2.2.2. Сегменты 49

2.2.3. Сегмент PT_LOAD 51

2.2.4. Сегмент PT_DYNAMIC 53

2.2.5. Динамический раздел 53

2.2.5.1. Декларация зависимых библиотек 57

2.2.5.2. Ранняя инициализация программы 59

2.3. Время выполнения 62

2.3.1. Код PIC 62

2.3.2. Таблицы GOT и PLT 65

2.3.3. Загрузчик ld.so 73

2.3.3.1. Переменные окружающей среды 73

2.3.3.2. LD_LIBRARY_PATH 74

2.3.3.3. LD_PRELOAD 75

2.3.3.4. LD_AUDIT 77

2.3.4. Дамп памяти процесса 81

2.3.4.1. Файловая система /proc 81

2.3.4.2. Специальные файлы в /proc/pid 82

2.3.4.3. Карты и специальные файлы памяти 83

2.3.4.4. ВДСО 85

2.3.4.5. Векторы инициализации 86

2.3.5. Внедрение кода 88

2.3.5.1. ptrace(2) версия 95

2.3.6. Самомодифицирующийся код 96

2.4. Резюме 98

Библиография 99

3. Механизмы защиты приложений 101

3.1. Введение 103

3.2. Переполнение буфера стека 104

3.3. Процедуры обработки исключений 108

3.4. Предотвращение выполнения данных 112

3.5. Случайность расположения адресного пространства 114

3.6. Дополнительные материалы 116

3.7. Резюме 116

Библиография 116

4. Методы предотвращения реконструкции кода приложения из памяти процесса 119

4.1. Введение 121

4.1.1. Содержание главы 121

4.2. Упаковщики, шифровальщики и защитники файлов PE 122

4.3. Эмуляция безопасности 126

4.4. Защита от пересборки программного кода, сохраненного из памяти процесса 128

4.5. Наномиты 130

4.6. Украдена стартовая точка программы 135

4.7. Перенаправление и обфускация импортированных функций 142

4.9. Резюме 147

Библиография 148

5. NET — формат и RE 151

5.1. Введение 153

5.2. NET 153

5.2.1. JIT, т.е. второй этап компиляции программы 153

5.2.2. Язык среднего уровня CIL 154

5.2.2.1. Пример 1: add() 155

5.2.2.2. Пример 2: stringWriteTest() 155

5.2.2.3. Пример 3: programFlowTest() 157

5.2.3. Выделенные контейнеры метаданных 161

5.2.4. Высокоуровневая структура программы сохраняется в исполняемом файле 161

5.2.5. Токен 164

5.2.6. Встроенные функции 165

5.2.7. АОТ 165

5.3. Реверс-инжиниринг 166

5.3.1. Статический анализ 166

5.3.2. Декомпиляция 166

5.3.3. Перекомпиляция и восстановление работы программы 170

5.3.4. Модификация существующих методов 170

5.3.5. Отладка 174

5.3.5.1. dnSpy 174

5.3.5.2. Плагины для WinDbg 176

5.4. NET-методы защиты файлов 176

5.4.1. Перезапись назначенных пользователем имен 176

5.4.2. Шифрование текстовых констант 176

5.4.3. Сложность

----

Важная информация о продукте:

ЭЛЕКТРОННАЯ КНИГА — ЦИФРОВОЙ ПРОДУКТ

Вы можете скачать файл в своей учетной записи Allegro на вкладке «Моя полка».

Для покупки электронной книги у вас должна быть учетная запись на Allegro.

Читать электронную книгу можно на: читалке (Kindle, PocketBook, Onyx, Kobo и других), смартфоне, планшете или компьютере. Информация о формате электронной книги включена в описание аукциона.

Электронная книга будет защищена водяным знаком и не имеет DRM.