Понятие межсетевого экрана
Межсетевой экран или сетевой экран — комплекс аппаратных или программных средств, осуществляющий контроль и фильтрацию проходящих через него сетевых пакетов на различных уровнях модели OSI в соответствии с заданными правилами.
Основной задачей сетевого экрана является защита компьютерных сетей или отдельных узлов от несанкционированного доступа. Также сетевые экраны часто называют фильтрами, так как их основная задача — не пропускать (фильтровать) пакеты, не подходящие под критерии, определённые в конфигурации (рис.6.1).
Межсетовой экран имеет несколько названий. Рассмотрим их.
Брандмауэр (нем. Brandmauer) — заимствованный из немецкого языка термин, являющийся аналогом английского firewall в его оригинальном значении (стена, которая разделяет смежные здания, предохраняя от распространения пожара). Интересно, что в области компьютерных технологий в немецком языке употребляется слово «firewall».
Файрвол, файервол, фаервол — образовано транслитерацией английского термина firewall, эквивалентного термину межсетевой экран, в настоящее время не является официальным заимствованным словом в русском языке.
Рис.6.1 Типовое размещение МЭ в корпоративной сети
Есть два четко различающихся типа межсетевых экранов, повседневно используемых в современном интернет. Первый тип правильнее называть маршрутизатор с фильтрацией пакетов. Этот тип межсетевого экрана работает на машине, подключенной к нескольким сетям и применяет к каждому пакету набор правил, определяющий переправлять ли этот пакет или блокировать. Второй тип, известный как прокси сервер, реализован в виде демонов, выполняющих аутентификацию и пересылку пакетов, возможно на машине с несколькими сетевыми подключениями, где пересылка пакетов в ядре отключена.
Иногда эти два типа межсетевых экранов используются вместе, так что только определенной машине (известной как защитный хост (bastion host)) позволено отправлять пакеты через фильтрующий маршрутизатор во внутреннюю сеть. Прокси сервисы работают на защитном хосте, что обычно более безопасно, чем обычные механизмы аутентификации.
Межсетевые экраны имеют различный вид и размер, и иногда это просто набор нескольких различных компьютеров. Здесь под межсетевым экраном подразумевается компьютер или компьютеры между доверенными сетями (например, внутренними) и недоверенными (например, Интернетом), которые проверяют весь проходящий между ними трафик. Эффективные межсетевые экраны обладают следующими свойствами:
· Все соединения должны проходить через межсетевой экран. Его эффективность сильно снижается, если есть альтернативный сетевой маршрут, — несанкционированный трафик будет передан в обход межсетевого экрана.
· Межсетевой экран пропускает только авторизованный трафик. Если он не способен четко дифференцировать авторизованный и неавторизованный трафик, или если он настроен на пропуск опасных или ненужных соединений, то польза от него значительно снижается. При сбое или перегрузке межсетевой экран должен всегда переключаться в состояние «отказ» или закрытое состояние. Лучше прервать соединения, чем оставить системы незащищенными.
· Межсетевой экран должен противостоять атакам против самого себя, так как для его защиты не устанавливаются дополнительные устройства.
Межсетевой экран можно сравнить с замком на входной двери. Он может быть самым надежным в мире, но если дверь не заперта, злоумышленники смогут запросто ее открыть. Межсетевой экран защищает сеть от несанкционированного доступа, как замок — вход в помещение. Стали бы вы оставлять ценные вещи дома, если бы замок на входной двери был ненадежным?
Межсетевой экран - это лишь элемент обшей архитектуры безопасности. Однако он играет очень важную роль в структуре сети и, как любое другое устройство, имеет свои преимущества и недостатки.
Преимущества межсетевого экрана:
· Межсетевые экраны - это прекрасное средство реализации корпоративных политик безопасности. Их следует настраивать на ограничение соединений согласно мнению руководства по этому вопросу.
· Межсетевые экраны ограничивают доступ к определенным службам. Например, общий доступ к веб-серверу может быть разрешен, а к telnet и другим непубличным службам - запрещен. Большинство межсетевых экранов предоставляет селективный доступ посредством аутентификации.
· Цель применения межсетевых экранов вполне конкретна, поэтому не нужно искать компромисс между безопасностью и удобством использования.
· Межсетевые экраны - это отличное средство аудита. При достаточном объеме пространства на жестких дисках или при поддержке удаленного ведения журнала они могут заносить в журналы информации о любом проходящем трафике.
· Межсетевые экраны обладают очень хорошими возможностями по оповещению персонала о конкретных событиях.
Недостатки межсетевых экранов:
· Межсетевые экраны не обеспечивают блокировку того, что было авторизовано. Они разрешают установку обычных соединений санкционированных приложений, но если приложения представляют угрозу, межсетевой экран не сможет предотвратить атаку, воспринимая это соединение как авторизованное. Например, межсетевые экраны разрешают прохождение электронной почты на почтовый сервер, но не находят вирусы в сообщениях.
· Эффективность межсетевых экранов зависит от правил, на соблюдение которых они настроены. Правила не должны быть слишком лояльны.
· Межсетевые экраны не предотвращают атаки социального инжиниринга или атаки авторизованного пользователя, который умышленно и злонамеренно использует свой адрес.
· Межсетевые экраны не могут противостоять некачественным подходам к администрированию или некорректно разработанным политикам безопасности.
· Межсетевые экраны не предотвращают атаки, если трафик не проходит через них.[42]
Некоторые люди предсказывали конец эры межсетевых экранов, которые с трудом разграничивают санкционированный и несанкционированный трафик приложений. Многие приложения, например средства мгновенного обмена сообщениями, становятся все более и более мобильными и совместимыми с работой через многие порты. Таким образом, они могут действовать в обход межсетевого экрана через порт, открытый для другой авторизованной службы. Кроме того, все больше приложений предусматривают передачу трафика через другие авторизованные порты, доступные с наибольшей долей вероятности. Примерами таких популярных приложений являются HTTP-Tunnel (www.http-tunnel.com) и SocksCap (www.socks.permeo.com). Более того, разрабатываются приложения, специально предназначенные для обхода межсетевых экранов, например приложение удаленного контроля над компьютерами GoToMyPC (www.gotomypc.com).
Однако межсетевые экраны не сдаются без боя. Текущие релизы ПО от крупнейших производителей содержат усовершенствованные средства по предотвращению вторжений и возможности экранирования прикладного уровня. Такие межсетевые экраны выявляют и фильтруют несанкционированный трафик, например, приложений по мгновенному обмену сообщениями, пытающийся проникнуть через порты, открытые для других санкционированных служб. Кроме того, сейчас межсетевые экраны сопоставляют результаты функционирования с опубликованными стандартами протоколов и признаками различной активности (аналогично антивирусному ПО) для обнаружения и блокировки атак, содержащихся в передаваемых пакетах. Таким образом, они остаются основным средством зашиты сетей. Однако если защита приложений, обеспечиваемая межсетевым экраном, недостаточна или неспособна к корректному разграничению авторизованного и неавторизованного трафика, следует рассмотреть альтернативные компенсирующие методы безопасности.[43]
Межсетевым экраном может быть маршрутизатор, персональный компьютер, специально сконструированная машина или набор узлов, специально настроенный на защиту частной сети от протоколов и служб, которые могут злонамеренно использоваться вне доверенной сети.
Метод защиты зависит от самого межсетевого экрана, а также от политик или правил, которые на нем настроены. Сегодня используются четыре технологии межсетевых экранов:
· Пакетные фильтры.
· Прикладные шлюзы.
· Шлюзы контурного уровня.
· Устройства адаптивной проверки пакетов.[44]
Прежде чем изучать функции межсетевых экранов, рассмотрим пакет протоколов контроля передачи и Интернета (TCP/IP).
TCP/IP обеспечивает метод передачи данных с одного компьютера на другой через сеть. Задача межсетевого экрана - контроль над передачей пакетов TCP/IP между узлами и сетями.
TCP/IP — это набор протоколов и приложений, выполняющих отдельные функции в соответствии с конкретными уровнями модели взаимодействия открытых систем (OSI). TCP/IP осуществляет независимую передачу блоков данных через сеть в форме пакетов, и каждый уровень модели TCP/IP добавляет в пакет заголовок. В зависимости от используемой технологии межсетевой экран обрабатывает информацию, содержащуюся в этих заголовках, в целях контроля доступа. Если он поддерживает разграничение приложений как шлюзы приложений, то контроль доступа также может осуществляться по самим данным, содержащимся в теле пакета.
Контроль информационных потоков состоит в их фильтрации и преобразовании в соответствие с заданным набором правил. Поскольку в современных МЭ фильтрация может осуществляться на разных уровнях эталонной модели взаимодействия открытых систем (OSI), МЭ удобно представить в виде системы фильтров. Каждый фильтр на основе анализа проходящих через него данных, принимает решение – пропустить дальше, перебросить за экран, блокировать или преобразовать данные (рис.6.2).
Рис.6.2 Схема фильтрации в МЭ.
Неотъемлемой функцией МЭ является протоколирование информационного обмена. Ведение журналов регистрации позволяет администратору выявить подозрительные действия, ошибки в конфигурации МЭ и принять решение об изменении правил МЭ.
Классификация экранов
Выделяют следующую классификацию МЭ, в соответствие с функционированием на разных уровнях МВОС (OSI):
· Мостиковые экраны (2 уровень OSI).
· Фильтрующие маршрутизаторы (3 и 4 уровни OSI).
· Шлюзы сеансового уровня (5 уровень OSI).
· Шлюзы прикладного уровня (7 уровень OSI).
· Комплексные экраны (3-7 уровни OSI).
Рис.6.3 Модель OSI
Мостиковые МЭ
Данный класс МЭ, функционирующий на 2-м уровне модели OSI, известен также как прозрачный (stealth), скрытый, теневой МЭ. Мостиковые МЭ появились сравнительно недавно и представляют перспективное направление развития технологий межсетевого экранирования. Фильтрация трафика ими осуществляется на канальном уровне, т.е. МЭ работают с фреймами (frame, кадр). К достоинствам подобных МЭ можно отнести:
· Нет необходимости в изменении настроек корпоративной сети, не требуется дополнительного конфигурирования сетевых интерфейсов МЭ.
· Высокая производительность. Поскольку это простые устройства, они не требуют больших затрат ресурсов. Ресурсы требуются либо для повышения возможностей машин, либо для более глубокого анализа данных.
· Прозрачность. Ключевым для этого устройства является его функционирование на 2 уровне модели OSI. Это означает, что сетевой интерфейс не имеет IP-адреса. Эта особенность более важна, чем легкость в настройке. Без IP-адреса это устройство не доступно в сети и является невидимым для окружающего мира. Если такой МЭ недоступен, то, как его атаковать? Атакующие даже не будут знать, что существует МЭ, проверяющий каждый их пакет.
Фильтрующие маршрутизаторы
Маршрутизатор это машина, пересылающая пакеты между двумя или несколькими сетями. Маршрутизатор с фильтрацией пакетов запрограммирован на сравнение каждого пакета со списком правил, перед тем как решить, пересылать его или нет.
Packet-filtering firewall (МЭ с фильтрацией пакетов)
Межсетевые экраны обеспечивают безопасность сетей, фильтруя сетевые соединения по заголовкам TCP/IP каждого пакета. Они проверяют эти заголовки и используют их для пропуска и маршрутизации пакета к пункту назначения или для его блокировки посредством сброса или отклонения (т. е. сброса пакета и уведомления об этом отправителя).
Фильтры пакетов выполняют разграничение, основываясь на следующих данных:
· IP-адрес источника;
· IP-адрес назначения;
· используемый сетевой протокол (TCP, UDP или ICMP);
· исходный порт TCP или UDP;
· порт TCP или UDP назначения;
· тип сообщения ICMP (если протоколом является ICMP).
Хороший фильтр пакетов также может функционировать на базе информации, не содержащейся непосредственно в заголовке пакета, например, о том, на каком интерфейсе происходит получение пакета. По сути, фильтр пакетов содержит недоверенный, или «грязный» интерфейс, набор фильтров и доверенный интерфейс. «Грязная» сторона граничит с недоверенной сетью и первой принимает трафик. Проходя через нее, трафик обрабатывается согласно набору фильтров, используемому межсетевым экраном (эти фильтры называются правилами). В зависимости от них трафик либо принимается и отправляется далее через «чистый» интерфейс в пункт назначения, либо сбрасывается или отклоняется. Какой интерфейс является «грязным», а какой - «чистым», зависит от направления движения конкретного пакета (качественные фильтры пакетов действуют и для исходящего, и для входящего трафика).
Стратегии реализации пакетных фильтров различны, но есть основные методы, которыми следует руководствоваться.
· Построение правил - от наиболее конкретных до наиболее общих. Большинство фильтров пакетов осуществляет обработку с помощью наборов правил «снизу вверх» и останавливает ее, когда обнаруживается соответствие. Внедрение в верхнюю часть набора правил более конкретных фильтров делает невозможным сокрытие общим правилом специфичного правила далее по направлению к нижнему элементу набора фильтров.
· Размещение наиболее активных правил в верхней части набора фильтров. Экранирование пакетов занимает значительную часть процессорного времени, и. как уже говорилось ранее, фильтр пакетов прекращает обработку пакета, обнаружив его соответствие какому-либо правилу. Размещение популярных правил на первом или втором месте, а не на 30 или 31 позиции, экономит процессорное время, которое потребовалось бы для обработки пакета более чем 30 правилами. Когда требуется единовременная обработка тысяч пакетов, не следует пренебрегать экономией мощности процессора.
Определение конкретных и корректных правил фильтрации пакетов — очень сложный процесс. Следует оценить преимущества и недостатки пакетных фильтров. Приведем некоторые преимущества.
· Высокая производительность. Фильтрация может осуществляться с линейной скоростью, сравнимой с быстродействием современных процессоров.
· Окупаемость. Пакетные фильтры являются относительно недорогими или вовсе бесплатными. Большая часть маршрутизаторов снабжена возможностями по фильтрации пакетов, интегрированными в их операционные системы.
· Прозрачность. Действия пользователя и приложения не требуется корректировать, чтобы обеспечить прохождение пакетов через пакетный фильтр.
· Широкие возможности по управлению трафиком. Простые пакетные фильтры можно использовать для сброса очевидно нежелательного трафика на сетевом периметре и между различными внутренними подсетями (например, применять граничные маршрутизаторы для сброса пакетов с исходными адресами, соответствующими внутренней сети (речь идет о подмененных пакетах), «частным» IP-адресам (RFC 1918) и пакетам вешания).
Рассмотрим недостатки фильтров пакетов.
· Разрешены прямые соединения между узлами без доверия и доверенными узлами.
· Низкий уровень масштабируемости. По мере роста наборов правил становится все труднее избегать «ненужных» соединений. Со сложностью правил связана проблема масштабируемости. Если невозможно быстро сканировать набор правил для просмотра результата внесенных изменений, придется его упростить.
· Возможность открытия больших диапазонов портов. Из-за динамической природы некоторых протоколов необходимо открывать большие диапазоны портов для правильного функционирования протоколов. Наихудший случай здесь - протокол FTP. FTP требует входящего соединения от сервера к клиенту, и пакетным фильтрам потребуется открыть широкие диапазоны портов для разрешения такой передачи данных.
· Подверженность атакам с подменой данных. Атаки с подменой данных (спуфинг), как правило, подразумевают присоединение фальшивой информации в заголовке TCP/IP. Распространены атаки с подменой исходных адресов и маскировкой пакетов под видом части уже установленных соединений.
Шлюз сеансового уровня
Circuit-level gateway (Шлюз сеансового уровня) — межсетевой экран, который исключает прямое взаимодействие между авторизированным клиентом и внешним хостом. Сначала он принимает запрос доверенного клиента на определенные услуги и, после проверки допустимости запрошенного сеанса, устанавливает соединение с внешним хостом.
После этого шлюз просто копирует пакеты в обоих направлениях, не осуществляя их фильтрации. На этом уровне появляется возможность использования функции сетевой трансляции адресов (NAT, network address translation). Трансляция внутренних адресов выполняется по отношению ко всем пакетам, следующим из внутренней сети во внешнюю. Для этих пакетов IP-адреса компьютеров-отправителей внутренней сети автоматически преобразуются в один IP-адрес, ассоциируемый с экранирующим МЭ. В результате все пакеты, исходящие из внутренней сети, оказываются отправленными МЭ, что исключает прямой контакт между внутренней и внешней сетью. IP- адрес шлюза сеансового уровня становится единственным активным IP- адресом, который попадает во внешнюю сеть.
Особенности:
· Работает на 4 уровне.
· Передает TCP подключения, основываясь на порте.
· Недорогой, но более безопасный, чем фильтр пакетов.
· Вообще требует работы пользователя или программы конфигурации для полноценной работы.
· Пример: SOCKS файрвол.
Шлюз прикладного уровня
Application-level gateways (Шлюз прикладного уровня) - межсетевой экран, который исключает прямое взаимодействие между авторизированным клиентом и внешним хостом, фильтруя все входящие и исходящие пакеты на прикладном уровне модели OSI.
Связанные с приложением программы-посредники перенаправляет через шлюз информацию, генерируемую конкретными сервисами TCP/IP.
Возможности:
· Идентификация и аутентификация пользователей при попытке установления соединения через МЭ;
· Фильтрация потока сообщений, например, динамический поиск вирусов и прозрачное шифрование информации;
· Регистрация событий и реагирование на события;
· Кэширование данных, запрашиваемых из внешней сети.
На этом уровне появляется возможность использования функций посредничества (Proxy).
Для каждого обсуживаемого протокола прикладного уровня можно вводить программных посредников – HTTP-посредник, FTP-посредник и т.д. Посредник каждой службы TCP/IP ориентирован на обработку сообщений и выполнение функций защиты, относящихся именно к этой службе. Также, как и шлюз сеансового уровня, прикладной шлюз перехватывает с помощью соответствующих экранирующих агентов входящие и сходящие пакеты, копирует и перенаправляет информацию через шлюз, и функционирует в качестве сервера-посредника, исключая прямые соединения между внутренней и внешней сетью. Однако, посредники, используемые прикладным шлюзом, имеют важные отличия от канальных посредников шлюзов сеансового уровня. Во-первых, посредники прикладного шлюза связаны с конкретными приложениями программными серверами), а во-вторых, они могут фильтровать поток сообщений на прикладном уровне модели OSI.
Особенности:
· Работает на 7 уровне.
· Специфический для приложений.
· Умеренно дорогой и медленный, но более безопасный и допускает регистрацию деятельности пользователей.
· Требует работы пользователя или программы конфигурации для полноценной работы.
· Пример: Web (http) proxy.
МЭ экспертного уровня
Stateful inspection firewall — межсетевой экран экспертного уровня, который проверяет содержимое принимаемых пакетов на трех уровнях модели OSI: сетевом, сеансовом и прикладном. При выполнении этой задачи используются специальные алгоритмы фильтрации пакетов, с помощью которых каждый пакет сравнивается с известным шаблоном авторизированных пакетов.
Особенности:
· Фильтрация 3 уровня.
· Проверка правильности на 4 уровне.
· Осмотр 5 уровня.
· Высокие уровни стоимости, защиты и сложности.
· Пример: CheckPoint Firewall-1.
Некоторые современные МЭ используют комбинацию вышеперечисленных методов и обеспечивают дополнительные способы защиты, как сетей, так и систем.
«Персональные» МЭ
Этот класс МЭ позволяет далее расширять защиту, допуская управление по тому, какие типы системных функций или процессов имеют доступ к ресурсам сети. Эти МЭ могут использовать различные типы сигнатур и условий, для того, чтобы разрешать или отвергать трафик. Вот некоторые из общих функций персональных МЭ:
· Блокирование на уровне приложений – позволять лишь некоторым приложениям или библиотекам исполнять сетевые действия или принимать входящие подключения
· Блокирование на основе сигнатуры – постоянно контролировать сетевой трафик и блокировать все известные атаки. Дополнительный контроль увеличивает сложность управления безопасностью из-за потенциально большого количества систем, которые могут быть защищены персональным файрволом. Это также увеличивает риск повреждения и уязвимости из-за плохой настройки.
Динамические МЭ
Динамические МЭ объединяют в себе стандартные МЭ (перечислены выше) и методы обнаружения вторжений, чтобы обеспечить блокирование «на лету» сетевых подключений, которые соответствуют определённой сигнатуре, позволяя при этом подключения от других источников к тому же самому порту. Например, можно блокировать деятельность сетевых червей, не нарушая работу нормального трафика.
Схемы подключения МЭ:
· Схема единой защиты локальной сети
· Схема защищаемой закрытой и не защищаемой открытой подсетями
· Схема с раздельной защитой закрытой и открытой подсетей.
Наиболее простым является решение, при котором межсетевой экран просто экранирует локальную сеть от глобальной. При этом WWW-сервер, FTP-сервер, почтовый сервер и другие сервера, оказываются также защищены межсетевым экраном. При этом требуется уделить много внимания на предотвращение проникновения на защищаемые станции локальной сети при помощи средств легкодоступных WWW-серверов.
Рис.6.4 Схема единой защиты локальной сети
Для предотвращения доступа в локальную сеть, используя ресурсы WWW-сервера, рекомендуется общедоступные серверы подключать перед межсетевым экраном. Данный способ обладает более высокой защищенностью локальной сети, но низким уровнем защищенности WWW- и FTP-серверов.
Рис.6.5 Схема защищаемой закрытой и не защищаемой открытой подсетями