- •Об авторах
- •О рецензентах
- •Предисловие
- •Стратегия безопасности
- •Текущий ландшафт киберугроз
- •Приложения
- •Данные
- •Проблемы кибербезопасности
- •Старые методы и более широкие результаты
- •Изменение ландшафта угроз
- •Улучшение стратегии безопасности
- •Красная и Синяя команды
- •Подразумеваем взлом
- •Справочные материалы
- •Резюме
- •Процесс реагирования на компьютерные инциденты
- •Процесс реагирования на компьютерные инциденты
- •Создание процесса реагирования на компьютерные инциденты
- •Команда реагирования на компьютерные инциденты
- •Жизненный цикл компьютерного инцидента
- •Обработка инцидента
- •Передовые методы оптимизации обработки компьютерных инцидентов
- •Деятельность после инцидента
- •Реальный сценарий
- •Выводы
- •Реагирование на компьютерные инциденты в облаке
- •Справочные материалы
- •Резюме
- •Жизненный цикл атаки
- •Внешняя разведка
- •Сканирование
- •Доступ и повышение привилегий
- •Вертикальное повышение привилегий
- •Горизонтальное повышение привилегий
- •Проникновение и утечки
- •Тыловое обеспечение
- •Штурм
- •Обфускация
- •Управление жизненным циклом угроз
- •Справочные материалы
- •Резюме
- •Разведка и сбор данных
- •Внешняя разведка
- •Копание в мусоре
- •Социальные сети
- •Социальная инженерия
- •Внутренняя разведка
- •Анализ трафика и сканирование
- •Вардрайвинг
- •Завершая эту главу
- •Справочные материалы
- •Резюме
- •Компрометация системы
- •Анализ современных тенденций
- •Вымогательство
- •Манипулирование данными
- •Атаки на IoT-устройства
- •Бэкдоры
- •Атаки на мобильные устройства
- •Взлом повседневных устройств
- •Взлом облака
- •Фишинг
- •Эксплуатация уязвимостей
- •Уязвимость нулевого дня
- •Фаззинг
- •Анализ исходного кода
- •Типы эксплойтов нулевого дня
- •Перезапись структурированного обработчика исключений
- •Развертывание полезных нагрузок
- •Компрометация операционных систем
- •Компрометация удаленной системы
- •Компрометация веб-приложений
- •Справочные материалы
- •Резюме
- •Охота на пользовательские реквизиты
- •Стратегии компрометации реквизитов доступа пользователя
- •Получение доступа к сети
- •Сбор учетных данных
- •Взлом реквизитов доступа пользователя
- •Полный перебор
- •Социальная инженерия
- •Атака Pass-the-hash
- •Другие способы взлома реквизитов доступа
- •Справочные материалы
- •Резюме
- •Дальнейшее распространение по сети
- •Инфильтрация
- •Построение карты сети
- •Избежать оповещений
- •Дальнейшее распространение
- •Сканирование портов
- •Sysinternals
- •Общие файловые ресурсы
- •Удаленный доступ к рабочему столу
- •PowerShell
- •Инструментарий управления Windows
- •Запланированные задачи
- •Кража авторизационных токенов
- •Атака Pass-the-hash
- •Active Directory
- •Удаленный доступ к реестру
- •Анализ взломанных хостов
- •Консоли центрального администратора
- •Кража сообщений электронной почты
- •Справочные материалы
- •Резюме
- •Повышение привилегий
- •Инфильтрация
- •Горизонтальное повышение привилегий
- •Вертикальное повышение привилегий
- •Как избежать оповещений
- •Выполнение повышения привилегий
- •Эксплуатация неисправленных операционных систем
- •Манипулирование маркерами доступа
- •Эксплуатация специальных возможностей
- •Application Shimming
- •Обход контроля над учетной записью пользователя
- •Внедрение DLL-библиотек
- •Перехват порядка поиска DLL
- •Перехват поиска dylib
- •Исследование уязвимостей
- •Запускаемые демоны
- •Практический пример повышения привилегий в Windows 8
- •Выводы
- •Справочные материалы
- •Резюме
- •Политика безопасности
- •Проверка политики безопасности
- •Обучение конечного пользователя
- •Рекомендации по безопасности для пользователей социальных сетей
- •Тренинг по безопасности
- •Использование политики
- •Белый список приложений
- •Усиление защиты
- •Мониторинг на предмет соответствия
- •Справочные материалы
- •Резюме
- •Сегментация сети
- •Глубоко эшелонированная защита
- •Инфраструктура и службы
- •Документы в процессе передачи
- •Конечные точки
- •Сегментация физической сети
- •Открывая схему сети
- •Обеспечение удаленного доступа к сети
- •VPN типа «сеть–сеть»
- •Сегментация виртуальной сети
- •Безопасность гибридной облачной сети
- •Справочные материалы
- •Резюме
- •Активные сенсоры
- •Возможности обнаружения
- •Индикаторы компрометации
- •Системы обнаружения вторжений
- •Система предотвращения вторжений
- •Обнаружение на основе правил
- •Обнаружение на основе аномалий
- •Поведенческая аналитика внутри организации
- •Размещение устройств
- •Поведенческая аналитика в гибридном облаке
- •Центр безопасности Azure
- •Справочные материалы
- •Резюме
- •Киберразведка
- •Введение в киберразведку
- •Инструментальные средства киберразведки с открытым исходным кодом
- •Средства киберразведки компании Microsoft
- •Центр безопасности Azure
- •Использование киберразведки для расследования подозрительной деятельности
- •Справочные материалы
- •Резюме
- •Расследование инцидента
- •Масштаб проблемы
- •Ключевые артефакты
- •Исследование скомпрометированной системы внутри организации
- •Исследование скомпрометированной системы в гибридном облаке
- •Ищите и обрящете
- •Выводы
- •Справочные материалы
- •Резюме
- •Процесс восстановления
- •План послеаварийного восстановления
- •Процесс планирования послеаварийного восстановления
- •Вызовы
- •Восстановление без перерыва в обслуживании
- •Планирование на случай непредвиденных обстоятельств
- •Процесс планирования на случай непредвиденных обстоятельств в сфере IT
- •Передовые методы восстановления
- •Справочные материалы
- •Резюме
- •Управление уязвимостями
- •Создание стратегии управления уязвимостями
- •Инвентаризация ресурсов
- •Управление информацией
- •Оценка рисков
- •Оценка уязвимостей
- •Отчеты и отслеживание исправлений
- •Планирование реагирования
- •Инструменты управления уязвимостями
- •Реализация управления уязвимостями
- •Передовые методы управления уязвимостями
- •Реализация управления уязвимостями с помощью Nessus
- •Flexera (Secunia) Personal Software Inspecto
- •Заключение
- •Справочные материалы
- •Резюме
- •Анализ журналов
- •Сопоставление данных
- •Журналы операционной системы
- •Журналы Windows
- •Журналы Linux
- •Журналы брандмауэра
- •Журналы веб-сервера
- •Справочные материалы
- •Резюме
- •Предметный указатель
|
|
|
|
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 |
|||
|
|
|
|
|
|
|
||||
169to |
BUY |
|
|
|||||||
|
|
|
|
|
||||||
|
|
|
|
|
m |
|||||
w Click |
|
|
|
|
|
|
||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Рис.8.8
Обход контроля над учетной записью пользователя
Windows обладает хорошо структурированным механизмом для управления привилегиями всех пользователей в сети и на локальной машине. У нее есть функцияконтроля учетных записей пользователей (UAC),котораядейству-
ет как ворота между обычными пользователями и пользователями уровня ад- министратора. Функция UAC используется для предоставления прав доступа программе, повышения их привилегий и запуска с привилегиями уровня ад- министратора. Поэтому Windows всегда предлагает пользователям разрешать выполнение программ, которые хотят выполняться с этим уровнем доступа. Также примечательно, что только администраторы могут разрешить запуск программ с этими привилегиями. Поэтому обычному пользователю будет от- казано в праве запускать программу с правами администратора.
Это похоже на отказоустойчивый механизм, при котором только админист раторы могут запускать программы с повышенными привилегиями, посколь- ку они могут легко отличить вредоносные программы от подлинных. Однако в этом механизме обеспечения безопасности системы есть пробелы. Некото-
|
|
|
|
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 |
170 Повышение привилегий |
|
|
|
|
to |
|
|
|
|
|
|
|||||||
w Click |
|
w Click |
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
m |
|
|
|
|
|
|
|
m |
||||||||
w |
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
||
|
w |
|
|
|
|
|
|
|
|
o |
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
g |
.c |
|
|
. |
|
|
|
|
g |
.c |
|
||||||
|
|
p |
|
|
|
|
|
|
|
|
|
p |
|
|
|
|
|
|
|
||||
|
|
|
df |
|
|
n |
e |
|
|
|
|
df |
|
|
n |
e |
|
||||||
|
|
|
|
|
|
рым программам Windows разрешено повышать привилегии или выполнять |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
-x cha |
|
|
|
|
|
COM-объекты с повышенными правами без предварительного запроса поль- зователя.
Например,rundl32.exe используетсядлязагрузкикастомнойDLL-библиотеки, которая загружает COM-объект с повышенными привилегиями.Она выполня- ет файловые операции даже в защищенных каталогах, которые обычно тре- буют от пользователя повышенных прав доступа, а это делает механизм UAC отрытым для компрометации,чем могут воспользоваться знающие злоумыш- ленники. Те же процессы, которые используются для запуска программ Win- dows без проверки подлинности,могут позволить вредоносному программно- му обеспечению работать с правами администратора аналогичным образом. Злоумышленники могут внедрить вредоносный процесс в доверенный и тем самым получить преимущество от его запуска с правами администратора без необходимости запрашивать пользователя.
Существуют и другие способы, обнаруженные черными хакерами, которые можно использовать для обхода UAC. На GitHub было опубликовано множест во методов, которые потенциально могут быть использованы по отношению к UAC. Один из них – eventvwr.exe, который можно скомпрометировать, т. к. обычноонавтоматическиповышаетсяпризапуске,следовательно,внегомож- но внедрить специфичный двоичный код или скрипты.Еще один подход к по- беде над UAC – обычная кража учетных данных администратора. Механизм UAC считается единой системой безопасности, поэтому привилегии процесса, выполняющегося на одном компьютере, остаются неизвестными для побоч- ныхсистем.Труднопойматьзлоумышленников,неправомерноиспользующих учетные данные администратора для запуска процессов с привилегиями вы- сокого уровня.
Чтобы обойти UAC в Windows 7, также можно использовать uacscript, который легко скачать по адресу https://github.com/Vozzie/uacscript.
Внедрение DLL-библиотек
Внедрение DLL-библиотек – это еще один метод повышения привилегий, ис- пользуемыйзлоумышленниками.Онтакжеподразумеваеткомпрометациюле- гитимных процессов и служб операционной системы Windows. DLL-инъекции используются для запуска вредоносного кода в контексте легитимного про- цесса. Используя контекст процесса, признанного легитимным, злоумыш- ленник получает ряд преимуществ, особенно возможность доступа к памяти процессов и правам доступа. Действия злоумышленника также маскируются легитимными процессами. Недавно был обнаружен довольно сложный метод внедрения – отражающее внедрение DLL (13). Он более эффективен, по- скольку загружает вредоносный код без необходимости выполнения обычных вызовов Windows API, следовательно, в обход мониторинга загрузки DLL (13). Он использует хитрый процесс загрузки вредоносной библиотеки из памяти в работающий процесс.Вместо обычного процесса внедрения DLL при загруз-
|
|
|
|
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 |
|
|
Выполнение повышения привилегий 171to |
BUY |
|
|
||||||||||||
|
|
|
|
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 |
|
||||||
|
|
|
|
|
|
ке вредоносного кода DLL из пути, который не только создает внешнюю за- |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
-x cha |
|
|
|
|
|
||||
|
|
|
|
|
|
висимость и ухудшает скрытность атаки, отражающее внедрение создает свой |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
вредоносный код в виде необработанных данных. Его сложнее обнаружить |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
даже на компьютерах, которые надлежащим образом защищены программ- |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
ными средствами обеспечения безопасности. |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
DLL-инъекции использовались злоумышленниками для изменения реестра |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
Windows, создания потоков и загрузки DLL. Все это действия,требующие прав |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
администратора,нозлоумышленникинаходятспособпроникнуть,неимеята- |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
ких привилегий. |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
Приведенная ниже диаграмма – краткая иллюстрация того, как работают |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
DLL-инъекции (рис. 8.9). |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
Прикрепляется |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Нелегитимный процесс |
Легитимный процесс |
|
|
|
|
|
|
|
|
|
|
|
Нелегитимный процесс |
Получает доступ к памяти |
Легитимный процесс |
|
Нелегитимный процесс |
Копирует вредоносную DLL в память |
Легитимный процесс |
|
|
DLL |
|
Выполняется |
Нелегитимный процесс |
с легитимным процессом |
Легитимный процесс |
|
|
DLL |
|
Рис.8.9 |
Важно помнить, что они используются не только для повышения приви легий.
Вот несколько примеров вредоносных программ, которые используют ме- тод внедрения DLL-библиотек, чтобы скомпрометировать одну систему либо перейти на другие:
Backdoor.Oldrea– внедряется в процесс explore.exe;
BlackEnergy – внедряется в качестве DLL-библиотеки в процесс svchost.
exe;
Duqu– внедряется во многие процессы,чтобы не дать себя обнаружить.
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
172 Повышение привилегий |
|||||
w Click |
|
|||||||||
|
|
|
|
|
|
m |
||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
|
|
e |
|
|
|
|
|
|
|
Перехват порядка поиска DLL |
|||||
|
|
|
|
|
n |
|
|
|
||
|
|
|
|
-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 |
|
|
|
|
Перехват порядка поиска DLL – это еще один метод, используемый для ком- прометации DLL-библиотек и предоставления злоумышленникам возмож- ности повысить свои привилегии для продолжения атаки. В этом методе злоумышленники пытаются заменитьлегитимные DLL-библиотеки вредонос- ными. Поскольку места, где программы хранят свои DLL-библиотеки, можно легко идентифицировать, злоумышленники могут поместить вредоносные библиотеки высоко в списке директорий, в которых выполняется поиск леги- тимной библиотеки.Поэтому,когда Windows будет искать определенную DLLбиблиотеку в своем обычном месте, она найдет DLL-файл с тем же именем, но это будет вовсе не легитимная библиотека. Часто данный тип атаки эффек- тивен с программами, которые хранят DLL-библиотеки в удаленных местах , например в веб-ресурсах. Таким образом, библиотеки более уязвимы для зло- умышленников, им больше не нужно физически обращаться к компьютеру, чтобы скомпрометировать файлы на жестких дисках.
Еще один подход к перехвату порядка поиска в DLL состоит в изменении способов загрузки DLL программами. В этом случае злоумышленники изме- няют файлы манифеста или файлы .local, задающие пути поиска DLL, в вы- бранном приложении, чтобы программа загружала библиотеку, отличную от предполагаемой.Злоумышленники могутперенаправитьпрограмму,чтобыта всегда загружала вредоносную DLL, что приведет к постоянному повышению привилегий.Злоумышленникитакже могутизменитьпутьклегитимным DLLбиблиотекам, когда скомпрометированная программа ведет себя ненормаль- но. Целевые программы – это программы, которые выполняются с высоким уровнем привилегий. При выполнении правильной программы злоумышлен- ник может существенно повысить привилегии, чтобы стать системным поль- зователем и, следовательно, получить доступ к большему количеству вещей.
Перехват DLL сложен и требует большой осторожности, чтобы предотвра- тить ненормальное поведение программы-жертвы.В случае неудачи (или уда- чи), когда пользователь понимает, что приложение ведет себя странно, он или она может просто удалить его, что помешает атаке.
На приведенной ниже диаграмме показан порядок перехвата поиска, когда злоумышленник поместил вредоносный DLL-файл в путь поиска легитимного файла (рис. 8.10).
Перехват поиска dylib
Перехват поиска dylib – это метод, используемый при атаке на компьютеры Apple. Компьютеры с операционной системой OS X используют аналогичный метод для поиска динамических библиотек (dylib), которые должны быть за- гружены в программы. Этот метод поиска также основан на переборе путей в файловой системе, и, как было видно в случае с перехватом поиска DLL, злоумышленники могут использовать знания об этих путях для повышения привилегий. Злоумышленники проводят исследования, чтобы найти динами-