Московский государственный университет имени М.В.Ломоносова
Опубликован: 28.11.2014 | Доступ: свободный | Студентов: 2716 / 474 | Длительность: 18:46:00
ISBN: 978-5-9556-0162-5
Лекция 4:

Технологии межсетевых экранов

3.1 Введение

Напомним, что в основу обеспечения безопасности локальных сетей и размещенных в них информационных систем должны быть положены следующие основные принципы:

  • Обеспечение информационной безопасности требует комплексного и целостного подхода. Информационная безопасность должна быть неотъемлемой частью системы управления в организации. Большое значение для обеспечения безопасности информационной системы имеют социальные факторы, а также меры административной, организационной и физической безопасности.
  • Информационная безопасность должна быть экономически оправданной.
  • Ответственность за обеспечение безопасности должна быть четко определена.
  • Безопасность информационной системы должна периодически анализироваться и переоцениваться.

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

Основной задачей межсетевого экрана является предотвращение нежелательного доступа в локальную сеть. Примером нежелательного доступа является нарушитель, который пытается осуществить незаконное проникновение в системы, доступные по сети. Он может просто получать удовольствие от взлома, а может стараться повредить информационную систему или внедрить в нее что-нибудь для своих целей. Например, целью хакера может быть получение номеров кредитных карточек, хранящихся в системе. Другим примером нежелательного доступа является размещение в вычислительной системе чего-либо, что воздействует на прикладные программы и сервисы, которые вычислительная система предоставляет своим пользователям.

Атакующий, желающий получить доступ в локальную сеть или к информационным системам, может преследовать следующие цели:

  • Получить доступ к информации с целью чтения или модификации хранящихся в системе данных.
  • Осуществить атаки на сервисы, чтобы помешать использовать их или изменить их функционирование.

Рассмотрим технологии предотвращения нежелательного доступа в локальную сеть и к информационным системам.

Сервисы безопасности, которые предотвращают нежелательный доступ, можно разбить на две категории:

Первая категория состоит из процедур входа, основанных на использовании разного рода аутентификаторов (паролей, аппаратных ключей, сертификатов и т.п.). Это позволяет разрешить доступ только законным пользователям. К этой категории относятся также различные межсетевые экраны (firewall), которые предотвращают атаки, основанные на использовании уязвимостей на различных уровнях стека протоколов TCP/IP.

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

Межсетевые экраны защищают компьютеры и сети от попыток несанкционированного доступа с использованием уязвимых мест, существующих в семействе протоколов ТСР/IP. Дополнительно они помогают решать проблемы безопасности, связанные с наличием уязвимостей в другом ПО, которое установлено на компьютерах в сети.

Межсетевые экраны являются аппаратно-программными устройствами или программами, которые регулируют поток сетевого трафика между сетями или хостами, имеющими различные требования к безопасности. Большинство межсетевых экранов расположено на границы сетевого периметра, и в первую очередь они предназначены для защиты внутренних хостов от внешних атак.

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

Межсетевые экраны пропускают или запрещают трафик, сравнивая его характеристики с шаблонами, заданными в политике межсетевого экрана.

Возможности фильтрования, выполняемого межсетевыми экранами, с начала 90-х годов существенно увеличились. Чаще всего возможности межсетевых экранов сравнивают по количеству уровней в стеке TCP/IP, которые они могут анализировать.

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

В данной главе:

  1. Рассмотрим основные понятия, связанные с межсетевыми экранами и политикой межсетевого экрана, на которой основывается обеспечение безопасности сети.
  2. Рассмотрим различные типы межсетевых экранов.
  3. Рассмотрим понятия, относящиеся к выбору, развертыванию и управлению межсетевым экраном и его функционального окружения.
  4. Рассмотрим также возможные подходы к созданию различных топологий сети с использованием межсетевых экранов.
  5. Рассмотрим дополнительные возможности межсетевых экранов, связанные с трансляцией адресов.

Сначала сделаем обзор стека протоколов TCP/IP и покажем, на каком уровне функционируют различные типы межсетевых экранов, такие, как пакетные фильтры, пакетные фильтры с анализом состояния и прикладные прокси. Обсудим достоинства и недостатки каждой из этих технологий.

