Я всегда интуитивно склонялся к тому, что вирусы пишут не только глубоко обиженные на судьбу люди, но и талантливые, амбициозные, профессиональные и действительно увлеченные своей идеей люди.
С возрастом я все больше в этом убеждаюсь. Эпидемия вируса Petya - этому лишний раз подтверждение.
В голове невольно складываются кубики — что сделали правильно или неправильно, как только узнали об атаке?
Что было сделано правильно в первые часы атаки:
Первичный сценарий заражения |
Предпринятые меры |
Сценарий – проникновение через почтовые сообщения в виде вложения к письму | заблокировали почтовые вложения + неоднократные рассылки с категорическим запретом открытия подозрительных вложений |
Сценарий – через систему обновлений MEDoc, так называемую атаку «software supply chain attacks», когда взламывается поставщик ПО | погасили сервера M.E.Doc до выяснения |
Вторичный сценарий заражения |
Предпринятые меры |
Активация. Сценарий – команда через Интернет зараженным ПК | закрыли доступ всех пользователей в сеть Интернет |
Механизм, использующий уязвимость SMBv1 (EternalBlue/EternalRomance) на находящихся в одной подсети с зараженным ПК компьютерах | исторически созданное сегментирование сети + всех заставили выключить ПК и распустили домой |
Механизм pass-the-hash/pass-the-ticket, используя имеющиеся на зараженном ПК сеансы пользователей/администраторов локальных и доменных | всех заставили выключить ПК и распустили домой |
Как выразился Игорь Шаститко — «что действительно должны были сделать»? Какие сервисы защиты уже были на всех уровнях ИТ-инфраструктуры?
Рекомендации от Игоря Шаститко кратки и просты (для специалистов):
Уровень |
Технологии |
Данных | ACL / шифрование |
Приложений | антивирус (который поддерживается на Windows +Linux), Applocker / Device Guard |
Хостов | Последняя версия ОС, аутентификация, управление обновлениями, FW, защита от вторжения (IDS), Device Guard |
LAN | Сегментирование и изоляция (VLAN), шифрование (IPSec), защита от вторжения (NIDS) |
Периметр | FW, контроль доступа, App FW, NAP |
Физическая безопасность | Охрана, ограничение доступа, аппаратный контроль и аудит доступа, отслеживание устройств, камеры наблюдения |
Люди, политики, процедуры | Документирование, тренинги, предупреждения и уведомления, наказания… |
Если углубиться, то этот посыл может выглядеть так:
Необходимые технологии для закрытия от вирусных атак типа Petya nonPetya
Уровень | Технологии | |
Данных | · ACL · Шифрование · Классификация данных с RMS |
· ACL есть? · Шифрование есть? · RMS нет? |
Active Directory («Активный каталог», AD) — служба каталогов корпорации Microsoft | · Актуальная база Users, Comps, Servers, Groups в AD: OU для серверов приложений (сегментированных между собой по типам приложений и требуемого сетевого доступа) · OU для Users&Admins по структуре и местоположению · Microsoft PAM · разделяемый доступ администраторов к OU |
· Обычно что-то есть в AD, но не задокументировано. · Microsoft PAM, · LAPS — нет: уникальные административные пароли на каждой рабочей станции/сервере – утилита Local Administrator Password Solution (LAPS). · Административные учетные записи, не обладающие полнотой прав на уровне всей сети (Securing-privileged-access). · Жесткая идентификация пользователя и на каком компьютере произведен вход в полях AD: 1. Расширить схему AD и добавить поле для MAC-адреса компьютера; 2. Внести в тестовый логон-script, чтобы для каждого пользователя, кто входит в сеть, напротив имени учетной записи в поле description вписывалось FDQN компьютера, с которого произведен вход; 3. В том же скрипте вписывать в поле description в имени компьютера имя учетной записи пользователя, который вошел на этот компьютер и в новое поле по п.1 вписывать MAC-адреса компьютера |
Приложений | · антивирусы (обновление сигнатур), · «бронирование» приложений и сервисов с помощью механизмов обнаружения вторжения |
· подписка на Defender ATP или · Microsoft ATA · Applocker · Device Guard |
Хостов | · ОС (политики с рекомендованными настройками безопасности от Microsoft Security Compliance Manager или · отключить SMB v1 как класс и прочие ненужные устаревшие сервисы · через AD GPO запретить User открывать разделяемые ресурсы), · аутентификация, · управление обновлениями, · FW, · защита от вторжения (IDS — подписка на Defender Advanced Thread Protection), · VBS, · Device Guard |
· VBS и Device Guard для защиты от кражи идентити. 1. Но – VBS есть только в Windows 10 не во всех редакциях и 2. есть рекомендации по защите хостов от Pass-the-hash/pass-the-ticket атак для Windows 7, 3. использование рекомендованных шаблонов безопасности (для Windows 10 без VBS/DG) — отключение кеширования идентити при входе. · Уникальные административные пароли на каждой рабочей станции/сервере – утилита Local Administrator Password Solution (LAPS). · Административные учетные записи, не обладающие полнотой прав на уровне всей сети (Securing-privileged-access). |
LAN | · Сегментирование и изоляция (VLAN) · шифрование (IPSec) · защита от вторжения (NIDS) |
· сегментирование и изоляция (VLAN) · заменить все Cisco по проекту = заменить сетевые устройства, которые не поддерживают 802.1x во всей сети · Создать сегменты для серверов приложений (сегментированных между собой по типам приложений и требуемого сетевого доступа) · RADIUS · Включить 802.1x на сетевом уровне |
Периметр | · FW, · контроль доступа, · App FW, · NAP · сервис фильтрации почтовых сообщений (в Microsoft Exchange) – удаление всех файлов, кроме разрешенных типов, · антивирусная система для электронной почты. |
· аренда аналогичных облачных сервисов Exchange Online Protection, «знания» которого не зависят от «расторопности» администраторов (время внедрения – 30 мин + обновление доменного имени) |
Физическая безопасность | · Охрана, · ограничение доступа, · аппаратный контроль и аудит доступа, · отслеживание устройств, · камеры наблюдения |
соответствие инвентарному кол-ву компьютеров |
Люди, политики, процедуры | · Документирование, · тренинги (обучение не открывать файлы), · предупреждения и уведомления (о возможных атаках), · наказания: 1. вплоть до увольнения и судебных исков против запустивших вирус 2. персональная ответственность админов и сетевиков за каждый следующий поломанный по сети компьютер из-за того, что его учетная запись «гуляет» по всей сети |
Предупреждали пользователей, пугали наказанием — сработало. Админы могут проигнорировать смену паролей — нужно проверить даже, если доверяешь |
Ссылки:
Securing Privileged Access — http://aka.ms/privsec
Defense-in-Depth https://msdn.microsoft.com/ru-ru/library/cc767969.aspx
Рекомендованные шаблоны безопасности (и для Windows без VBS/DG) – http://aka.ms/pth
Local Administrator Password Solution (LAPS) — http://aka.ms/laps
Учетные записи, не обладающие полнотой прав на уровне всей сети — https://docs.microsoft.com/en-us/windows-server/identity/securing-privileged-access/securing-privileged-access-reference-material
Практическое видео от Игоря Шаститко с примером реальной лабораторной по заражению домена Petya.C с правильно настроенными политиками безопасности согласно требованиям Defense-in-Depth для защиты от современных типов угроз (типа того же Pass-the-Hash/Pass-tht-Ticket, которые использовал Petya.AC) – при явном заражении одного ПК – влияние вируса на остальную лабу – нулевое.
Ну, вот где-то так.