Руткиты и буткиты. Обратная разработка вредоносных программ и угрозы следующего поколения
معرفی کتاب «Руткиты и буткиты. Обратная разработка вредоносных программ и угрозы следующего поколения» نوشتهٔ Алекс Матросов, Евгений Родионов, Сергей Братусь; перевод с английского А. А. Слинкина، منتشرشده توسط نشر ДМК Пресс در سال 2022. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.
От издательства Об авторах О техническом рецензенте Вступительное слово Благодарности Список аббревиатур Введение Для кого предназначена эта книга Структура книги Как читать эту книгу Часть I Руткиты Что такое руткит: TDL3 История распространения TDL3 по миру Процедура заражения Управление потоком данных Скрытая файловая система Итог: TDL3 встретил свою Немезиду Руткит Festi: самый продвинутый бот для спама и DDoS-атак Дело о сети ботов Festi Устройство драйвера руткита Конфигурационная информация Festi для взаимодействия с командно-управляющим сервером Объектно-ориентированная структура Festi Управление плагинами Встроенные плагины Методы противодействия виртуальной машине Методы противодействия отладке Метод сокрытия вредоносного драйвера на диске Метод защиты раздела реестра Festi Сетевой протокол Festi Фаза инициализации Рабочая фаза Обход средств обеспечения безопасности и КТЭ Алгоритм генерирования доменных имен в случае отказа C&C-сервера Вредоносная деятельность Модуль рассылки спама Проведение DDoS-атак Плагин прокси-сервиса Заключение Обнаружение заражения руткитом Методы перехвата Перехват системных событий Перехват системных вызовов Перехват операций с файлами Перехват диспетчера объектов Восстановление ядра системы Великая гонка вооружений с руткитами: ностальгическая нотка Заключение Часть II Буткиты Эволюция буткита Первые буткиты Инфекторы загрузочного сектора Эволюция буткитов Закат эры BSI Политика подписания кода режима ядра Взлет безопасной загрузки Современные буткиты Заключение Основы процесса загрузки операционной системы Общий обзор процесса загрузки Windows Старый процесс загрузки Процесс загрузки Windows BIOS и предзагрузочное окружение Главная загрузочная запись Загрузочная запись тома и начальный загрузчик программы Модуль bootmgr и конфигурационные данные загрузки Заключение Безопасность процесса загрузки Модуль раннего запуска антивредоносной программы API обратных вызовов Как буткиты обходят ELAM Политика подписания кода режима ядра Драйверы, подлежащие проверке целостности Где находятся подписи драйвера Слабость проверки целостности унаследованного кода Модуль ci.dll Дополнительные защитные меры в Windows 8 Технология безопасной загрузки Безопасность на основе виртуализации в Windows 10 Трансляция адресов второго уровня Виртуальный безопасный режим и Device Guard Ограничения, налагаемые Device Guard на разработку драйверов Заключение Методы заражения буткитом Методы заражения MBR Модификация кода в MBR: метод заражения TDL4 Модификация таблицы разделов в MBR Методы заражения VBR/IPL Модификации IPL: Rovnix Заражение VBR: Gapz Заключение Статический анализ буткита с помощью IDA Pro Анализ MBR буткита Загрузка и дешифрирование MBR Анализ службы дисков BIOS Анализ зараженной таблицы разделов MBR Техника анализа VBR Анализ IPL Оценка других компонентов буткита Продвинутая работа с IDA Pro: написание собственного загрузчика MBR Файл loader.hpp Реализация accept_file Реализация load_file Создание структуры, описывающей таблицу разделов Заключение Упражнения Динамический анализ буткита: эмуляция и виртуализация Эмуляция с помощью Bochs Установка Bochs Создание окружения Bochs Заражение образа диска Использование внутреннего отладчика Bochs Комбинация Bochs с IDA Виртуализация с помощью VMware Workstation Конфигурирование VMware Workstation Комбинация VMware GDB с IDA Microsoft Hyper-V и Oracle VirtualBox Заключение Упражнения Эволюция методов заражения MBR и VBR: Olmasco Сбрасыватель Ресурсы сбрасывателя Средства трассировки для будущих разработок Средства противодействия отладке и эмуляции Функциональность буткита Метод заражения Процесс загрузки зараженной системы Функциональность руткита Подключение к объекту устройства диска и внедрение полезной нагрузки Обслуживание скрытой файловой системы Реализация интерфейса транспортного драйвера для перенаправления сетевого трафика Заключение Буткиты начального загрузчика программы: Rovnix and Carberp Эволюция Rovnix Архитектура буткита Заражение системы Процесс загрузки после заражения и IPL Реализация полиморфного дешифровщика Дешифрирование начального загрузчика Rovnix с помощью VMware и IDA Pro Перехват управления путем изменения начального загрузчика Windows Загрузка вредоносного драйвера Функциональность вредоносного драйвера Внедрение модуля полезной нагрузки Механизмы скрытности и самозащиты Скрытая файловая система Форматирование раздела под файловую систему Virtual FAT Шифрование скрытой файловой системы Доступ к скрытой файловой системе Скрытый канал связи Реальный пример: троян Carberp Разработка Carberp Усовершенствования сбрасывателя Утечка исходного кода Заключение Gapz: продвинутое заражение VBR Сбрасыватель Gapz Алгоритм сбрасывателя Анализ сбрасывателя Обход HIPS Заражение системы буткитом Gapz О блоке параметров BIOS Заражение VBR Загрузка вредоносного драйвера Функциональность руткита Gapz Скрытое хранилище Самозащита от антивредоносных программ Внедрение полезной нагрузки Интерфейс взаимодействия с полезной нагрузкой Собственный стек сетевых протоколов Заключение Взлет программ-вымогателей, заражающих MBR Краткая история современных программ-вымогателей Вымогатель с функциональностью буткита Образ действий программ-вымогателей Анализ вымогателя Petya Получение привилегий администратора Заражение жесткого диска (этап 1) Шифрование с помощью конфигурационных данных вредоносного начального загрузчика Обрушение системы Шифрование MFT (этап 2) Подводя итоги: заключительные мысли о Petya Анализ вымогателя Satana Сбрасыватель Satana Заражение MBR Отладочная информация сбрасывателя Вредоносная MBR вымогателя Satana Подводя итоги: заключительные мысли о Satana Заключение Сравнение процессов загрузки с помощью UEFI и MBR/VBR Единый расширяемый интерфейс прошивки Различия между процессами загрузки через BIOS и UEFI Последовательность загрузки Разбиение диска на разделы: MBR и GPT Прочие отличия Особенности таблицы разделов GUID Как работает прошивка UEFI Спецификация UEFI Внутри загрузчика операционной системы Начальный загрузчик Windows Преимущества прошивки UEFI с точки зрения безопасности Заключение Современные UEFI-буткиты Исторический обзор угроз BIOS WinCIH, или первый вредонос, нацеленный на BIOS Mebromi Краткий обзор других угроз и контрмер У любого оборудования есть прошивка Уязвимости прошивки UEFI Неэффективность битов защиты памяти Проверки битов защиты Способы заражения BIOS Модификация дополнительного ПЗУ неподписанной UEFI Добавление или модификация DXE-драйвера Как происходит внедрение руткита UEFI-руткиты на воле Руткит Vector-EDK от группы Hacking Team Заключение Уязвимости прошивок UEFI Почему прошивка может быть уязвимой? Классификация уязвимостей UEFI Постэксплуатационные уязвимости Скомпрометированная цепочка поставок Борьба с уязвимостью цепочки поставок Исторический обзор защиты прошивок UEFI Как работает защита BIOS Защита флеш-памяти SPI и ее уязвимости Риски неаутентифицированного обновления BIOS Защита BIOS с помощью технологии безопасной загрузки Intel Boot Guard Технология Intel Boot Guard Уязвимости Boot Guard Уязвимости в модулях SMM Что такое SMM Эксплуатация обработчиков SMI Уязвимости в загрузочном скрипте S3 Что делает скрипт S3 Атаки на слабости загрузочного скрипта S3 Эксплуатация уязвимости в загрузочном скрипте S3 Исправление уязвимости в загрузочном скрипте S3 Уязвимости в Intel Management Engine История уязвимостей ME Атаки на код ME Пример: атаки на Intel AMT и BMC Заключение Часть III Методы защиты и компьютерно-технической экспертизы Как работает безопасная загрузка UEFI Что такое безопасная загрузка? Детали реализации безопасной загрузки UEFI Последовательность загрузки Аутентификация исполняемого файла с помощью цифровых подписей База данных db База данных dbx Аутентификация с учетом времени Ключи безопасной загрузки Безопасная загрузка UEFI: полная картина Политика безопасной загрузки Защита от буткитов с помощью безопасной загрузки Атаки на безопасную загрузку Изменение прошивки PI с целью отключения безопасной загрузки Модификация переменных UEFI для обхода проверок безопасности Защита безопасной загрузки с помощью технологии верифицированной и измеренной загрузки Верифицированная загрузка Измеренная загрузка Intel BootGuard Где искать ACM Изучение FIT Конфигурирование Intel BootGuard Trusted Boot Board в ARM ARM Trust Zone Начальные загрузчики в ARM Поток выполнения в Trusted Boot Верифицированная загрузка и руткиты прошивки Заключение Подходы к анализу скрытых файловых систем Обзор скрытых файловых систем Извлечение данных буткита из скрытой файловой системы Извлечение данных из незапущенной системы Чтение данных из активной системы Подключение к драйверу мини-порта устройства хранения Разбор образа скрытой файловой системы Программа HiddenFsReader Заключение Предметный указатель Компьютерно-техническая экспертиза BIOS/UEFI: подходы к получению и анализу прошивок Ограничения наших методов КТЭ Почему компьютерно-техническая экспертиза прошивки так важна Атака на цепочку поставок Компрометация BIOS через уязвимость прошивки Как получить прошивку Программный подход к получению прошивки Местоположение регистров из конфигурационного пространства PCI Вычисление адресов регистров конфигурации SPI Использование регистров SPI Чтение данных из флеш-памяти SPI О недостатках программного подхода Аппаратный подход к получению прошивки Описание процедуры на примере Lenovo ThinkPad T540p Местоположение микросхемы флеш-памяти SPI Чтение флеш-памяти SPI с помощью мини-модуля FT2232 Анализ образа прошивки с помощью UEFITool Какие существуют регионы флеш-памяти SPI Просмотр регионов флеш-памяти SPI с помощью UEFITool Анализ региона BIOS Анализ образа прошивки с помощью Chipsec Знакомство с архитектурой Chipsec Анализ прошивки с помощью Chipsec Util Заключение Rootkits and Bootkits delivers a master class in malware evolution that will give you the techniques and tools necessary to counter sophisticated, advanced threats. We're talking hard stuff - attacks buried deep in a machine's boot process or UEFI firmware that keep malware analysts up late at night. Security experts Alex Matrosov, Eugene Rodionov, and Sergey Bratus share the knowledge they've gained over years of professional research. With these field notes, you'll trace malware evolution from rootkits like TDL3 to present day UEFI implants and examine how these malware infect the system, persist through reboot, and evade security software. While you inspect real malware under the microscope, you'll learn: -The details of the Windows boot process, from 32-bit to 64-bit and UEFI, and where it's vulnerable. -Boot process security mechanisms like Secure Boot, the kernel-mode signing policy include some details about recent technologies like Virtual Secure Mode (VSM) and Device Guard. -The reverse engineering and forensic approaches for real malware discovered in the wild, including bootkits like Rovnix/Carberp, Gapz, TDL4 and the infamous rootkits TDL3 and Festi. -How to perform boot process dynamic analysis using emulation and virtualization -Modern BIOS-based rootkits and implants with directions for forensic analysis Cybercrime syndicates and malicious actors keep pushing the envelope, writing ever more persistent and covert attacks. But the game is not lost. Explore the cutting edge of malware analysis with Rootkits and Bootkits. Covers boot processes for Windows 32-bit and 64-bit operating systems. "[This book] will teach you how to understand and counter sophisticated, advanced threats buried deep in a machine's boot process or UEFI firmware. With the aid of numerous case studies and professional research from three of the world's leading security experts, you'll trace malware development over time from rootkits like TDL3 to present-day UEFI implants and examine how they infect a system, persist through reboot, and evade security software. As you inspect and dissect real malware, you'll learn: how Windows boots--including 32-bit, 64-bit, and UEFI mode--and where to find vulnerabilities; the details of boot process security mechanisms like Secure Boot, including an overview of Virtual Secure Mode (VSM) and Device Guard; reverse engineering and forensic techniques for analyzing real malware, including bootkits like Rovnix/Carberp, Gapz, TDL4, and the infamous rootkits TDL3 and Festi; how to perform static and dynamic analysis using emulation and tools like Bochs and IDA Pro; how to better understand the delivery stage of threats against BIOS and UEFI firmware in order to create detection capabilities; how to use virtualization tools like VMware Workstation to reverse engineer bootkits and the Intel Chipsec tool to dig into forensic analysis. Cybercrime syndicates and malicious actors will continue to write ever more persistent and covert attacks, but the game is not lost."--Back cover "Presents information on the history of malware, how it works and how to identify it, and how to counter and prevent threats"-- Provided by publisher
دانلود کتاب Руткиты и буткиты. Обратная разработка вредоносных программ и угрозы следующего поколения