Затем опишем различные типы окружения межсетевого экрана. Приведем примеры расположения межсетевых экранов и их взаимодей-ствий с другими инструментальными средствами безопасности. Также опишем дополнительные функции современных межсетевых экранов, такие как использование их в качестве конечных точек VPN, выполнение трансляции IP-адресов, фильтрации содержимого веб или e-mail.

Наконец рассмотрим принципы, используемые при администрировании межсетевых экранов и конфигурировании политики межсетевого экрана. Опишем типовую политику межсетевого экрана, которая может быть достаточной во многих случаях.

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

Для обеспечения максимально эффективной работы межсетевых экранов следует придерживаться следующих принципов:

Определить все требования, которые накладывает внешнее окружение на функционирование межсетевого экрана.

Необходимо определить топологию защищаемой сети, используемые транспортные протоколы (IPv4 или IPv6) и специфику защищаемых сервисов и типы технологий межсетевых экранов, которые наиболее эффективны в данном случае. Также следует помнить о производительности и об интеграции межсетевого экрана в существующую сетевую инфраструктуру и инфраструктуру безопасности. Необходимо учитывать требования к физическому окружению и к квалификации персонала, а также требования, которые могут возникнуть в дальнейшем, такие как переход на технологии IPv6 или внедрение VPN.

Создать политику межсетевого экрана, в которой определено, как следует обрабатывать входящий и исходящий трафик.

Необходимо выполнить анализ рисков и определить при каких условиях какому типу трафика разрешено проходить через межсетевой экран. Обычно весь входящий и исходящий трафик, который явно не разрешен политикой межсетевого экрана, должен быть запрещен. Это снижает риск атак и может уменьшить объем трафика в сети. В политике должно быть определено, как межсетевой экран обрабатывает входящий и исходящий трафик для конкретных IP-адресов, диапазонов адресов, протоколов, приложений и типов содержимого.

Разработать набор правил межсетевого экрана, которые реа-лизуют политику безопасности в организации и обеспечивают максимальную производительность межсетевого экрана. Проанализировать производительность межсетевого экрана.

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

Управлять архитектурой, политиками, ПО и другими компонентами межсетевого экран следует в течение всего времени его функционирования.

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

3.2 Технологии межсетевых экранов

3.2.1 Стек протоколов

Межсетевые экраны являются аппаратно-программными устройствами или программами, управляющими потоком сетевого трафика между сетями или хостами, которые имеют различные требования к безопасности. Межсетевые экраны чаще всего используются при подключении сети к интернету, но они могут применяться и для разграничения трафика внутри одной организации. Например, можно установить межсетевой экран, чтобы ограничить соединения с внутренней подсетью, в которой обрабатываются конфиденциальные данные.

Классической моделью, описывающей принципы сетевого взаимодействия, является модель OSI (Open Systems Interconnection). Данная модель описывает сетевое взаимодействие как набор вложенных друг в друга уровней. Данные протоколов более высокого уровня расположены в теле протоколов более низкого уровня. Каждый уровень выполняет определенные функции, для которых разработаны специальные протоколы. В модели OSI определено семь уровней.

Таблица 3.1.
Уровень 7 Прикладной уровень
Уровень 6 Представительский уровень
Уровень 5 Сеансовый уровень
Уровень 4 Транспортный уровень
Уровень 3 Сетевой уровень
Уровень 2 Канальный уровень
Уровень 1 Физический уровень

Стек протоколов TCP/IP состоит из четырех уровней.

Таблица 3.2.
Уровень стека протоколов Примеры протоколов
Прикладной уровень Обеспечивает взаимодействие пользовательских приложений с сетью. Протоколы: HTTP, FTP, TFTP. DNS, SMTP, Telnet, SNMP и т.п.
Транспортный уровень Обеспечивает передачу данных и коррекцию ошибок. Протоколы: TCP, UDP и т.п.
Сетевой уровень Выполняет адресацию и маршрутизацию. Протоколы: IP, OSPF, ICMP, IGMP и т.п.
Канальный уровень Упаковывает данные в стандартные кадры для передачи через физический уровень и обеспечивает проверку и коррекцию ошибок. Протоколы: Ethernet, PPP и т.п. На этом уровне работает ARP.

