Эта статья объясняет, как Cato автоматически блокирует фронтирование доменов, непрерывно переоценивая истинное имя хоста на этапах инсекции DNS, TLS и HTTP. Это гарантирует, что скрытый трафик Command-and-Control (CnC) будет немедленно обнаружен и заблокирован.
Фронтирование доменов — это техника, используемая злоумышленниками для маскировки вредоносного трафика под легитимное общение. Оно эксплуатирует, как HTTPS и сети доставки контента (CDN) обрабатывают имена доменов. Во время стандартного HTTPS соединения на разных этапах видны два идентификатора домена:
- SNI (Индикация имени сервера): отправляется в открытом виде во время рукопожатия TLS, указывая предполагаемое имя хоста, к которому клиент собирается подключиться
- Заголовок Host: отправляется позже в зашифрованном HTTP-запросе, указывая фактический домен, к которому происходит доступ
С фронтированием доменов злоумышленники намеренно выводят эти два поля из согласия, например, используя безвредный домен в SNI (например, example.com) и вредоносный в заголовке Host (например, malicious-cnc.com). Это позволяет трафику Command-and-Control (CnC) выглядеть, как будто он предназначен для легитимной службы, часто скрытой за крупными облачными или CDN провайдерами.
В отличие от других решений, которые требуют специальных правил или обновлений для обработки фронтирования доменов, архитектура Cato по своей природе обнаруживает и блокирует попытки фронтирования доменов. Это осуществляется путем непрерывного переоценки истинной идентификации потока по мере поступления новой информации. (Для получения дополнительной информации см. Понимание потока пакетов с архитектурой Cato SPACE, который объясняет этот динамический процесс переоценки).
Cato использует концепцию единообразного имени хоста, динамически обновляемого идентификатора, представляющего истинное назначение потока. Этот идентификатор уточняется на каждом этапе инспекции:
- На этапе разрешения DNS Cato определяет DNAME, домен, ассоциированный с IP-адресом назначения
- Во время рукопожатия TLS Cato наблюдает индикацию имени сервера (SNI), которая показывает имя хоста, к которому клиент пытается подключиться
- После инспекции TLS, как только зашифрованный трафик расшифрован, Cato может видеть заголовок HTTP Host, раскрывающий фактический домен, к которому осуществляется доступ
Cato переоценивает единообразное имя хоста на каждом из этих этапов. Если домен заголовка Host конфликтует или отличается от оригинального SNI, Cato воспринимает его как новую информацию и запускает переоценку в обоих движках Брандмауэра (FW) и Системы предотвращения вторжений (IPS).
Это означает, что оба продукта эффективно повторно применяются с новым контекстом имени хоста. Если вновь обнаруженный хост вредоносный (т. е. настроен на блокировку Брандмауэром или включен в сигнатуру блокировки IPS), Cato блокирует его немедленно, даже если оригинальный SNI и IP-адрес назначения выглядели как безвредные.
Этот многоуровневый осмотр гарантирует, что каналы CnC, пытающиеся скрыться за доверенными доменами, будут заблокированы, как только истинный пункт назначения будет раскрыт.
Чтобы проверить защиту Cato от фронтирования доменов, вы можете воспроизвести процесс обнаружения самостоятельно:
- Создать правило межсетевого экрана: Убедитесь, что у вас есть правило межсетевого экрана, настроенное для блокировки анонимайзеров (или создайте его, если оно ещё не создано).
-
Отправить тестовый запрос: выполните следующую команду curl:
curl -v https://example.com -H 'Хост: expressvpn.com'Эта команда блокируется Брандмауэром.
-
Проверить блокировку: В CMA проверьте страницу События под попаданиями правил межсетевого экрана, чтобы подтвердить блокировку. В атрибутах событий поле IP-адрес назначения является IP-адресом example.com, а поле Имя домена обновляется доменом, который последний раз появился в заголовке HTTP Host: expressvpn.com.
По желанию: Вы также можете захватить трафик в Wireshark (если он отправляется в открытом виде, а не через HTTPS), чтобы визуализировать заголовок Host и подтвердить событие блокировки.
После применения конфигурации вы можете проверить поведение, выполнив следующую команду:curl -v https://chatgpt.com -H 'Хост: echo.free.beeceptor.com'
Эти шаги предоставляют прозрачный способ наблюдения, как Cato нейтрализует попытки фронтирования доменов через процесс переоценки после осмотра.
Ниже приведен пример захвата Wireshark, показывающий потоки DNS и HTTP из теста:
Он показывает запрос DNS к example.com, за которым следует HTTP-запрос, где заголовок Host указывает на expressvpn.com. Ответ HTTP возвращает 403 Запрещено, подтверждая, что Cato успешно заблокировал запрос с фронтированием домена.
Фронтирование доменов — это техника, используемая для сокрытия вредоносной связи за легитимными доменами. В то время как некоторые решения испытывают трудности с определением трафика, скрывающегося за легитимными доменами, архитектура Cato с переоценкой единообразного имени хоста и повторной проверкой двумя двигателями по своей природе блокирует эти попытки. Постоянно обновляя информацию SNI, заголовка Host и IP-адреса на разных этапах инспекции, Cato обеспечивает, что каналы CnC, маскирующиеся за доверенными доменами, никогда не проходят.
0 комментариев
Статья закрыта для комментариев.