- •Внимание!
- •Об авторах
- •О техническом редакторе
- •О соавторах
- •Предисловие
- •Благодарности
- •Отдельное спасибо
- •Введение
- •Необходимая квалификация
- •Изучение на примерах
- •Структура книги
- •Глава 0. Анализ вредоносных программ для начинающих
- •Цель анализа вредоносных программ
- •Методики анализа вредоносного ПО
- •Общие правила анализа вредоносного ПО
- •Глава 1. Основные статические методики
- •Сканирование антивирусом: первый шаг
- •Хеширование: отпечатки пальцев злоумышленника
- •Поиск строк
- •Упакованное и обфусцированное вредоносное ПО
- •Формат переносимых исполняемых файлов
- •Компонуемые библиотеки и функции
- •Статический анализ на практике
- •Заголовки и разделы PE-файла
- •Итоги главы
- •Глава 2. Анализ вредоносных программ в виртуальных машинах
- •Структура виртуальной машины
- •Запуск виртуальной машины для анализа вредоносного ПО
- •Использование виртуальной машины для анализа безопасности
- •Риски при использовании VMware для анализа безопасности
- •Запись/воспроизведение работы компьютера
- •Итоги главы
- •Глава 3. Основы динамического анализа
- •Песочницы: решение на скорую руку
- •Запуск вредоносных программ
- •Мониторинг с помощью Process Monitor
- •Сравнение снимков реестра с помощью Regshot
- •Симуляция сети
- •Перехват пакетов с помощью Wireshark
- •Использование INetSim
- •Применение основных инструментов для динамического анализа
- •Итоги главы
- •Уровни абстракции
- •Архитектура x86
- •Итоги главы
- •Глава 5. IDA Pro
- •Загрузка исполняемого файла
- •Интерфейс IDA Pro
- •Использование перекрестных ссылок
- •Анализ функций
- •Схематическое представление
- •Повышение эффективности дизассемблирования
- •Плагины к IDA Pro
- •Итоги главы
- •Глава 6. Распознавание конструкций языка C в ассемблере
- •Переменные: локальные и глобальные
- •Дизассемблирование арифметических операций
- •Распознавание выражений if
- •Распознавание циклов
- •Соглашения, касающиеся вызова функций
- •Анализ выражений switch
- •Дизассемблирование массивов
- •Распознавание структур
- •Анализ обхода связного списка
- •Итоги главы
- •Глава 7. Анализ вредоносных программ для Windows
- •Windows API
- •Реестр Windows
- •API для работы с сетью
- •Отслеживание запущенной вредоносной программы
- •Сравнение режимов ядра и пользователя
- •Native API
- •Итоги главы
- •Глава 8. Отладка
- •Сравнение отладки на уровне исходного и дизассемблированного кода
- •Отладка на уровне ядра и пользователя
- •Использование отладчика
- •Исключения
- •Управление выполнением с помощью отладчика
- •Изменение хода выполнения программы на практике
- •Итоги главы
- •Глава 9. OllyDbg
- •Загрузка вредоносного ПО
- •Пользовательский интерфейс OllyDbg
- •Карта памяти
- •Просмотр потоков и стеков
- •Выполнение кода
- •Точки останова
- •Трассировка
- •Обработка исключений
- •Редактирование кода
- •Анализ кода командной оболочки
- •Вспомогательные возможности
- •Подключаемые модули
- •Отладка с использованием скриптов
- •Итоги главы
- •Драйверы и код ядра
- •Подготовка к отладке ядра
- •Использование WinDbg
- •Отладочные символы Microsoft
- •Отладка ядра на практике
- •Руткиты
- •Загрузка драйверов
- •Итоги главы
- •Глава 11. Поведение вредоносных программ
- •Программы для загрузки и запуска ПО
- •Бэкдоры
- •Похищение учетных данных
- •Механизм постоянного присутствия
- •Повышение привилегий
- •Заметая следы: руткиты, работающие в пользовательском режиме
- •Итоги главы
- •Глава 12. Скрытый запуск вредоносного ПО
- •Загрузчики
- •Внедрение в процесс
- •Подмена процесса
- •Внедрение перехватчиков
- •Detours
- •Внедрение асинхронных процедур
- •Итоги главы
- •Глава 13. Кодирование данных
- •Простые шифры
- •Распространенные криптографические алгоритмы
- •Нестандартное кодирование
- •Декодирование
- •Итоги главы
- •Глава 14. Сетевые сигнатуры, нацеленные на вредоносное ПО
- •Сетевые контрмеры
- •Безопасное расследование вредоносной деятельности в Интернете
- •Контрмеры, основанные на сетевом трафике
- •Углубленный анализ
- •Сочетание динамических и статических методик анализа
- •Понимание психологии злоумышленника
- •Итоги главы
- •Искажение алгоритмов дизассемблирования
- •Срыв анализа слоя стека
- •Итоги главы
- •Глава 16. Антиотладка
- •Обнаружение отладчика в Windows
- •Распознавание поведения отладчика
- •Искажение работы отладчика
- •Уязвимости отладчиков
- •Итоги главы
- •Глава 17. Методы противодействия виртуальным машинам
- •Признаки присутствия VMware
- •Уязвимые инструкции
- •Изменение настроек
- •Побег из виртуальной машины
- •Итоги главы
- •Глава 18. Упаковщики и распаковка
- •Анатомия упаковщика
- •Распознавание упакованных программ
- •Способы распаковки
- •Автоматизированная распаковка
- •Ручная распаковка
- •Советы и приемы для работы с распространенными упаковщиками
- •Анализ без полной распаковки
- •Итоги главы
- •Глава 19. Анализ кода командной оболочки
- •Загрузка кода командной оболочки для анализа
- •Позиционно-независимый код
- •Определение адреса выполнения
- •Поиск символов вручную
- •Окончательная версия программы Hello World
- •Кодировки кода командной оболочки
- •NOP-цепочки
- •Поиск кода командной оболочки
- •Итоги главы
- •Глава 20. Анализ кода на C++
- •Объектно-ориентированное программирование
- •Обычные и виртуальные функции
- •Создание и уничтожение объектов
- •Итоги главы
- •Какой смысл в 64-битном вредоносном ПО?
- •Особенности архитектуры x64
- •Признаки вредоносного кода на платформе x64
- •Итоги главы
- •Приложения
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|
|
|
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|
|
|
|
|
|
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
|
|
|
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
||||
P |
|
|
|
|
|
NOW! |
o |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
.c |
|
|
|
|
|
|
|
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
|
|
|
|
|
|
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
||||||
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
||||||
|
- |
|
|
|
|
|
d |
|
|
|
|
|
- |
|
|
|
|
|
d |
|
||||||
|
F |
|
|
|
|
|
|
|
t |
|
|
|
|
F |
|
|
|
|
|
|
|
t |
|
|||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
D |
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
|
|
r |
||||
P |
|
|
|
|
|
NOW! |
o |
|
|
P |
|
|
|
|
|
|
NOW! |
o |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
|
|
BUY |
|
|
||||||||
|
|
|
|
to |
|
|
|
|
|
|
Майкл Сикорски, Эндрю Хониг |
|
|
|
|
|
to |
|
|
|
|
|
|
|||
w Click |
|
|
|
|
|
|
m |
w Click |
|
|
|
|
|
|
m |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
|
||
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
g |
.c |
|
|
|
|
|
. |
|
|
|
|
g |
.c |
|
||||||
|
|
p |
|
|
|
|
|
|
|
|
|
|
|
|
p |
|
|
|
|
|
|
|
||||
|
|
|
df |
|
|
n |
e |
Вскрытие покажет! Практический анализ вредоносного ПО |
|
|
df |
|
|
n |
e |
|
||||||||||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
-x cha |
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
Серия «Для профессионалов» |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Перевел с английского С. Черников |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Заведующая редакцией |
Ю. Сергиенко |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ведущий редактор |
Н. Гринчик |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Научный редактор |
С. Сиротко |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Литературный редактор |
И. Купцевич |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Художественный редактор |
С. Заматевская |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Корректоры |
Е. Павлович, Т. Радецкая |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Верстка |
Г. Блинов |
|
|
|
|
|
|
|
|
|
|
|
|
|
ББК 32.988.02-018-07 УДК 004.7:004.056.57
Сикорски М., Хониг Э.
С35 Вскрытие покажет! Практический анализ вредоносного ПО. — СПб.: Питер, 2018. — 768 с.: ил. — (Серия «Для профессионалов»).
ISBN 978-5-4461-0641-7
АнализвредоносногоПОнапоминаетигрувкошки-мышки:никакихправил,ситуацияпостоянноменяется. Поэтому в данном случае имеет смысл изучать лишь неустаревающие вещи и алгоритмы. Как только перед вами встает задача защитить сеть (или тысячу сетей), вы приступаете к такому анализу, и без этой книги вам попросту не обойтись.
16+ (В соответствии с Федеральным законом от 29 декабря 2010 г. № 436-ФЗ.)
ISBN 978-1593272906 англ. |
© 2012 by Michael Sikorski and Andrew Honig. |
|
Practical Malware Analysis, ISBN 978-1-59327-290-6, |
|
published by No Starch Press. |
ISBN 978-5-4461-0641-7 |
© Перевод на русский язык ООО Издательство «Питер», 2018 |
|
© Издание на русском языке, оформление ООО Издательство |
|
«Питер», 2018 |
|
© Серия «Для профессионалов», 2018 |
Права на издание получены по соглашению с No Starch Press. Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.
Информация, содержащаяся в данной книге, получена из источников, рассматриваемых издательством как надежные. Тем не менее, имея в виду возможные человеческие или технические ошибки, издательство не может гарантировать абсолютную точность и полноту приводимых сведений и не несет ответственности за возможные ошибки, связанные с использованием книги. Издательство не несет ответственности за доступность материалов, ссылки на которые вы можете найти в этой книге. На момент подготовки книги к изданию все ссылки на интернетресурсы были действующими.
Изготовлено в России. Изготовитель: ООО «Прогресс книга». Место нахождения и фактический адрес: 194044, Россия, г. Санкт-Петербург, Б. Сампсониевский пр., д. 29А, пом. 52. Тел.: +78127037373. Дата изготовления: 06.2018. Наименование: книжная продукция. Срок годности: не ограничен. Налоговая льгота — общероссийский классификатор продукции ОК 034-2014, 58.11.12 —
Книги печатные профессиональные, технические и научные.
Импортер в Беларусь: ООО «ПИТЕР М», 220020, РБ, г. Минск, ул. Тимирязева, д. 121/3, к. 214, тел./факс: 208 80 01. Подписано в печать 24.05.18. Формат 70×100/16. Бумага офсетная. Усл. п. л. 61,920. Тираж 1000. Заказ 0000.
Отпечатано в ОАО «Первая Образцовая типография». Филиал «Чеховский Печатный Двор». 142300, Московская область, г. Чехов, ул. Полиграфистов, 1.
Сайт: www.chpk.ru. E-mail: marketing@chpk.ru Факс: 8(496) 726-54-10, телефон: (495) 988-63-87
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Краткое содержание |
|
Внимание!..................................................................................................................... |
12 |
Об авторах.................................................................................................................... |
13 |
Предисловие................................................................................................................. |
15 |
Благодарности.............................................................................................................. |
18 |
Введение....................................................................................................................... |
19 |
Глава 0. Анализ вредоносных программ для начинающих .......................................... |
24 |
Часть I. Базовый анализ |
|
Глава 1. Основные статические методики .................................................................. |
30 |
Глава 2. Анализ вредоносных программ в виртуальных машинах ............................... |
52 |
Глава 3. Основы динамического анализа ................................................................... |
62 |
Часть II. Продвинутый статический анализ |
|
Глава 4. Ускоренный курс по ассемблеру для архитектуры x86 .................................. |
88 |
Глава 5. IDA Pro ....................................................................................................... |
111 |
Глава 6. Распознавание конструкций языка C в ассемблере ..................................... |
135 |
Глава 7. Анализ вредоносных программ для Windows .............................................. |
160 |
Часть III. Продвинутый динамический анализ |
|
Глава 8. Отладка ..................................................................................................... |
192 |
Глава 9. OllyDbg ....................................................................................................... |
205 |
Глава 10. Отладка ядра с помощью WinDbg ............................................................. |
232 |
Часть IV. Возможности вредоносного ПО |
|
Глава 11. Поведение вредоносных программ ........................................................... |
258 |
Глава 12. Скрытый запуск вредоносного ПО ............................................................ |
282 |
Глава 13. Кодирование данных ................................................................................ |
297 |
Глава 14. Сетевые сигнатуры, нацеленные на вредоносное ПО ............................... |
327 |
Часть V. Противодействие обратному проектированию |
|
Глава 15. Антидизассемблирование ......................................................................... |
358 |
Глава 16. Антиотладка ............................................................................................. |
382 |
Глава 17. Методы противодействия виртуальным машинам ..................................... |
400 |
Глава 18. Упаковщики и распаковка ......................................................................... |
415 |
Часть VI. Специальные темы |
|
Глава 19. Анализ кода командной оболочки ............................................................ |
438 |
Глава 20. Анализ кода на C++ .................................................................................. |
458 |
Глава 21. Шестидесятичетырехбитные вредоносные программы .............................. |
471 |
Приложения |
|
Приложение А. Важные функции Windows .............................................................. |
482 |
Приложение Б. Инструменты для анализа вредоносного ПО ................................... |
491 |
Приложение В. Решения лабораторных работ ......................................................... |
502 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Оглавление
Внимание!................................................................................................................... |
12 |
Об авторах.................................................................................................................. |
13 |
О техническом редакторе........................................................................................... |
13 |
О соавторах............................................................................................................... |
14 |
Предисловие.............................................................................................................. |
15 |
Благодарности........................................................................................................... |
18 |
Отдельное спасибо..................................................................................................... |
18 |
Введение..................................................................................................................... |
19 |
В чем заключается анализ вредоносного ПО.............................................................. |
20 |
Необходимая квалификация....................................................................................... |
20 |
Изучение на примерах............................................................................................... |
21 |
Структура книги......................................................................................................... |
21 |
Глава 0. Анализ вредоносных программ для начинающих .......................................... |
24 |
Цель анализа вредоносных программ......................................................................... |
24 |
Методики анализа вредоносного ПО.......................................................................... |
25 |
Типы вредоносного ПО............................................................................................... |
26 |
Общие правила анализа вредоносного ПО................................................................. |
28 |
Часть I. Базовый анализ |
|
Глава 1. Основные статические методики .................................................................. |
30 |
Сканирование антивирусом: первый шаг.................................................................... |
30 |
Хеширование: отпечатки пальцев злоумышленника................................................... |
31 |
Поиск строк................................................................................................................ |
32 |
Упакованное и обфусцированное вредоносное ПО..................................................... |
34 |
Формат переносимых исполняемых файлов................................................................ |
36 |
Компонуемые библиотеки и функции......................................................................... |
36 |
Статический анализ на практике................................................................................ |
40 |
Заголовки и разделы PE-файла.................................................................................. |
43 |
Итоги главы............................................................................................................... |
49 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
Оглавление
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
|
to |
|
|
|
|
|
|
w |
7Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
|
-x cha |
|
|
|
|
Глава 2. Анализ вредоносных программ в виртуальных машинах ............................... |
52 |
Структура виртуальной машины................................................................................. |
53 |
Запуск виртуальной машины для анализа вредоносного ПО....................................... |
54 |
Использование виртуальной машины для анализа безопасности................................ |
57 |
Риски при использовании VMware для анализа безопасности..................................... |
60 |
Запись/воспроизведение работы компьютера............................................................ |
60 |
Итоги главы............................................................................................................... |
61 |
Глава 3. Основы динамического анализа ................................................................... |
62 |
Песочницы: решение на скорую руку......................................................................... |
62 |
Запуск вредоносных программ................................................................................... |
65 |
Мониторинг с помощью Process Monitor...................................................................... |
66 |
Просмотр процессов с помощью Process Explorer........................................................ |
70 |
Сравнение снимков реестра с помощью Regshot........................................................ |
74 |
Симуляция сети.......................................................................................................... |
75 |
Перехват пакетов с помощью Wireshark..................................................................... |
78 |
Использование INetSim.............................................................................................. |
79 |
Применение основных инструментов для динамического анализа.............................. |
81 |
Итоги главы............................................................................................................... |
84 |
Часть II. Продвинутый статический анализ |
|
Глава 4. Ускоренный курс по ассемблеру для архитектуры x86 .................................. |
88 |
Уровни абстракции..................................................................................................... |
88 |
Обратное проектирование.......................................................................................... |
90 |
Архитектура x86......................................................................................................... |
91 |
Итоги главы............................................................................................................. |
110 |
Глава 5. IDA Pro ....................................................................................................... |
111 |
Загрузка исполняемого файла.................................................................................. |
112 |
Интерфейс IDA Pro................................................................................................... |
113 |
Использование перекрестных ссылок....................................................................... |
119 |
Анализ функций....................................................................................................... |
121 |
Схематическое представление................................................................................. |
122 |
Повышение эффективности дизассемблирования..................................................... |
124 |
Плагины к IDA Pro.................................................................................................... |
129 |
Итоги главы............................................................................................................. |
132 |
Глава 6. Распознавание конструкций языка C в ассемблере ..................................... |
135 |
Переменные: локальные и глобальные.................................................................... |
136 |
Дизассемблирование арифметических операций...................................................... |
138 |
Распознавание выражений if.................................................................................... |
139 |
Распознавание циклов............................................................................................. |
142 |
Соглашения, касающиеся вызова функций............................................................... |
144 |
Анализ выражений switch......................................................................................... |
148 |
Дизассемблирование массивов................................................................................. |
152 |
Распознавание структур........................................................................................... |
153 |
Анализ обхода связного списка................................................................................ |
156 |
Итоги главы............................................................................................................. |
158 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
|
|
P |
|
|
|
|
|
NOW! |
o |
|
||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
8 m |
Оглавление |
|||||
|
|
|
|
|||||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Глава 7. Анализ вредоносных программ для Windows .............................................. |
160 |
Windows API............................................................................................................. |
160 |
Реестр Windows........................................................................................................ |
164 |
API для работы с сетью............................................................................................ |
169 |
Отслеживание запущенной вредоносной программы................................................ |
171 |
Сравнение режимов ядра и пользователя................................................................ |
185 |
Native API................................................................................................................. |
186 |
Итоги главы............................................................................................................. |
188 |
Часть III. Продвинутый динамический анализ |
|
Глава 8. Отладка ..................................................................................................... |
192 |
Сравнение отладки на уровне исходного и дизассемблированного кода................... |
192 |
Отладка на уровне ядра и пользователя.................................................................. |
193 |
Использование отладчика........................................................................................ |
193 |
Исключения............................................................................................................. |
201 |
Управление выполнением с помощью отладчика..................................................... |
202 |
Изменение хода выполнения программы на практике.............................................. |
203 |
Итоги главы............................................................................................................. |
204 |
Глава 9. OllyDbg ....................................................................................................... |
205 |
Загрузка вредоносного ПО....................................................................................... |
205 |
Пользовательский интерфейс OllyDbg...................................................................... |
207 |
Карта памяти........................................................................................................... |
208 |
Просмотр потоков и стеков...................................................................................... |
211 |
Выполнение кода..................................................................................................... |
212 |
Точки останова........................................................................................................ |
214 |
Загрузка динамических библиотек........................................................................... |
218 |
Трассировка............................................................................................................. |
219 |
Обработка исключений............................................................................................ |
222 |
Редактирование кода............................................................................................... |
222 |
Анализ кода командной оболочки............................................................................ |
224 |
Вспомогательные возможности................................................................................ |
224 |
Подключаемые модули............................................................................................. |
225 |
Отладка с использованием скриптов........................................................................ |
228 |
Итоги главы............................................................................................................. |
229 |
Глава 10. Отладка ядра с помощью WinDbg ............................................................. |
232 |
Драйверы и код ядра............................................................................................... |
232 |
Подготовка к отладке ядра....................................................................................... |
234 |
Использование WinDbg............................................................................................ |
237 |
Отладочные символы Microsoft................................................................................. |
239 |
Отладка ядра на практике........................................................................................ |
242 |
Руткиты.................................................................................................................... |
248 |
Загрузка драйверов.................................................................................................. |
253 |
Особенности ядра в Windows Vista, Windows 7 и 64-битных версиях........................ |
254 |
Итоги главы............................................................................................................. |
255 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
Оглавление
Часть IV. Возможности вредоносного ПО
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
|
to |
|
|
|
|
|
|
w |
9Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
|
-x cha |
|
|
|
|
Глава 11. Поведение вредоносных программ ........................................................... |
258 |
Программы для загрузки и запуска ПО..................................................................... |
258 |
Бэкдоры................................................................................................................... |
258 |
Похищение учетных данных..................................................................................... |
262 |
Механизм постоянного присутствия......................................................................... |
269 |
Повышение привилегий........................................................................................... |
274 |
Заметая следы: руткиты, работающие в пользовательском режиме......................... |
276 |
Итоги главы............................................................................................................. |
279 |
Глава 12. Скрытый запуск вредоносного ПО ............................................................ |
282 |
Загрузчики............................................................................................................... |
282 |
Внедрение в процесс................................................................................................ |
283 |
Подмена процесса.................................................................................................... |
286 |
Внедрение перехватчиков........................................................................................ |
288 |
Detours..................................................................................................................... |
291 |
Внедрение асинхронных процедур........................................................................... |
292 |
Итоги главы............................................................................................................. |
294 |
Глава 13. Кодирование данных ................................................................................ |
297 |
Зачем нужно анализировать алгоритмы кодирования.............................................. |
297 |
Простые шифры....................................................................................................... |
298 |
Распространенные криптографические алгоритмы................................................... |
309 |
Нестандартное кодирование.................................................................................... |
314 |
Декодирование........................................................................................................ |
318 |
Итоги главы............................................................................................................. |
324 |
Глава 14. Сетевые сигнатуры, нацеленные на вредоносное ПО ............................... |
327 |
Сетевые контрмеры.................................................................................................. |
327 |
Безопасное расследование вредоносной деятельности в Интернете......................... |
330 |
Контрмеры, основанные на сетевом трафике........................................................... |
332 |
Углубленный анализ................................................................................................ |
334 |
Сочетание динамических и статических методик анализа........................................ |
338 |
Понимание психологии злоумышленника................................................................. |
353 |
Итоги главы............................................................................................................. |
354 |
Часть V. Противодействие обратному |
|
проектированию |
|
Глава 15. Антидизассемблирование ......................................................................... |
358 |
Понимание антидизассемблирования....................................................................... |
358 |
Искажение алгоритмов дизассемблирования............................................................ |
360 |
Методики антидизассемблирования......................................................................... |
364 |
Скрытие управления потоком................................................................................... |
371 |
Срыв анализа слоя стека.......................................................................................... |
377 |
Итоги главы............................................................................................................. |
379 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
|
|
P |
|
|
|
|
|
NOW! |
o |
|
||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
10 m |
Оглавление |
|||||
|
|
|
|
|||||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Глава 16. Антиотладка ............................................................................................. |
382 |
Обнаружение отладчика в Windows......................................................................... |
382 |
Распознавание поведения отладчика....................................................................... |
387 |
Искажение работы отладчика.................................................................................. |
390 |
Уязвимости отладчиков............................................................................................ |
395 |
Итоги главы............................................................................................................. |
397 |
Глава 17. Методы противодействия виртуальным машинам ..................................... |
400 |
Признаки присутствия VMware................................................................................. |
400 |
Уязвимые инструкции............................................................................................... |
404 |
Изменение настроек................................................................................................. |
411 |
Побег из виртуальной машины................................................................................. |
412 |
Итоги главы............................................................................................................. |
412 |
Глава 18. Упаковщики и распаковка ......................................................................... |
415 |
Анатомия упаковщика.............................................................................................. |
415 |
Распознавание упакованных программ..................................................................... |
419 |
Способы распаковки................................................................................................. |
420 |
Автоматизированная распаковка.............................................................................. |
420 |
Ручная распаковка................................................................................................... |
421 |
Советы и приемы для работы с распространенными упаковщиками......................... |
430 |
Анализ без полной распаковки................................................................................. |
434 |
Упакованные DLL..................................................................................................... |
435 |
Итоги главы............................................................................................................. |
435 |
Часть VI. Специальные темы |
|
Глава 19. Анализ кода командной оболочки ............................................................ |
438 |
Загрузка кода командной оболочки для анализа...................................................... |
438 |
Позиционно-независимый код.................................................................................. |
439 |
Определение адреса выполнения............................................................................. |
440 |
Поиск символов вручную.......................................................................................... |
444 |
Окончательная версия программы Hello World.......................................................... |
450 |
Кодировки кода командной оболочки....................................................................... |
452 |
NOP-цепочки............................................................................................................ |
454 |
Поиск кода командной оболочки.............................................................................. |
454 |
Итоги главы............................................................................................................. |
456 |
Глава 20. Анализ кода на C++ .................................................................................. |
458 |
Объектно-ориентированное программирование....................................................... |
458 |
Обычные и виртуальные функции............................................................................ |
463 |
Создание и уничтожение объектов........................................................................... |
467 |
Итоги главы............................................................................................................. |
468 |
Глава 21. Шестидесятичетырехбитные вредоносные программы .............................. |
471 |
Какой смысл в 64-битном вредоносном ПО?............................................................. |
471 |
Особенности архитектуры x64.................................................................................. |
472 |
WOW64.................................................................................................................... |
477 |
Признаки вредоносного кода на платформе x64....................................................... |
478 |
Итоги главы............................................................................................................. |
479 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
Оглавление
Приложения
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
11Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
o |
|
|
|
w |
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
.c |
|
||
|
. |
|
|
|
|
|
|
|||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Приложение А. Важные функции Windows .............................................................. |
482 |
Приложение Б. Инструменты для анализа вредоносного ПО ................................... |
491 |
Приложение В. Решения лабораторных работ ......................................................... |
502 |
Работа 1.1............................................ |
502 |
Работа 1.2............................................ |
504 |
Работа 1.3............................................ |
505 |
Работа 1.4............................................ |
506 |
Работа 3.1............................................ |
507 |
Работа 3.2............................................ |
511 |
Работа 3.3............................................ |
516 |
Работа 3.4............................................ |
518 |
Работа 5.1............................................ |
520 |
Работа 6.1............................................ |
528 |
Работа 6.2............................................ |
530 |
Работа 6.3............................................ |
534 |
Работа 6.4............................................ |
538 |
Работа 7.1............................................ |
541 |
Работа 7.2............................................ |
545 |
Работа 7.3............................................ |
547 |
Работа 9.1............................................ |
558 |
Работа 9.2............................................ |
568 |
Работа 9.3............................................ |
574 |
Работа 10.1.......................................... |
578 |
Работа 10.2.......................................... |
583 |
Работа 10.3.......................................... |
590 |
Работа 11.1.......................................... |
596 |
Работа 11.2.......................................... |
601 |
Работа 11.3.......................................... |
611 |
Работа 12.1.......................................... |
617 |
Работа 12.2.......................................... |
621 |
Работа 12.3.......................................... |
629 |
Работа 12.4.......................................... |
631 |
Работа 13.1.......................................... |
639 |
Работа 13.2.......................................... |
644 |
Работа 13.3.......................................... |
650 |
Работа 14.1.......................................... |
660 |
Работа 14.2.......................................... |
666 |
Работа 14.3.......................................... |
671 |
Работа 15.1.......................................... |
679 |
Работа 15.2.......................................... |
680 |
Работа 15.3.......................................... |
686 |
Работа 16.1.......................................... |
689 |
Работа 16.2.......................................... |
695 |
Работа 16.3.......................................... |
700 |
Работа 17.1........................................... |
705 |
Работа 17.2........................................... |
708 |
Работа 17.3........................................... |
713 |
Работа 18.1.......................................... |
720 |
Работа 18.2.......................................... |
721 |
Работа 18.3.......................................... |
722 |
Работа 18.4.......................................... |
725 |
Работа 18.5.......................................... |
727 |
Работа 19.1.......................................... |
731 |
Работа 19.2.......................................... |
734 |
Работа 19.3.......................................... |
739 |
Работа 20.1.......................................... |
748 |
Работа 20.2.......................................... |
749 |
Работа 20.3.......................................... |
753 |
Работа 21.1.......................................... |
759 |
Работа 21.2.......................................... |
764 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Внимание!
Эта книга посвящена вредоносным программам. Ссылки и приложения, описываемые здесь, являются опасными. Будьте крайне осторожны при выполнении неизвестного кода или посещении сомнительных веб-страниц.
Советы по созданию виртуальной среды для анализа безопасности перечислены в главе 2. Не будьте беспечными — защитите свою систему.