Канальный уровень (также называемый Data Link уровень) обеспечивает взаимодействие компонентов физической сети. Канальный уровень представляет собой реальную аппаратуру физического соединения и физическую среду, такую как Ethernet. Это уровень, который обычно называется локальной сетью или LAN. Это первый уровень, обладающей возможностью адресации, с помощью которой можно идентифицировать отдельный хост. Адреса назначаются на сетевые интерфейсы и называются МАС (Media Access Control) адресами. Ethernet-адрес, принадлежащий Ethernet-карте, является примером МАС-адреса. Межсетевые экраны редко имеют дело с данными на этом уровне. Блок данных, передаваемый на канальном уровне, называют кадром.

Сетевой уровень (также называемый IP-уровнем) маршрутизирует пакеты между локальными сетями. IPv4 является основным протоколом сетевого уровня для TCP/IP. Другими часто используемыми протоколами сетевого уровня являются IPv6 и IGMP. Данный уровень отвечает за доставку пакетов между отдельными локальными сетями, соединенными маршрутизаторами. Такие сети часто обозначаются WAN (Wide Area Network). Адреса данного уровня называются IP-адресами; они обычно являются уникальными, но при определенных обстоятельствах, например, при трансляции сетевых адресов (Network Address Translation – NAT), возможны ситуации, когда различные физические системы имеют один и тот же IP-адрес. Блок данных, передаваемый на сетевом уровне, называют дейтаграммой.

Транспортный уровень предоставляет сервисы, ориентированные на соединение, которые используются для передачи данных между сетями. Часть протоколов (а именно ТСР) могут гарантировать надежность соединения. Примерами протоколов транспортного уровня являются ТСР и UDP. На транспортном уровне возникает понятие сессии как потока данных между двумя приложениями. Для сессии определено понятие портов, которые являются конечными точками сессии: номер порта источника опре-деляет конечную точку коммуникационной сессии на исходной системе; номер порта назначения определяет конечную точку коммуникационной сессии на системе назначения. Хост может иметь с другими хостами практически любое число сессий на транспортном уровне.

Прикладной уровень посылает и получает данные конкретных приложений, таких как DNS, HTTP, SMTP. Прикладной уровень сам может состоять из нескольких подуровней. Например, SMTP или НТТР могут инкапсулировать другие форматы, такие как HTML.

Межсетевые экраны анализируют данные одного или нескольких уровней. Считается, что чем больше уровней анализирует межсетевой экран, тем более совершенным и эффективным он является. Чем большее число уровней может быть проанализировано, тем более точная и тщательная проверка может быть выполнена. Межсетевые экраны, которые понимают прикладной уровень, потенциально могут анализировать уязвимости на уровне приложения и предоставлять сервисы, ориентированные на конечного пользователя, например, выполнять аутентификацию пользователя и записывать в логи события, касающиеся конкретного пользователя.

Современные межсетевые экраны функционируют на любом из перечисленных уровней. Существует несколько типов технологий межсетевых экранов. Одним из способов сравнения возможностей межсетевых экранов является анализ уровней стека протоколов TCP/IP, которые анализирует межсетевой экран.

Независимо от архитектуры, межсетевой экран может предоставлять дополнительные сервисы. Эти сервисы включают трансляцию сетевых адресов (NAT), поддержку протокола динамической конфигурации хоста (DHCP), функции шифрования, тем самым являясь конечной точкой VPN-шлюза.

Многие межсетевые экраны также включают различные технологии фильтрации так называемого активного содержимого. Содержимое называется активным, потому что оно является кодом, который может быть выполнен на конечной системе. Например, при использовании таких технологий может быть выполнено сканирование файлов на наличие вирусов. Межсетевые экраны также применяются для фильтрации наиболее опасного активного содержимого, такого как Java, JavaScript и ActiveX. Или они могут быть использованы для фильтрации содержимого, соответствующего определенному образцу, или поиска ключевых слов с целью ограничения доступа к запрещенным сайтам или доменам.

