Существует одна проблема для атакующего - ему нужно каким-то образом передавать информацию из кода запущенного из BIOS в сторону своего создателя или центра управления. Для этого трояну приходится использовать сеть компании, в которой стоит данное взломанное оборудование, будь то сервер, роутер, сотовый телефон, кофемашина (угрозы IoT) или станок (если мы говорим про защиту ICS/SCADA).
И злоумышленники понимают, что в сетевом пакете им спрятаться некуда. Да, они могут зашифровать само передаваемое сообщение, но сам сетевой пакет им спрятать некуда - он виден в сети и этот неожиданный пакет от конечного оборудования будет замечен и, возможно, заблокирован. Поэтому обычно используются соединения по типовым открытым портам в сети: порт 80, порт 53, порт 123. Смотрите ли вы за всеми неожиданными пакетами в своей сети?
Соответственно, презентация выше о том, что если вы применяете технологию Zero Trust, то вы должны не просто купить лучший в мире межсетевой экран, а еще и важно настроить его правильно. И в этом случае утечь из вашей сети информация из трояна НЕ МОЖЕТ, пока вы ее сами не разрешили.
NGFW отлично справляются с различными видами туннелирования, типа
TCP-over-DNS и техниками обхода защиты, например, использования чужого порта другого приложения (например, передавать данные по 80 или 53 порту, которые обычно быть открыты). С правильно настроенным NGFW вредоносному коду сложно бороться.
Как найти несанкционированные соединения в Интернет на своем межсетевом экране. Практика.
Посмотрите в трафик своей сети и соберите статистику используемых вашими сотрудниками приложений. Вы должны увидеть какие приложения передают трафик с каждого компьютера сотрудника или с сетевого устройства (принтер, роутер, сервер и др). Если у вас NGFW, то каждое соединение "раскрашено" контекстом: что за приложение L7 используется, какая страна, какой URL, какой конкретно сотрудник работает на компьютере, какие типы файлов внутри и др.
Пример: Unknown-TCP
На приведенном ниже скриншоте из вкладки ACC показан dashboard "TOP 10 приложений L7", вы видите, что в сети за последний час были соединения, которые помечены как
unknown-tcp. Эта информация должна вас встревожить, потому что в сети компании обычно 200-300 приложений разного типа, и встроенный в NGFW детектор приложений их все "знает", то есть обнаруживает и блокирует, какими бы сложными они не были. На данной картинке видно, что за час сделано 36 сессий TCP, контент которых межсетевой экран не понял, поэтому пометил как
unknown-tcp. Картинку можно кликнуть и увеличить:
Что наличие приложения unknown-tcp значит для вас? Наличие неизвестного соединения TCP или UDP или ICMP на NGFW - это инцидент. Нужно проводить расследование!
Проведем расследование инцидента c unknown-tcp используя возможности Palo Alto Networks NGFW
Начнем с простого: посмотрим в какие страны идут эти неизвестные соединения. Включим глобальный фильтр по исследуемому приложению unknown-tcp (видно слева на картинке, что фильтр включен). Посмотрим в dashboard Destination Regions, на котором показаны страны, в которые идет unknown-tcp:
Видно, что за 7 последних дней соединения были с Англией, США, Аргентиной, Россией, Германией, Францией, Китаем, Ирландией. Здесь выводы зависят от вашей сети и от вашего бизнеса. Обычно самые подозрительные - это редкие соединения! 5 раз соединялись с Китаем: кто, почему, зачем? Если вы не ведете бизнес с Китаем, то конечно вас должны заинтересовать все соединения в Китай из вашей сети - то есть вы их будете расследовать как более подозрительные. (Я встречал у заказчиков неизвестные им IPSEC туннели в Китай, хотя вроде как IPSEC в Китае разрешен далеко не всем.)
Следующим шагом можно перейти уже в подробный журнал и вывести на экран все соединения, например, давайте посмотрим все соединения с Китаем по unknown-tcp. Для простоты есть специальная кнопка в виджете Destination Regions - кликаем на кнопку и переходим из вкладки
ACC (скриншот вкладки ACC был выше, где были dashboard со статистикой приложений в сети) во вкладку
Monitor и в журнал Traffic - в нем журналируется каждое соединение и одновременно хранится обогащенная контекстом информация по этому соединению. Здесь на картинке вы видите уже все соединения, а не просто статистику:
NGFW для unknown-tcp собрал PCAP пакетов, поэтому у вас есть возможность кликнуть на зеленую стрелку (напротив каждой строки соединения) и посмотреть что же за контент был передан в Китай. Также можно скачать себе на компьютер в виде файла PCAP эти собранные пакеты, чтобы посмотреть в Wireshark.
На картинке выше вы видите, что была применена типовая тактика обхода защиты - соединение было сделано по tcp/80 порту, который открыт практически в любой компании (потому что по порту 80 работают все браузеры).
Движок детекта приложений межсетевого экрана (далее APP-ID) не увидел в передаваемом трафике никакого WEB контента и, более того, не увидел никакого известного ему типа трафика вообще. В базе NGFW хранятся тысячи паттернов приложений L7 - они все были проверены на этому трафике и никакой из них не подошел! Посмотрите всю
базу приложений Palo Alto Networks на сайте
applipedia.paloaltonetworks.com. Раз никакой тип трафика не был обнаружен движком APP-ID, то данный трафик был помечен как unknown-tcp. Мы с вами увидели как реально обходят защиту и увидели как этот обход защиты обнаружить.
Важно понимать, что если у вас L4 firewall, который не смотрит в содержимое пакета, то обнаружить такие атаки невозможно. Более подробно про разницу L4 и L7 читайте статью "
Преимущества межсетевых экранов нового поколения".
Приведенный мной метод как никогда актуален, особенно в сетях с критический инфраструктурой.
Чтобы расследовать инцидент дальше нужно разбираться с владельцем конечного устройства: смотреть что работает в памяти устройства и зачем "оно" что-то отправляет в Китай.
Прелесть периметровой защиты в том, что в одной точке вы контролируете сразу все свои тысячи устройств всеми умеющимися у вас индикаторами атак.
Что дальше?
Полное описание лучших практик и стратегии защиты вашей сети на периметре и в том числе методология защиты Zero Trust, есть в виде записи вебинара Евгения Кутумина: