Привет, Хабр! Меня зовут Виталий Даровских, я менеджер продукта в компании UserGate. Мы разрабатываем программные решения и микроэлектронику в сфере информационной безопасности, а также предоставляем ИБ-услуги. Сегодня расскажу о том, как зародилась концепция zero trust, а также поделюсь нашим опытом разработки продукта UserGate Client. Это — решение для контроля безопасного доступа в инфраструктуре предприятия.
От замков и рвов к нулевому доверию
Концепция «нулевого доверия» сформировалась в середине нулевых, когда классическая модель сетевой безопасности «замок и ров» потеряла актуальность. В старой парадигме сеть защищали файрволом и системой аутентификации: если пользователь попадал в контур, считалось, что ему можно доверять. На тот момент такой подход во многом был обоснован: сотрудники трудились преимущественно в офисе, использовали локальную инфраструктуру, а мобильные устройства, распределённые команды и удаленная работа были далеки от мейнстрима.
Когда границы офисного пространства стали более гибкими — многие перешли на работу из дома, стали чаще сидеть в кафе с ноутбуком, пользоваться публичными сетями — классическую парадигму пришлось пересмотреть. Для этого в 2007 году Министерство обороны США — правительственная организация с масштабной инфраструктурой, огромным количеством сетей и проектов — сформулировало концепцию «черного ядра». Специалисты хотели защитить коммуникацию сотрудников, а также сделать инфраструктуру ведомства менее подверженной атакам злоумышленников. Большая сеть не могла полагаться на единый периметр, поэтому акцент был сделан акцент на end-to-end шифровании каждого сообщения или пакета.
Примерно в то же время инженер и специалист по информационной безопасности Пол Симмондс представил концепцию «де-периметризации» (de-perimeterization). Этот подход, ставший предшественником zero trust, предполагал не только кросс-корпоративную аутентификацию, но и внедрение стандартов для классификации данных. Тогда модель де-периметризации позволила отказаться от традиционного сетевого периметра в пользу распределенной системы защиты, безопасность в которой обеспечивалась независимо от местоположения пользователя.
Но сам термин zero trust появился только в 2009 году.
Его ввел аналитик Forrester Джон Киндерваг, сформулировавший основные принципы концепции: а) все сущности, даже те, что находятся внутри периметра, считаются недоверенными, пока не докажут обратное, б) безопасность поддерживается с помощью непрерывного мониторинга, в) пользователи получают минимальный набор привилегий по умолчанию.
Серьезный импульс развитию zero trust в 2010-х дал рост масштаба сетей и рынка мобильных устройств, а также серьезный виток интереса к удаленной работе. Вместе со всем этим кратко выросла мощность и количество кибератак, а также утечек и инцидентов со зловредами-вымогателями. Один из наиболее ярких затронул около 200 тыс. компьютеров в 150 странах, включая больницы, предприятия и государственные учреждения. Следом правительственные рабочие группы начали пересматривать подходы к организации ИБ. Так, в 2021 году в США появился черновик стратегии перевода правительственной инфраструктуры на zero trust модель.
По мере внедрения эта концепция оформилась как совокупность взаимодополняющих компонентов. В неё входят: строгая аутентификация и авторизация, сегментация прав доступа и контроль через зашифрованные каналы связи. И на рынке представлен широкий набор инструментов, которые реализуют каждую из этих концепций по отдельности. Среди иностранных решений есть FortiVPN, FortiEDR, FortiNAC и Cisco ISE. Мы же в UserGate пошли по пути интеграции трех компонентов zero trust под капотом продукта UserGate Client. Далее расскажу подробнее о том, каким образом наше решение охватывает ключевые аспекты концепции zero trust.
Что у нас под капотом
Наше решение является частью UserGate SUMMA — платформы для комплексного обеспечения информационной безопасности. Оно дает возможность настраивать политики безопасности, фильтровать трафик по адресам, источникам, приложениям, типам контента и не только. UserGate Client включает три компонента: VPN, NAC и EDR. Далее, расскажу о них подробнее.
VPN. Межсетевой экран следующего поколения UserGate NGFW (или UserGate Management Center) выполняет функции VPN-сервера, а пользовательские устройства — VPN-клиентов. Защищенные туннели формируются на базе L2TP/IPsec и IKEv2. Для настройки туннеля L2TP на VPN-сервере создается учетная запись для аутентификации устройства, играющего роль VPN-клиента.
В случае с IPsec можно реализовать аутентификацию посредством или общего ключа, или сертификатов. Во втором случае серверные и клиентские сертификаты подготавливаются заранее и загружаются в систему NGFW. Также есть функция раздельного туннелирования (split tunneling), позволяющая направить часть трафика через VPN, а остальной — напрямую, не отключаясь от частной сети. Например, вот так может выглядеть таблица маршрутизации после настройки VPN.
На изображении выше видно, что весь трафик идет через локальный шлюз 10.77.9.1, а адрес 192.168.30.100 «завернут» туннельным интерфейсом в VPN.
NAC. Контроль состояния рабочих станций перед допуском в инфраструктуру построен на базе HIP-профилей. Они состоят из HIP-объектов, которые позволяют задавать критерии доступа и требования к рабочей станции: например, операционная система должна быть не ниже определенной версии Service Pack; установленный антивирус — от конкретного вендора, обновленный до последней версии; Bitlocker настроен по заданным стандартам; использование торрент-программ запрещено. Внутри HIP-профиля можно объединять множество HIP-объектов по логике И/ИЛИ/НЕ. Если рабочая станция проходит проверки, тогда ей разрешается доступ в сеть.
Система также поддерживает управление доступом на уровне приложений. Приведу пример: в менеджмент-центре задано правило CLIENT_CHECK_L7. Оно гласит: если сетевой доступ запрашивает приложение Firefox, доступ будет заблокирован.
Для каждой версии Firefox заранее получен уникальный хеш, который прописан в правилах для идентификации приложения.
В то же время, если пользователь попробует выйти в интернет через браузер Edge, система его пропустит.
EDR. Основу составляет файрвол уровня узла (непосредственно на рабочей станции). В последней редакции UserGate Client мы перенесли обработку правил безопасности на рабочую станцию. Раньше телеметрия отправлялась на файрвол на периметре. Сам файрвол посылает телеметрию состояния (загрузки процессора, памяти, заполненности жесткого диска) и телеметрию событий — event log. Мы эти события направляем в UserGate SIEM, которая после нормализации и корреляции событий отдает рабочей станции команду прекратить подозрительный процесс. Если машина не отвечает (скажем, она была скомпрометирована), то на вышестоящем оборудовании — коммутаторе — блокируется порт, чтобы «заражение» не распространилось.
Как начать работу
Далее покажу, как установить UserGate Client на доменные компьютеры.
Первым делом настроим UserGate Management Center. Активируем сервис Контроль конечных устройств на зоне, куда будут подключаться управляемые устройства [для этого нажимаем Сеть >> Зоны]. После создадим шаблоны и группу шаблонов с настройками для устройств.
Наконец, получим код для инициализации подключения к устройству. Переходим в Управление конечными устройствами >> Коды для конечных устройств, создаем запись и выбираем только что сформированную группу шаблонов. На этом базовую настройку UserGate Management Center можно считать завершенной.
Следующий этап — работа с Active Directory. Загружаем на сервер шаблон UserGateClient.adm и установщик UserGate Client, помещаем их в пользовательскую директорию.
Открываем Пользователи и компьютеры Active Directory, чтобы сформировать новую группу, например, mygroup1.
Добавляем в неё компьютеры, на которые будем ставить UserGate Client.
Переходим в меню управления групповой политикой и создаем объект групповой политики.
Выбираем созданную ранее группу — в нашем случае, mygroup1.
Далее, создаем пакет и выбираем установщик UserGate Client из сетевой папки.
Наконец, добавляем и настраиваем административный шаблон UsergateClient.adm. Для этого переходим в раздел Административные шаблоны и выбираем Классические административные шаблоны (ADM) >> UserGate Client.
Теперь остается активировать политики и указать IP-адрес сервера UserGate Management Center с кодом для подключения, сгенерированным в самом начале.
Вместо заключения
Мы продолжаем работать над расширением функционала UserGate Client. Недавно у нас появился клиент под Astra Linux, который поддерживает функциональность, связанную с настройкой VPN и авторизацией. Мы будем расширять его возможности (в частности, добавим HIP-правила, различные варианты работы с MC и NGFW, файрвол уровня узла), а также планируем выпустить версии для RED OS и AltLinux.
Также мы планируем внедрить инструменты пограничного облачного контроля — аналогов таких систем на российском рынке пока нет. Эти решения помогут упростить подключение небольших офисов как по высокоскоростным, так и бюджетным каналам.
LesnoyChelovek
Вспомнилась классическая шутка: «Лучший способ защитить компьютер — не включать его». :)
Zero trust и его модификации — это, конечно, круто, но пока безопасники будут думать только о «запретить и не пущать», а не о том, как сделать жизнь обычного пользователя проще, все эти замечательные технологии так и останутся уделом гиков. Юзеры, как вода, всегда найдут дырочку, если им будет неудобно. Надо строить ИБ так, чтобы хотелось ей пользоваться, а не обходить её всеми правдами и неправдами.
dmitrykabanov
Очень зависит от типа компании. Одно дело — пользоваться ИБ в команде из 3-5 человек распределенных. Другое — какой-то гос с 5-10к офисных сотрудников. Всем ли там вообще будет дело до ИБ — в лучшем случае десятой части.
Nuclar Автор
Есть часть правды в ваших словах.
Но как и любая концепция (а ZTNA именно что концепция) позволяет взять нужное для конкретной организации/инфраструктуры.
А вопрос соотношения удобства - безопасности, это постоянно открытый вопрос.
Для нас важно было создать инструмент, который подойдет под множество сценариев использования.