3.2.2 Состояния ТСР-соединения

IP-протокол обеспечивает способ адресации источника и получателя. IP-протокол также имеет дело с фрагментацией и реассемблированием пакетов, которые затем передаются на транспортный уровень.

ТСР является надежным протоколом в сетях, основанных на коммутации пакетов, обеспечивая гарантированную доставку пакетов. Так как пакетные фильтры анализируют параметры ТСР-протокола, рассмотрим подробно этот протокол.

Каждый октет данных, передаваемый по соединению, имеет последовательный номер. В пакете указывается номер первого передаваемого октета. Пакет также содержит номер октета, который был получен отправителем данного пакета. При отправке пакет на стороне отправителя не отбрасывается, а помещается в очередь для возможной повторной передачи, если в течение определенного времени не будет получено подтверждение от противоположной стороны о получении данного пакета. Если подтверждение не получено при истечении этого времени, пакет передается повторно. Тем самым обеспечивается надежность соединения, т.е. гарантирование того, что все пакеты будут доставлены получателю.

Для идентификации начальной и конечной точек ТСР-соединения вводится понятие номера порта. Номера портов выбираются независимо для каждого ТСР-соединения, при этом они не обязательно должны быть уникальными. Пара (IP-адрес, порт) называется сокетом.

Каждый конец ТСР-соединения является либо клиентом, либо сервером. Соединение инициируется клиентом. Сервер ждет установления соединения от клиента, в этом случае говорят, что сервер слушает порт. ТСР-соединение может быть открыто либо в пассивном – сервером, либо в активном режиме – клиентом.

Сервер может использовать любые номера портов. Тем не менее определены некоторые базовые принципы назначения номеров портов. Существуют "хорошо известные" номера портов, которые обычно соответствуют определенным приложениям. При инициализации ТСР-сессии на стороне клиента открывается порт, номер которого в соответствии со спецификацией протокола ТСР должен быть в диапазоне от 1023 до 65535. Номер порта на стороне клиента может быть каждый раз разным.

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

Установление ТСР-соединения происходит с использованием так называемого "тройного рукопожатия". Соединение инициирует клиент, посылая пакет с установленным битом SYN. Сервер отвечает клиенту пакетом с установленными битами SYN и ACK. Сервер также передает начальный порядковый номер в поле Sequence Number. Наконец, клиент посылает серверу сообщение с установленным битом ACK, в поле Sequence Number указывает свой начальный номер, в поле Acknowledgement Number указывает полученный от сервера начальный порядковый номер, увеличенный на единицу.

В течение своего жизненного цикла соединение проходит через несколько состояний.

Состояния на стороне клиента:

  • CLOSED
  • SYN-SENT
  • ESTABLISHED
  • FIN-WAIT-1
  • CLOSE-WAIT
  • FIN-WAIT-2
  • CLOSING
  • LAST-ACK
  • CLOSED

Состояния на стороне сервера:

  • CLOSED
  • LISTEN
  • SYN-RECEIVED
  • ESTABLISHED
  • FIN-WAIT-1
  • CLOSE-WAIT
  • FIN-WAIT-2
  • CLOSING
  • TIME-WAIT
  • CLOSED

Состояние CLOSED является фиктивным, потому что оно представляет собой состояние, для которого не существует структур данных на стороне клиента и сервера, и, следовательно, не может существовать соединения.

LISTEN – состояние сервера, в котором он ожидает запрос от клиента на создание соединения.

SYN-SENT – состояние клиента, в котором он ожидает ответа от сервера после посылки запроса на создание соединения.

SYN-RECEIVED – состояние сервера, в котором он ожидает подтверждения после того, как и клиент, и сервер получили и послали запрос на создание соединения.

ESTABLISHED – состояние как клиента, так и сервера, которое представляет собой открытое соединение: полученные данные доставляются на прикладной уровень. Обычное состояние при пересылке данных по соединению.

Инициатором закрытия соединения может быть как клиент, так и сервер.

FIN-WAIT-1 – состояние инициатора закрытия соединения, при котором данной стороной был послан пакет с флагом FIN. Инициатор закрытия соединения ожидает подтверждения на запрос закрытия.

