Руслан Рахметов, Security Vision
Сетевая безопасность продолжает оставаться одним из важнейших аспектов кибербезопасности, наряду с защитой данных и учетных записей, безопасностью on-prem и облачных инфраструктур и реагированием на киберинциденты. Многочисленные защитные решения обеспечивают выявление и предотвращение реализуемых удаленно кибератак - от эксплуатации веб-уязвимостей до несанкционированного удаленного управления взломанными инфраструктурами. Для обеспечения сетевой безопасности и контроля доступа к веб-ресурсам используется в том числе и технология глубокого анализа трафика - Deep Packet Inspection (DPI), о которой расскажем сегодня.
Для начала следует рассказать вкратце предысторию появления самой концепции глубокого анализа сетевого трафика. Первые межсетевые экраны (брандмауэры или файерволлы, англ. firewall) появились в конце 1980-х годов - это были простейшие пакетные фильтры без контроля состояния сетевых соединений (stateless-файерволлы), которые рассматривали каждое сетевое соединение по отдельности и работали на сетевом (третьем) уровне модели OSI: например, они могли запретить входящий трафик с определенного IP-адреса. Далее в начале 1990-х годов появились межсетевые экраны с контролем состояния сетевых соединений (stateful-файерволлы). Они уже могли видеть взаимосвязи между сетевыми соединениями и работали на транспортном (четвертом) уровне модели OSI: например, они могли разрешить входящее соединение с определенного IP-адреса только на определенный TCP-порт и только в рамках уже ранее установленной сетевой сессии. Далее в 2000-х годах стали появились комбинированные сетевые защитные системы, такие как UTM-решения (Unified Threat Management, унифицированное управление киберугрозами), в которых сочетались stateful-файерволл, сетевое средство обнаружения и предотвращения вторжений (IDS/IPS), VPN-шлюз, антивирус, средство контентной фильтрации. Им на смену пришли NGFW (Next-Generation Firewalls, межсетевые экраны нового поколения), которые в дополнение к функционалу UTM получили возможность контроля сетевой активности приложений на прикладном (седьмом) уровне модели OSI, фильтрацию вредоносных URL, интеграцию с «песочницами» для проверки подозрительных объектов, проверку зашифрованного трафика (т.н. SSL/TLS-инспекция), защиту от DDoS.
Идея глубокого анализа работы веб-приложений, т.е. акцент на контроле трафика прикладного (седьмого) уровня модели OSI, и лежит в основе технологии DPI - Deep Packet Inspection, буквально - «глубокая инспекция (сетевых) пакетов». Изначально концепция глубокого анализа трафика появилась вместе с возникновением stateful-файерволлов, но на тот момент вычислительные мощности не позволяли проводить подобный анализ «на лету». Однако, уже к середине 2000-х годов сформировался спрос на такую технологию, а аппаратное обеспечение стало более доступным. Сейчас технология DPI применяется для решения следующих задач:
1) Приоритизация трафика: критичные бизнес-приложения должны получать сетевой приоритет, а пользователям необходимо предоставить бесперебойную голосовую и видеосвязь, при этом отдельные ресурсоемкие сетевые приложения (например, пиринговые сети или стриминговые сервисы) не должны замедлять работу сети. Интернет-провайдеры и компании используют DPI в своих сетях для полной блокировки или ограничения скорости определенных файлообменных протоколов, таких как BitTorrent.
2) Формирование специальных тарифных предложений для различных групп пользователей: провайдеры мобильного интернета зачастую предлагают свои клиентам на некоторых тарифах безлимитный доступ к популярным ресурсам (соцсети, мессенджеры). Выявление и отключение тарификации для такого типа трафика также реализуется посредством технологии DPI.
3) Таргетирование рекламы: интернет-провайдеры могут заключать выгодные контракты с маркетинговыми агентствами, передавая им данные об интересах и предпочтениях своих пользователей. Подобную аналитику проще всего проводить за счет изучения интернет-приложений и веб-сервисов, которыми пользуются клиенты провайдера, с помощью DPI-технологий.
4) Кибербезопасность и обеспечение контролируемого интернет-доступа на рабочем месте: технология DPI помогает заблокировать доступ к вредоносным и фишинговым сайтам, ограничить интернет-соединения потенциально опасного или нежелательного ПО (например, BitTorrent или Dropbox), обеспечить продуктивность работы сотрудников за счет блокирования соцсетей и мессенджеров в корпоративной сети, выявить потенциальные утечки данных и аномальную сетевую активность хостов.
5) Обеспечение выполнения требований законодательства в части доступа к интернет-сайтам: в ряде стран (например, в Китае или ОАЭ) интернет значительно ограничен по требованиям местного законодательства, поэтому интернет-провайдеры в этих странах обязаны блокировать доступ к различным веб-ресурсам, соцсетям, мессенджерам, онлайн-играм, стриминговым сервисам и т.д. - это также реализуется за счет применения технологии DPI. В российском законодательстве доступ к интернет-ресурсам регулируется в том числе нормами следующих Федеральных законов:
- №149-ФЗ «Об информации, информационных технологиях и о защите информации» от 27.07.2006 г.;
- №139-ФЗ "О внесении изменений в Федеральный закон «О защите детей от информации, причиняющей вред их здоровью и развитию» и отдельные законодательные акты Российской Федерации от 28.07.2012 г. (закон о создании Единого реестра запрещённых сайтов);
- №90-ФЗ «О внесении изменений в Федеральный закон «О связи» и Федеральный закон «Об информации, информационных технологиях и о защите информации» от 01.05.2019 г. (закон о суверенном Рунете).
Решения, реализующие DPI-технологию, как правило, представляют собой высокопроизводительные программно-аппаратные комплексы, которые интегрируются с основным сетевым оборудованием. Принцип работы DPI-устройств следующий:
1) DPI-устройство устанавливается либо в пассивном режиме (через SPAN-порт или оптический сплиттер), либо в активном («в линию», между BRAS-маршрутизатором и пограничным маршрутизатором). Соответственно, в пассивном режиме DPI-система сможет только выявить попытку доступа к интернет-ресурсу постфактум и заблокировать её за счет отправки клиенту сообщения типа «HTTP 302» (с редирект-ссылкой на сообщение о блокировке) или пакета «TCP Reset» якобы от имени запрошенного им сайта. В активном режиме выявление и блокирование запрещенного трафика происходит «на лету».
2) Решение DPI проходит по заголовкам полученного сэмпла трафика: определяются IP-адреса источника и назначения, выявляются используемые протоколы транспортного/сеансового/представительского/прикладного уровней, проводится анализ некоторых значимых полей заголовков. Некоторые веб-приложения, которые не используют обфускацию (метод сокрытия присутствия в трафике), могут быть легко выявлены уже на этом этапе.
3) Выполняется детальный анализ пакета на прикладном уровне с помощью одной из следующих техник:
- Контентный поиск: DPI-решение получает доступ к машиночитаемым данным в сетевом пакете и с помощью регулярных выражений пытается найти в них характерные признаки (последовательности символов);
- Сигнатурный анализ: по аналогии с IDS/IPS-системами, устройство DPI может использовать сигнатуры для определения известного вредоносного или запрещенного трафика - это быстро, но не всегда эффективно против новых версий различных протоколов и новых сэмплов вредоносного ПО;
- Эвристический анализ: на основе данных о предыдущих соединениях и характерных признаках различных сетевых протоколов, информации о размере и структуре пакета и его содержимом DPI-устройство может сделать предположение о сетевой активности того или иного веб-приложения, вредоносности или легитимности трафика;
- Поведенческий и статистический анализ: на основе накопленной информации о характерных паттернах типов трафика и трендов делается вывод о принадлежности трафика тому или иному веб-приложению/сервису.
4) Если трафик зашифрован (а это встречается в подавляющем большинстве случаев), то без его дешифрования для анализа могут применяться методы машинного обучения, включая деревья решений, свёрточные и рекуррентные нейронные сети.
5) В результате глубокого анализа трафика DPI-решение выносит вердикт: заблокировать или разрешить трафик, применить ограничение скорости, отправить уведомление администратору или в SIEM-систему о возможном нарушении или потенциальной вредоносной активности. Кроме того, в DPI-устройствах может быть заложен механизм отказоустойчивости (безопасного разблокирования): если не удалось проанализировать веб-запрос, а запрашиваемый веб-ресурс не был определен как вредоносный или интернет-трафик не был категорирован как подозрительный, то доступ предоставляется. Однако, в некоторых компаниях DPI-решения могут быть настроены в режиме «блокировать всё, что явно не разрешено/не удалось определить».
Кроме описанного процесса, для DPI-систем характерны следующие особенности:
1) Доступ к запрещенным и потенциально вредоносным ресурсам может быть заблокирован на основе анализа DNS-запроса - такой запрос передаётся в незашифрованном виде, поэтому DPI-устройство может его перехватить и самостоятельно сгенерировать ответ на него, выдав IP-адрес сайта-заглушки, например. Анализ DNS-трафика широко использовался для выявления вредоносного ПО - достаточно было создать список вредоносных доменов и выявлять попытки DNS-разрешения их имен от инфицированных хостов. Однако, распространение технологий защиты DNS-трафика (DNS-over-HTTPS, DoH / DNS-over-TLS, DoT / DNS-over-QUIC, DoQ / DNSSEC) обеспечило не только повышенную приватность пользователей, но и лишило ИБ-специалистов возможности проводить проверку DNS-трафика.
2) До повсеместного внедрения защищенного протокола HTTPS у DPI-решений была возможность анализировать открытый HTTP-трафик и применять политики безопасности (ограничивать скорость или блокировать доступ). С развитием HTTPS-шифрования решения DPI стали ориентироваться либо на поле SNI (Server Name Indication - запрашиваемое имя интернет-хоста), либо на свойства TLS-сертификата, который передается клиенту сервером для установки защищенного соединения. И поле SNI, и TLS-сертификат сервера содержат в открытом виде имя домена, к которому пользователь пытается получить доступ - и DPI может ограничить скорость этого сетевого соединения или заблокировать доступ к этому ресурсу. Однако, описанным методам глубокого анализа трафика мешает планомерное внедрение методов обеспечения приватности интернет-пользователей - в частности, обеспечение шифрования поля SNI за счет расширения eSNI (encrypted SNI, зашифрованное имя запрашиваемого интернет-хоста), использование TLS-расширения ECH (Encrypted Client Hello), а также постепенное внедрение протокола TLS версии 1.3, в котором TLS-сертификат сервера передается уже в зашифрованном виде.
3) В корпоративных инфраструктурах пользователям может быть установлен цифровой сертификат, выданный внутренним центром сертификации - с его помощью может быть реализовано расшифрование пользовательского HTTPS-трафика через проведение санкционированной MitM-инспекции. Однако, активно внедряемая технология Certificate Transparency позволяет выявлять такие подмены, что может сделать подобную TLS-инспекцию невозможной.
4) Также в корпоративных инфраструктурах могут применяться Downgrade-техники для легитимного понижения уровня шифрования соединений (например, с TLS 1.3 до TLS 1.2) для обеспечения легитимной TLS-инспекции. Также могут применяться техники "SSL/HTTPS stripping", которые, однако, будут неэффективны при настроенной на веб-сервере HSTS-политике и при работе интернет-браузера пользователя в режиме «только HTTPS-соединения».
5) В случае, если никакие более продвинутые способы контроля трафика не срабатывают, DPI-решение может ограничивать сетевой трафик по IP-адресу и определенному порту (т.е. отработать в режиме stateful-файерволла), однако в этом случае под блокировку могут попасть и легитимные веб-ресурсы, которые находятся на том же самом IP.
Современные коммерческие DPI-решения позволяют досконально анализировать интернет-трафик на всех уровнях модели OSI, распознают веб-трафик до 10 тысяч различных приложений и протоколов, позволяют добавлять собственные правила и сигнатуры, проводить сетевую аналитику, а также интегрироваться с решениями классов IDS/IPS, NTA, NDR, SIEM, SOAR. Кроме того, есть и Open Source-решения для DPI-анализа: проект nDPI позволяет реализовать глубокую инспекцию трафика и попутно ознакомиться с характерными признаками различных сетевых протоколов, которые он позволяет определять.