Изучаем подходы к ZTNA или как работает доверенный удаленный доступ ВКонтакте

Изучаем подходы к ZTNA или как работает доверенный удаленный доступ ВКонтакте

Начну с благодарности. Сотрудники обожают работать из дома со времен COVID. Спасибо этой болезни за наш новый образ жизни. Я сам удаленку люблю со времени моей работы в IBM с 2006 года.

Какие есть риски удаленного доступа и чем защищаться

Существует готовый подход предоставления доверенного удаленного доступа своих сотрудников к корпоративной сети и для последующей обработки конфиденциальной информации: написания кода, перевода денег, создание других интеллектуальных продуктов. Его называют Zero Trust Network Access (ZTNA). Он стал развитием обычного доступа по Remote VPN. И причин расширения функциональности VPN несколько, часть я напишу ниже, не ограничивая общности. name='more'>

Подключение хакера к сети от имени сотрудника

    Было уже много случаев: ярким был взлом Uber и Cisco. Хакеры показали, что достаточно установить корпоративный клиент VPN, например Cisco AnyConnect или Palo Alto Networks GlobalProtect и ввести свой логин пароль или предоставить сертификат. По идее здесь защищает добавление в аутентификацию проверки второго фактора, однако поддерживающие системы для этого под постоянной атакой:

Кстати говоря. если вы используете российские системы MFA, то проверьте кто их проверяет на уязвимости. Не буду никого рекламировать )
Для защиты от кражи пароля можно зафиксировать конкретное устройство за сотрудником, чтобы любая кража пароля не давала возможности подключиться с другого устройства. Для этого надо как-то на аппаратном уровне прописывать ключи доступа в аппаратный модуль TMP. И тут тоже выясняется, что есть трудности, например, не все браузеры умеют работать с TMP или аппаратным менеджером ключей Secure Enclave в iOS.

Заражение клиентской машины

Почти у всех компаний есть требования к настройке устройств, которые относятся Hardening операционной системы и к установке дополнительных приложений для защиты.

Я бы ставил EDR/XDR клиент на удаленные рабочие станции, и про это я уже рассказывал в видеоролике про Zero Trust и ZTNA  и на различных конференциях.

EDR умеет множество функций - и проверяет настройки устройства и сам защищает, и отправляет журналы в центр управления, и контролирует поведение сотрудника и даже иногда содержит DLP. 

Клиентский VPN сегодня содержит проверки что установлены нужные версии приложений, стоят нужные обновления и настроены правильно конфигурации. Появление таких проверок обычно называют словом ZTNA, что означает, что в компании не просто дают доступ к ресурсам всем сотрудникам, а еще и проверяют самого сотрудника и его устройство для соответствия уровня безопасности компании.

Фотографирование или видеосъемка экрана 

Да, стоящий рядом с вами преступник может заставить вас зайти в нужные ему системы и сфотографировать банально документы прямо с экрана. И защита от такой угрозы тоже есть такие системы называются Information Leaks Detection (ILD) и Virtual Data Room (VDR). Их основной фишкой является то, что вы не просто просматриваете документ, а немного видоизмененный: некоторые строчки не такие ровные, буквы не так далеко друг от друга стоят. Это водяные знаки и замечает этот софт, чтобы идентифицировать у какого сотрудника с экрана была сделана фотография. Скоро выйдет ролик про это, подписывайтесь на мой канал Топ Кибербезопасности , чтобы получать новую информацию.

Часть компаний, которые сами являются разработчиками игнорируют типовые подходы ZTNA. Они часто говорят, что у них все уникально и поэтому им нужен какой-то "свой велосипед". Поэтому они делают какой-то свой удаленный доступ, не как у других. И мне понравилась лекция про это . Ее читал Илья Сафронов из компании VK. 

Есть два противоположных подхода к удаленке и к ZTNA:

  1. Удаленный доступ на сетевом уровне, когда твои сетевые пакеты уходят в туннель IPSEC. Для этого ставится локальный агент, который работает непосредственно с сетевой картой сам. Этот способ удобен, потому что все приложения работают, как-будто с сетью. Например вы уже пользуетесь putty для доступа по SSH или пингуете хосты внутри будто вы находитесь внутри.
  2. Удаленный доступ через SSL VPN  на основе Software Web Gateway(SWG), когда ты подключаешься браузером через веб-портал и тебе в нем расшаривается какое-то корпоративное приложение, например, просто твой компьютер внутри, или виртуальный десктоп VDI. У сетевиков это называется обратный прокси, и иногда еще требуется установить балансировщик для таких доступов. Безопасники это способ иногда называют бесклиентский VPN, хотя клиентом тут все-таки является браузер с встроенной реализацией TLS/MTS, обычно это сделано библиотекой OpenSSL. Этот способ неудобен, потому что не все приложения дают такую возможность работы через прокси.