CLOSE-WAIT – состояние отвечающей стороны закрытия соединения, при котором было послано подтверждение ACK на запрос закрытия (FIN). При этом канал становится симплексным: передача возможна только в одном направлении – от отвечающей стороны закрытия соединения, т.е. от того, кто послал подтверждение ACK.

FIN-WAIT-2 – состояние инициатора закрытия соединения, при котором было получено подтверждение ACK запроса закрытия соединения от удаленной стороны. После этого данная сторона ждет получения пакета с установленным флагом FIN. При получении пакета с флагом FIN канал считается окончательно разрушенным.

LAST-ACK – состояние отвечающей стороны закрытия соединения, при котором послано подтверждение (пакет с установленным флагом FIN) завершения соединения, ранее посланного удаленной стороне.

CLOSING – обе стороны инициировали закрытие соединения одновременно: после отправки пакета с флагом FIN инициатор закрытия получает пакет с флагом FIN.

TIME-WAIT – представляет собой ожидание в течение определенного времени, чтобы быть уверенным, что удаленная сторона получила подтверждение запроса на закрытие соединения.

ТСР-соединение переходит из одного состояния в другое в результате возникновения событий. Событиями являются вызовы функций OPEN, SEND, RECEIVE, CLOSE, ABORT и STATUS, входящие пакеты, содержащие флаги SYN, ACK, RST и FIN, а также таймауты.

3.2.3 Классификация межсетевых экранов

Межсетевое экранирование часто совмещают с другими технологиями, чаще всего с маршрутизацией. Многие технологии, часто связываемые с межсетевыми экранами, на самом деле являются частью других технологий. Например, трансляцию сетевых адресов (NAT) часто считают технологией межсетевых экранов, но на самом деле это является технологией маршрутизации. Многие межсетевые экраны также включают возможности фильтрования содержимого, необходимые для реализации политики, принятой в организации, которая необязательно связана с безопасностью. Некоторые межсетевые экраны предоставляют технологии систем обнаружения вторжений (IDS), которые могут реагировать на атаки.

Межсетевые экраны часто расположены на границы сетевого периметра. В этом случае можно говорить, что межсетевой экран имеет внешний и внутренний интерфейсы. Иногда эти интерфейсы называют соответственно незащищенным и защищенным. Однако говорить, что какой-то интерфейс является защищенным, а какой-то нет, не совсем корректно, потому что политика межсетевого экрана может быть определена в обоих направлениях. Например, можно определить политику, предотвращающую пересылку файлов определенного типа изнутри вовне сетевого периметра.

Фильтрование пакетов

Базовой возможностью межсетевого экрана является фильтрование пакетов. Первоначально межсетевые экраны были частью маршрутизаторов, обеспечивая управление доступом на основе адресов хостов и коммуникационных сессий. Эти устройства, также называемые межсетевыми экранами без анализа состояния, не поддерживали информацию о состоянии потока трафика, который проходит через межсетевой экран. Это означает, что они не могут определить, что несколько запросов принадлежат одной сессии. Фильтрование пакетов является основой большинства современных межсетевых экранов, хотя осталось немного пакетных фильтров, которые выполняют фильтрование без поддержки состояния. В отличие от более мощных фильтров, пакетные фильтры анализируют только заголовки сетевого и транспортного уровней, а не содержимое пакетов. Управление трафиком определяется набором директив, которые называются ruleset. Возможности фильтрования пакетов встроены в большинство ОС и устройств, выполняющих маршрутизацию. Самым типичным примером является маршрутизатор, в котором определены списки управления доступом.

Управление трафиком осуществляется на основе анализа следующей информации, содержащейся в пакете:

  • IP-адрес источника в пакете – адрес хоста, с которого пришел пакет.
  • IP-адрес получателя в пакете – адрес хоста, которому предназначен пакет.
  • Транспортный протокол, используемый для взаимодей-ствия хостов отправителя и получателя, такой как ТСР, UDP или ICMP.
  • Возможно некоторые характеристики коммуникационной сессии транспортного уровня, такие как порты источника и получателя (например, ТСР 80 для порта получателя и ТСР 1320 для порта источника).
  • Интерфейс, через который проходит пакет, и направление (входящий или исходящий).

