Flame и поддельный сертификат Microsoft: что это значит для корпоративной сети
Flame использует поддельный сертификат Microsoft и Bluetooth-сканирование. Разбираем векторы атаки и конкретные меры защиты для корпоративной инфраструктуры.
Обнаружена шпионская программа Flame (Flamer/sKyWIper) - сложнейший инструмент кибершпионажа, нацеленный на промышленные объекты Ближнего Востока
В начале недели несколько наших клиентов прислали один и тот же вопрос с разницей в формулировках: «слышали про новый вирус на Ближнем Востоке, нам это касается?». Касается. Не потому что их инфраструктура - стратегический объект иранской ядерной программы, а потому что два технических приёма, которые Flame использует для распространения, давно существуют в любой корпоративной сети - и большинство компаний от них не защищены.
Кратко о предмете. Flame - модульная шпионская платформа, по сложности архитектуры заметно превосходящая то, что аналитики видели раньше. Основная цель - кража данных: документы, скриншоты, запись аудио, перехват сетевого трафика. Распространялась по сети как минимум через два механизма - и вот они интересны именно с практической точки зрения.
Механизм первый: поддельный сертификат Microsoft
Flame использует сертификат, выданный через цепочку доверия Microsoft Terminal Services Licensing. Из-за слабости алгоритма MD5 в старых сертификатах Microsoft удалось создать коллизию и сформировать поддельный сертификат, который Windows принимает как доверенный. Это позволяло Flame внедряться через Windows Update как легитимное обновление.
Microsoft выпустила экстренный патч, отозвала скомпрометированные промежуточные сертификаты и добавила механизм проверки глубины сертификатной цепи. Но проблема шире конкретного инцидента.
Что это означает на практике для корпоративной сети:
Первое - контроль источников обновлений. Если машины в сети получают обновления не напрямую с Microsoft Update, а через внутренний WSUS - это уменьшает поверхность атаки. Трафик обновлений не идёт наружу от каждой рабочей станции, и централизованный сервер проще контролировать. Если у клиента нет WSUS - рекомендуем. Это базовая мера, а не экзотика.
Второе - проверка TLS-сертификатов. Flame эксплуатировал MD5 в цепи доверия. Большинство корпоративных прокси и МЭ умеют инспектировать TLS - но часть из них при этом сами доверяют MD5-подписанным сертификатам в цепочке, не проверяя глубину. Стоит проверить конфигурацию: какие алгоритмы считаются допустимыми, что происходит с сертификатами, срок действия которых истёк или алгоритм подписи устарел.
Третье - мониторинг аномалий в Windows Update. Если WSUS уже стоит, но логи обращений к нему никто не смотрит - это полсценария. Аномальный хост, который обращается за обновлениями в нетипичное время или с нетипичной частотой, - первый признак чего-то лишнего.
Механизм второй: Bluetooth-сканирование
Flame умеет периодически опрашивать Bluetooth-стек машины и составлять список ближайших устройств. Это не атака через Bluetooth в классическом смысле - малварь не эксплуатирует уязвимость стека. Она просто собирает информацию: какие устройства рядом, когда появляются, с какой регулярностью.
Зачем? Bluetooth-профиль устройства - удобный инструмент слежки: можно восстановить перемещения носителя заражённого компьютера, установить связи между людьми, работавшими в одном помещении. Для промышленного шпионажа это ценнее, чем просто содержимое директории «Документы».
Но нас в данном случае интересует другое наблюдение: Bluetooth на рабочих станциях включён просто так. Без цели, без политики, часто - потому что в оборудование встроен адаптер, а отключить никто не подумал. Это называется расширением поверхности атаки без всякой пользы.
Что делать:
Отключить Bluetooth через групповую политику на всех машинах, где он не нужен. На большинстве корпоративных рабочих станций нужен он примерно нигде. Политика Device Installation Restrictions в GPO позволяет запретить установку Bluetooth-адаптеров по классу устройств - это работает даже на встроенных адаптерах через отключение драйвера.
Провести инвентаризацию того, где Bluetooth реально используется. Иногда оказывается, что он нужен одному бухгалтеру с беспроводной мышью и руководителю с гарнитурой. Это решается переводом их на USB-ресиверы - дешевле, чем оставлять открытый вектор на всём парке.
Что мы проверяем в рамках аудита прямо сейчас
После новостей о Flame мы добавили несколько пунктов в чеклист, с которым выходим к клиентам:
- Есть ли WSUS, и настроено ли получение обновлений только через него
- Что происходит с Bluetooth на рабочих станциях (включён / отключён / управляется ли политикой)
- Какие алгоритмы подписи принимает корпоративный CA и внешние сертификаты в доверенных хранилищах
- Есть ли логирование событий Windows Update на уровне WSUS и просматривается ли оно
Ни одна из этих проверок не требует дорогостоящих инструментов. Это базовый аудит инфраструктуры, который при должной аккуратности проходится за день-полтора.
Flame - сложная программа, и её создание явно потребовало значительных ресурсов. Но защита от конкретных векторов, которые она использует, вполне доступна без специальной подготовки. Отозванные сертификаты, обновления только через WSUS, Bluetooth под GPO - это не противодействие высококвалифицированному противнику, это нормальная гигиена. Проблема в том, что у большинства клиентов из этого списка нет даже первого пункта.