Всем привет! Я работаю в ИБ-интеграторе и занимаюсь сетевой безопасностью. Сегодня я хочу рассказать про наш собственный кейс, связанный с экстренной заменой иностранного межсетевого экрана (что сейчас достаточно актуально), который «неожиданно» перестал обновляться. Речь идет про переход с иностранного NGFW (у нас был NGFW от Palo Alto) на UserGate версии 6.1.6.
Возможно, кому-то еще предстоит с этим столкнуться, и мои советы окажутся вам полезными. И да, пост не ламповый, а инженерно-хардкорный, поэтому рекомендаций налить чаю не будет, а вот заварить кофейку или чего покрепче – можно.
С чем столкнулись мы
В связи с известными мировыми событиями и санкциями, популярные иностранные производители межсетевых экранов нового поколения (NGFW) приостановили работу. С их уходом, в большинстве случаев, стали недоступны обновления - ПО, актуальной аналитики, баз сигнатур и прочих обновлений безопасности, облачные сервисы, доступы к порталам техподдержки и индийским операторам. Исходя из этого ценность иностранных решений без подписок и аналитики теряется, а следовательно, это ведет к снижению уровня безопасности сети. С отсутствием обновлений и лицензий для иностранных NGFW столкнулись все, в том числе и мы. От этого статус партнера и интегратора, увы, не спасает. В чем, собственно, это проявляется?
Пример: в рамках периодических попыток потренировать пентест-навыки на собственной инфраструктуре была выявлена уязвимость CVE-2021-26855 на почтовом сервере, которая была успешно проэксплуатирована готовым пакетом. Ремарка: многие знают, но на всякий случай, это уязвимость ProxyLogon - она позволяет атакующему обойти механизм аутентификации на Exchange сервере, выдать себя за любого пользователя и удаленно выполнить произвольный код. В общем, теоретически он мог бы сделать что угодно с нашим почтовым сервером (если интересно, на Хабре про неё много постов).
По результатам сканирования и эксплуатации был сформирован запрос на устранение уязвимости и даны конкретные рекомендации по обновлению (Exchange Server 2016, Cumulative Update 14 и т.д.) с указанием конкретных действий. Красивая фраза, но, казалось бы, на этом история закрыта и причем тут NGFW и его обновления. Процесс обновления Exchange, как выразился наш сисадмин, оказался достаточно непростым и требовал прерывания сервиса, а также обновления схемы AD. И это только один пример уязвимости, на практике же публикуемых сервисов в DMZ почти у всех намного больше, плюс есть еще и непубликуемые сервисы, которые тоже нужно защищать (да-да, мы понимаем боль наших заказчиков, возникающую после попыток выстроить процесс управления уязвимостями).
К сожалению, в связи с февральскими событиями, наши лицензии threat prevention на модуль IPS в прошлом NGFW закончились, и мы не могли их продлить. Нам срочно нужно было решение, чтобы обнаруживать и блокировать атаки, а также иметь регулярно пополняемую базу сигнатур и в целом аналитику угроз. Кстати, в зависимости от потребностей это может быть как NGFW, так и WAF – все зависит от поставленных целей и задач по защите. В нашем случае - NGFW/USG/UTM/МСЭ/СОВ.
В качестве полноценной российской замены NGFW мы выбрали UserGate - как для прикрытия текущего NGFW, и как последующую полную замену. Хотя бы потому, что мы партнеры и они дали нам бесплатно лицензию.
Что защищаем
Сеть компании состоит из нескольких локаций, связанных между собой VPN-каналами. Основная нагрузка приходится на центральный офис, в котором располагаются все пользователи и часть внутренних сервисов. В остальные локации вынесены остальные продуктивные ресурсы или их резервные копии, стенды и т.д.
В качестве пилота для перехода, была выбрана одна из удаленных площадок, развернутая в виртуальной инфраструктуре (облако) с уязвимыми сервисами, для которых нет актуальной сигнатуры на текущем NGFW.
Какие цели ставили перед защитой
Защита находящегося тут почтового сервера и других сервисов.
Применение политик СОВ (при этом не просто обнаружение а и блокировка) ко всему трафику, включая трафик из Интернет и трафик между филиалами.
Минимальные изменения общей топологии сети и маршрутов.
Минимальное время простоя работы сервисов.
Раскрытие SSL в веб-сессиях, до внутренних веб-ресурсов и проверка выгружаемых/загружаемых файлов потоковым антивирусом UserGate.
Провести пилотное внедрение за 1 день силами 2 инженеров – я и моя коллега Мария.
План перехода со схемой
Для более плавного перехода решили выполнить инсталляцию, настройку и перенос политик на UserGate, разместив его “сбоку“ от существующего решения. После чего осуществлять перевод сегментов по одному с отработкой возможных проблем или замечаний. Кроме того, решили оставить наш существующий NGFW для Site-to-Site туннелей (только потому, что на других площадках ещё используются другие решения с проприетарными протоколами). В итоге была разработана “оперативная” целевая схема.
Следующие шаги были такими:
Установка виртуальном шлюза в среде гипервизора (UserGate работает как в среде VMware/KVM/Hyper-v).
Настройка порт групп в гипервизоре.
Первичная конфигурация UserGate.
Настройка интерфейсов и зон безопасности.
Настройка P-2-P сети между шлюзами.
Настройка маршрутизации (OSPF).
Перенос большей части политик с NGFW и их попутная оптимизация.
Переключение и проверка целевых сегментов.
Дальше привожу краткий гайд - как все это оперативно развернуть.
Инсталляция
Мы выполнили установку на виртуальной машине под управлением гипервизора - VMware ESXi.
Для установки межсетевого экрана в гипервизоре, необходимо получить образ шлюза. Образ доступен на сайте Usergate - https://my.usergate.com/account#!/downloads (при наличии аккаунта).
Для установки на ESXi вам нужен образ под заголовком - OVF image for VMware.
Для установки на виртуальной машине, необходимо:
Нажать кнопку Create / Register VM.
Deploy a virtual machine from an OVF or OVA file.
Задать имя виртуальной машины и указать или перенести файлы OVF, VMDK или OVA.
Выбрать диск, куда произойдет установка виртуальной машины.
Выбрать порт-группу.
Проверить конфигурацию виртуальной машины. Нажать Finish.
Как только машина будет развернута, выбрать ее и нажать кнопку - PowerOn.
Done.
Первичная настройка
Первичная настройка включает в себя настройку интерфейса управления и обеспечение его доступности из других подсетей. Для этого необходимо:
Зайти в консоль через интерфейс гипервизора.
Войти в интерфейс конфигурационной строки под учетной записью Admin. Пароль по умолчанию - utm.
Задать статический адрес на интерфейсе управления командами. iface config -name port0 -mode static iface config -name port0 -ipv4 {IP}/?? -enabled true
Задать шлюз по умолчанию командой. gateway add -ipv4 {IP} -enabled true -default true
Выполнить проверку доступности внешних подсетей. ping 8.8.8.8
Настройка интерфейсов и зон
Дальнейшая настройка шлюза проходит из веб-интерфейса. Веб-интерфейс доступен на порту 8001. Для доступа в веб-интерфейс необходимо ввести url вида: https://IP_address:8001
Тут картинки интерфейса
Для добавления и редактирования существующих зон, необходимо
Перейти в меню Сеть - Зоны.
Для добавления новой зоны, нажать кнопку - Добавить. Для редактирования - кнопка - Редактировать.
Необходимо задать имя зоны.
На вкладке - Контроль доступа, отметить доступные сервисы для этой зоны. Для зон DMZ - устанавливается флажок Ping. Для зоны Trust необходимо отметить - консоль администрирования и выставить разрешенные подсети. На зоне с пиринговой подсетью выставляется галочка Ping и OSPF.
Для настройки интерфейсов необходимо:
Перейти в меню Сеть - Интерфейсы.
Выбрать интерфейс, нажать - Редактировать.
Поставить галочку - включено. Выбрать Тип интерфейса - Layer 3. Выбрать зону.
На вкладке Сеть - выбрать режим - Статический (в случаи если используется статическое распределение адресов). Нажать кнопку Добавить в поле IP-интерфейса. Прописать адрес и подсеть.
Нажать Сохранить.
Повторить для всех других интерфейсов.
Настройка динамической маршрутизации
Для настройки OSPF в UserGate необходимо выполнить следующие шаги:
В главном меню выбрать Настройки – Сеть – Виртуальные маршрутизаторы.
Включить OSPF-роутер и указать идентификатор роутера. Идентификатор маршрутизатора должен совпадать с одним из IP-адресов, назначенным сетевым интерфейсам UserGate, относящимся к данному виртуальному маршрутизатору.
Во вкладке Интерфейсы выбрать существующие интерфейсы, на которых будет работать служба OSPF. Указать стоимость канала каждого интерфейса (по умолчанию 1) и приоритет.
Перейти в раздел Области. Добавить область. Необходимо указать название области, идентификатор области. Данный идентификатор области должен совпадать с указанным другом пире OSPF. Тип области выбрать “Нормальный“, это означает, что зона принимает обновление каналов, суммарные маршруты и внешние маршруты.
При настройке области, в соседней вкладке Интерфейсы необходимо выбрать интерфейсы OSPF, на которых будет доступна данная зона.
Сохранить настройки.
Для проверки работы маршрутизации переходим в главном меню UserGate в раздел Диагностика и мониторинг – Маршруты. Убеждаемся, что маршруты получены и настройка прошла успешно.
Настройка политик
Перед добавлением политик на UserGate, понадобится выполнить оптимизацию существующих. Оптимизация выполняется по следующим критериям:
Проверяется актуальность сервиса, для которого написана политика. Если этот сервис больше не используется - политика не переносится.
Проверяется показатель счетчика срабатывания и дата последнего срабатывания по каждому правилу. На основании этой информации принимается решение оставлять правило или нет.
По оставшимся правилам проверяется необходимость их переход от “широкого” к “узкому” и наоборот. В тех случаях, когда известно какое приложение или порт сервис использует - рекомендуется написать конкретное правило для использования только этих критериев. Если есть сервисы, использующие один и те же приложения или порты, рекомендуется объединить правила, написанные для них.
Для добавления политики доступа, необходимо:
Зайти в Политики сети - Межсетевой экран.
Нажать кнопку Добавить.
Прописать название политики, выбрать действие. Включить журналирование (опционально).
Задать фильтры для правила в других вкладках.
Настройка дополнительных опций
Настройка СОВ
Для настройки СОВ необходимо:
Зайти в меню Настройки - Библиотеки - Профили СОВ.
В окне профили нажать кнопку добавить. Задать имя новому профилю. В окне Сигнатуры, нажать кнопку добавить. Откроется окно со всеми сигнатурами. Рекомендуется зайти в меню фильтров и выполнить фильтрацию только тех сигнатур, которые могут относится к защищаемому приложению. Например, при публикации почты, необходимо применить фильтр по протоколу smtp. Добавить все найденные сигнатуры.
Перейти в меню - Политики безопасности - СОВ.
Нажать кнопку Добавить. Задать название политики. Выбрать действие - Запретить. В фильтрах добавить необходимые параметры трафика для проверки. Например по зоне назначения - Зона назначения DMZ. Во вкладке профили СОВ выбрать созданный профиль.
Сохранить изменения.
Настройка правил трансляции
Для настройки правил трансляции, необходимо:
Зайти в меню Настройки - Политики сети - NAT.
Нажать кнопку - Добавить.
Указать имя политики. Указать тип NAT. NAT - будет выполняться подмена адреса источника. Если не указан конкретный адрес котороый осуществляется подмена, то будет выполняться функция маскарадинга (подмена в адрес исходящего интерфейса) DNAT - будет выполняться подмена адреса назначения Port Forwarding - будет выполняться изменения порта назначения Policy Based Routing - будет выполняться политика маршрутизации трафика, подходящего под заданными в критерии фильтра Network mapping - будет выполняться подмена сети для адресов источника/назначения.
Задать фильтр, в соответствии с которым будет выполняться действие из политики.
Оптимизация правил межсетевого экранирования и СОВ
Оптимизация правил предполагает размещение правил в таком порядке, чтобы увеличить производительность межсетевого экрана. Это выполняется путем размещения наиболее активных правил выше в списке правил.
Для получения статистики по срабатываниям правил, необходимо:
Перейти в меню Журналы и отчеты - Отчеты - Правила отчетов.
Выбрать правило - Network Policy Report.
Нажать кнопку запустить сейчас. Скачать полученный файл.
При построении нового списка правил, следует соблюдать логику, заложенную в процессе их написания. Если разрешающее правило добавляет исключение в запрещенный трафик срабатывает реже запрещающего, его нельзя двигать ниже.
Чтобы исключить лишние срабатывания модуля IPS, необходимо откорректировать настроенные фильтры в профиле СОВ. Для оптимизации в профиль СОВ, добавляем только те сигнатуры, которые относятся к защищаемым ресурсам. Выполняется это,как правило, на этапе настройки межсетевого экрана. Однако в процессе работы требуется их корректировка для оттачивания необходимого минимума по срабатыванию модуля.
Для проверки сработанных сигнатур, нужно:
Перейти в меню Журналы и отчеты - Отчеты - Правила отчетов.
Выбрать правило - IDPS report.
Нажать кнопку запустить сейчас. Скачать полученный файл.
Перейти в раздел отчета - Топ сигнатур СОВ по категориям.
Итоги
Для всех, кто сопереживал в начале:
Новый NGFW установлен, обновлен и настроен (ни один старый NGFW не пострадал).
Выполнена попытка эксплуатации предыдущих уязвимостей:
Прерывание связи было минимальным (ни один пользователь или сервис не пострадали, хотя минут на 10 захромала OWA в связи с излишне строгим правилом).
Exch и AD спасены и обновлены в нерабочее время.
Оперативно приняли коллегиальное решение на дальнейший курс по уменьшению количества иностранных NGFW на квадратный метр компании.
В процессе выпили на 5 кружек кофе больше обычного, но благо кофе у нас вкусный.
PS. Если столкнулись с чем-то подобным и возникли вопросы по настройке – задавайте в комментариях или на почту gholahate@gmail.com.
Комментарии (4)
IgorShark
27.07.2022 12:01Защищать веб прилодение IPS'ом ну такое себе. В целом статья "разворачиваем UG для чайников", начинающим будет полезно.
Barsug
Правильно ли я поняла автора статьи?
Стоял NGFW.
Весь "переход" заключается в том, чтобы поставить ПЕРЕД ним UserGate на виртуалке? (рисунок "целевая схема").
Спасибо.
Sarymian
В смысле "перед". Переход заключается в замене, т.е. поставить "заместо" NGFW. Но Как и писал автор, есть VPN соединения которые держит NGFW на проприетарных протоколах и его пока оставили держать эти соединения, пока на конечных узлах не внесут соответствующие изменения. После чего, от NGFW откажутся и будет работать только UG.
gholahate Автор
C небольшой поправкой. Поставили после существующего. На существующем оставили сервисы VPN. Перенесли всё сегментирование и политики, включая политики безопасности, на новый. Получили от производителя аналитику, подписки, обновления баз сигнатур.