Фильтрование входящего трафика еще называют входящим фильтрованием. Исходящий трафик также может фильтроваться, этот процесс называется исходящим фильтрованием. Исходящее фильтрование дает возможность ограничить внутренний трафик, например, блокируя использование внешних FTP-серверов или предотвращая атаки, которые могут запускаться изнутри на внешние цели.

Фильтры пакетов без поддержки состояния уязвимы для атак, связанных с особенностями TCP/IP. Например, многие такие пакетные фильтры не могут определить, что информация в сетевом адресе подделана или каким-то образом изменена, или что присутствует комбинация параметров, разрешенная стандартами, но которая использует уязвимости в конкретном приложении или ОС. Атаки подделки, такие как использование некорректных адресов в заголовках пакетов, могут дать возможность атакующему обойти контроль, выполняемый межсетевым экраном. Межсетевые экраны, которые выполняются на более высоких уровнях, могут препятствовать некоторым атакам, связанным с подделкой адресов, проверяя, что сессия установлена, или аутентифицируя пользователей перед тем, как разрешить прохождение трафика. В силу этого большинство межсетевых экранов, которые реализуют фильтрацию пакетов, также поддерживают некоторую информацию о состоянии для пакетов, проходящих через межсетевой экран.

В некоторых случаях полезно фильтровать фрагментированные пакеты. Фрагментация пакетов допускается спецификациями TCP/IP и в некоторых ситуациях бывает необходима. Однако фрагментация пакетов делает определение некоторых атак более трудной, так как атака размещается во фрагментированных пакетах. Например, некоторые сетевые атаки используют пакеты, которые в нормальных ситуациях не могут появиться, например, посылая определенные фрагменты пакета, но не посылая первый фрагмент, или посылая фрагменты пакета, которые перекрывают друг друга. Чтобы предотвратить использование фрагментированных пакетов для выполнения атак, межсетевой экран можно сконфигурировать таким образом, чтобы блокировать фрагментированные пакеты.

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

Некоторые межсетевые экраны могут дефрагментировать пакеты перед тем, как пересылать их во внутреннюю сеть. Следует понимать, что это требует дополнительных ресурсов самого межсетевого экрана, особенно памяти. Такая функциональность должна использоваться очень обоснованно, иначе межсетевой экран легко может стать объектом DoS-атаки. Выбор того, что делать с фрагментированным пакетом: отбросить, реассемблировать или пропустить, должен являться компромиссом между необходимой интероперабельностью и полной безопасностью сети.

Пакетные фильтры могут быть реализованы в следующих компонентах сетевой инфраструктуры:

  • Пограничные маршрутизаторы.
  • ОС.
  • Персональные межсетевые экраны.

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

Пример топологии сети с использованием пакетного фильтра и DMZ

увеличить изображение
Рис. 3.1. Пример топологии сети с использованием пакетного фильтра и DMZ

На рисунке показана топология сети, в которой пограничный маршрутизатор с возможностями пакетного фильтра используется в качестве первой линии обороны. Маршрутизатор принимает пакеты от недоверяемой сети, например, интернет, выполняет контроль доступа в соответствии со своей политикой, например, блокирует SNMP, разрешает НТТР и т.п. Затем он передает пакеты более мощному межсетевому экрану для дальнейшего управления доступом и фильтрования данных на более высоких уровнях стека протоколов. На рисунке также показана промежуточная сеть между пограничным маршрутизатором и внутреннем межсетевым экраном, называемая DMZ-сетью.

Порт на стороне сервера имеет фиксированный номер. На стороне клиента открывается порт, номер которого может быть каждый раз разным.

Необходимость открывать порты с «большими» номерами на стороне клиента

увеличить изображение
Рис. 3.2. Необходимость открывать порты с «большими» номерами на стороне клиента
Набор правил пакетного фильтра без анализа состояния

увеличить изображение
Рис. 3.3. Набор правил пакетного фильтра без анализа состояния