Что рассказали коллеги из VK про имеющиеся реализации

Google BeyondCorp ZTNA

Google не говорит сколько устройств у них так работает. При этом они говорят, что им потребовалось 6 лет, чтобы реализовать такую схему. 

Здесь на схеме нарисовано здание Google, именно поэтому у них получается реализовать сетевой доступ 802.1x, поскольку это требует наличия специализированных управляемых свитчей и сервера RADIUS.
И затем уже внутренние сотрудники получаются доступ на уровне приложений на основе прокси.
И параллельно внешние сотрудники подключаются к этому же Access Proxy.
Специальный сервер у них коррелирирует информацию между доступами Access Proxy и RADIUS и выдает доступы на основе сертификатов. Вообще схема странная, потому что Single Sign-on не очень понятно как работает для внутренних сотрудников в здании. Ну какая есть ) Ну и в общем можно изучить эту концепцию подробнее тут cloud.google.com/beyondcorp


Cloudflare ZTNA

У CloudFlare ZTNA доступ для сотрудников работает на агентах, которые распространяются по клиентам. У них есть сервер доступа, он же шлюз безопасность, он же SWG, он же ZTNA устройство. И через него сотрудники получают доступ в облако IaaS. то есть напрямую им в облако ходить в IaaS нельзя.  Вообще применение Secure Access Service Edge (SASE) означает, что шлюзы безопасности находятся в некотором облачном сервисе, и автоматически масштабируются при увеличении числа сотрудников. Про SASE есть краткий инструктаж в видеоролике . Также у Cloudflare есть интересный сервис Remote Browser Isolation (RBI).


Основная ценность SASE, что он не заставляет больше сотрудников и офисы сначала отправлять трафик в некий центральный офис, а позволяет отправлять трафик сразу к нужному облачному ресурсу. 
Вот так было раньше в традиционном Remote VPN:

Kolide ZTNA

Это какой-то стартап, который я раньше не знал.
Kolide ZTNA - дает доступ через браузер. По сути они дают локального клиента, который сам тебя авторизует и проверяет второй фактор. Он встраивается в браузер.


Как делает удаленку VK

VK решает задачу защиты от подмены устройства, для этого они везде стараются прошить ключ доступа в аппаратный TPM.

В итоге их подход такой, что каждая клиентская машина содержит

- Opensource продукт Osquery - это агенты на устройствах для отправки событий в SIEM для выявления пробива и закрепления на рабочей станции на основе правил внутренней группы red team и blue team.
- самописный агент для своих задач
- MDM компании Jamf 

Для удаленного доступа устройства подключаются к сети компании браузером через прокси на основе Pomerium. Проходит взаимная аутентификация по MTLS на основе сертификатов клиента и сервера. Для этого у VK проведена большая работа по распространению сертификатов доступа и по перемещению их в встроенный TPM каждого устройства и использованию аппаратного менеджера ключей Secure Enclave в iOS.
Также у них есть и второй вариант доступа: веб-интерфейс (SSL VPN) для доступа к VDI.


Интересная особенность браузеров обнаружилась в исследовании: они плохо работают с TPM и SecEnclave


А как правильно

Поставщиков SASE и соответственно ZTNA достаточно много. Если вы рассматриваете себе удаленку, то я бы рекомендовал взять готовое решение на основе SASE и еще усилить его установкой XDR и все события еще собирать в облачный Data Lake. SASE это сильно больше чем просто удаленный доступ, поэтому вы получите еще и море другой пользы.


Список поставщиков SASE можно увидеть у Gartner в его квадранте

Я выше уже подчеркивал, что есть два способа работы: на сетевом уровне и через прокси. Я советую на сетевом, потому что так у вас будет работать максимальное число приложений и вы сможете использовать привычную функциональность NGFW, которая серьезно мощнее, чем обычный HTTP(S) прокси, встроенный в обычные SWG.






Alt text

Цифровые следы - ваша слабость, и хакеры это знают.

Подпишитесь и узнайте, как их замести!

ksiva

Пусть будет утренний в честь того, что я его создал утром.