В этом случае пакетный фильтр должен разрешать входящий трафик для всех таких портов "с большими номерами", чтобы клиент, инициализировавший соединение, мог получать возвращаемые сервером пакеты. Открытие портов создает риск несанкционированного проникновения в локальную сеть.

Преимущества пакетных фильтров:

  • Основным преимуществом пакетных фильтров является их скорость.
  • Пакетный фильтр прозрачен для клиентов и серверов, так как не разрывает ТСР-соединение.

Недостатки пакетных фильтров:

  • Так как пакетные фильтры не анализируют данные более высоких уровней, они не могут предотвратить атаки, которые используют уязвимости, специфичные для приложения. Например, пакетный фильтр не может блокировать конкретные команды приложения; если пакетный фильтр разрешает данный трафик для приложения, то все операции, определенные в данном приложении, будут разрешены.
  • В логах пакетного фильтра содержится информация только о параметрах сетевого и транспортного уровней. Логи пакетного фильтра обычно содержат ту же информацию, которая использовалась при принятии решения о возможности доступа (адрес источника, адрес назначения, тип трафика и т.п.).
  • Большинство пакетных фильтров не поддерживают возможность аутентификации пользователя. Данная возможность обеспечивается межсетевыми экранами, анализирующими более высокие уровни.
  • Пакетные фильтры обычно уязвимы для атак, которые используют такие уязвимости ТСР/IP, как подделка (spoofing) сетевого адреса. Многие пакетные фильтры не могут определить, что в сетевом пакете изменена адресная информация транспортного уровня. Spoofing-атаки обычно выполняются для обхода управления доступом, осуществляемого межсетевым экраном.
  • Пакетные фильтры трудно конфигурировать. Можно случайно переконфигурировать пакетный фильтр для разрешения типов трафика, источников и назначений, которые должны быть запрещены.
  • Так как номер порта клиента может быть любым, так называемым "большим номером" (с 1023 до 65535), то на межсетевом экране приходится открывать все порты с номерами больше 1023.

Следовательно, пакетные фильтры больше всего подходят, если требуется большая пропускная способность, а создание подробных логов и аутентификация пользователя не столь важны.

Практически все современные межсетевые экраны включают большее количество возможностей, сейчас трудно найти межсетевой экран, который имеет возможности только пакетного фильтра. Примером может являться маршрутизатор, осуществляющий проверку списка контроля доступа для управления сетевым трафиком. Высокая производительность пакетных фильтров также способствует тому, что они реализуются в устройствах, обеспечивающих высокую доступность и особую надежность; некоторые производители предлагают аппаратные и программные решения как высоко доступные, так и особо надежные. Также большинство SOHO (Small Office Home Office) устройств межсетевых экранов и межсетевых экранов, встроенных по умолчанию в ОС, предоставляют возможности пакетных фильтров.

Пакетные фильтры с анализом состояния

Анализ состояния добавляет возможность отслеживания состояния соединения и блокировку пакетов, которые не соответствуют ожидаемому состоянию. Для этого выполняется анализ данных транспортного уровня. Также как и при простом фильтровании пакетов межсетевой экран анализирует содержимое сетевого уровня на соответствие правилам. Но в отличие от фильтрации пакетов, инспекция состояния отслеживает историю каждого соединения, используя для этого таблицу состояний. Хотя детали записей таблицы состояний во многом зависят от конкретной реализации межсетевого экрана, обычно они содержат IP-адрес источника, IP-адрес получателя и информацию о состоянии соединения.

В ТСР-протоколе существуют три основных состояния – соединение устанавливается, используется и завершается. Причем в последнем случае любая из конечных точек может запросить завершение соединения. При анализе состояния межсетевой экран проверяет определенные значения в ТСР-заголовках. Для каждого полученного пакета ищется запись в таблице состояний и определяется, что флаги в заголовках пакета соответствует ожидаемому состоянию. Например, атакующий может создать пакет, в заголовке которого указано, что он является частью установленного соединения, в надежде, что он пройдет через межсетевой экран. Если межсетевой экран использует анализ состояний, то он поймет, что пакет не является частью установленного соединения, так как в таблице отсутствует соответствующая запись, и отбросит такой пакет.

В простейшем случае межсетевой экран пропускает любой пакет, если он считает, что пакет является частью открытого соединения (или соединения, которое еще не полностью установлено). Хотя многие межсетевые экраны точно могут определить состояние таких протоколов, как ТСР и UDP, и они могут блокировать пакеты, которые не соответствуют состоянию протокола. Например, часто межсетевой экран проверяет такие параметры, как последовательные номера ТСР, и отбрасывает пакеты, номера которых вне ожидаемого диапазона. Если межсетевой экран предоставляет сервис NAT, то информация NAT часто также содержится в таблице состояний.

Ниже приведен пример таблицы состояний. Если хост из внутренней сети пытается соединиться с хостом за межсетевым экраном, то первым делом проверятся, разрешено ли это набором правил межсетевого экрана. Если это разрешено, то в таблицу состояний добавляется запись, которая указывает, что инициализируется новое соединение. После завершения трехшагового рукопожатия ТСР состояние соединения будет изменено на "Установлено" ("Establish" или "TCP_OPEN", в зависимости от реализации), и всему последующему трафику, который соответствует данной записи, будет разрешено проходить через межсетевой экран.

Пример таблицы состояний пакетного фильтра с анализом состояний

увеличить изображение
Рис. 3.4. Пример таблицы состояний пакетного фильтра с анализом состояний

Так как некоторые протоколы, в частности UDP, не поддерживают состояния, и для них не существует инициализации, установления и завершения соединения, то для них невозможно определить состояние на транспортном уровне как для ТСР. Для этих протоколов межсетевые экраны с поддержкой состояния имеют возможность только отслеживать IP-адреса и порты источника и получателя. Так например ответ DNS от внешнего источника будет пропускаться только в том случае, если межсетевой экран до этого видел соответствующий DNS-запрос от внутреннего хоста. Так как межсетевой экран не имеет возможности определить завершение сессии, запись удаляется из таблицы состояний после заранее сконфигурированного таймаута. Межсетевые экраны прикладного уровня, которые умеют распознавать DNS поверх UDP, завершают сессию после того, как получен DNS-ответ.

Пример таблицы состояний для протокола UDP

увеличить изображение
Рис. 3.5. Пример таблицы состояний для протокола UDP

В сущности, межсетевые экраны с анализом состояния добавляют в пакетный фильтр понимание логики протокола транспортного уровня. Межсетевые экраны с анализом состояния разделяют сильные и слабые стороны пакетных фильтров, но всё же межсетевые экраны с анализом состояния обычно считаются более безопасными, чем пакетные фильтры.

Правила пакетного фильтра с анализом состояний

увеличить изображение
Рис. 3.6. Правила пакетного фильтра с анализом состояний

Преимущества межсетевых экранов с анализом состояния:

  • Разрешают прохождение пакетов только для установленных соединений;
  • Прозрачны для клиентов и серверов, так как не разрывают ТСР-соединение.

Недостатки межсетевых экранов с анализом состояния:

  • Реально используются только в сетевой инфраструктуре TCP/IP. Хотя надо отметить, что межсетевые экраны с анализом состояния можно реализовать в других сетевых протоколах тем же способом, что и пакетные фильтры.
Александр Косенков
Александр Косенков

В материале Триада безопасной ИТ-инфраструктуры – Конфиденциальность, Целостность в качестве основных технологий обеспечения отказоустойчивости для данных указаны

Защита с помощью RAID.

Шифрование данных и управление ключом.

Стратегии создания копий и восстановления.

Каким образом шифрование обеспечивает отказоустойчивость?

Евгений Шахов
Евгений Шахов

Страница http://www.intuit.ru/studies/courses/14250/1286/lecture/24237

содержит "Интерфейс wan1 имеет IP-адрес 10.6.10.62 и соединен с подсетью 10.6.10.0/28 со шлюзом провайдера, который обеспечиваетвыход в интернет и имеет IP-адрес 10.6.10.3." - что не верно, так как подсеть 10.6.10.0/28 имеет диапазон IP-адресов 10.6.10.1-14, интерфейс wan1 с IP-адресом 10.6.10.62 не "попадает" в указанные пределы.