Различают несколько типов межсетевых экранов в зависимости от следующих характеристик:

    обеспечивает ли экран соединение между одним узлом и сетью или между двумя или более различными сетями;

    происходит ли контроль потока данных на сетевом уровне или более высоких уровнях модели OSI;

    отслеживаются ли состояния активных соединений или нет.

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

    традиционный сетевой (или межсетевой) экран – программа (или неотъемлемая часть операционной системы) на шлюзе (устройстве, передающем трафик между сетями) или аппаратное решение, контролирующие входящие и исходящие потоки данных между подключенными сетями (объектами распределённой сети);

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

В зависимости от уровня OSI, на котором происходит контроль доступа, сетевые экраны могут работать на:

    сетевом уровне , когда фильтрация происходит на основе адресов отправителя и получателя пакетов, номеров портов транспортного уровня модели OSI и статических правил, заданных администратором;

    сеансовом уровне (также известные, как stateful ), когда отслеживаются сеансы между приложениями и не пропускаются пакеты, нарушающие спецификации TCP/IP, часто используемые в злонамеренных операциях – сканирование ресурсов, взломы через неправильные реализации TCP/IP, обрыв/замедление соединений, инъекция данных;

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

Фильтрация на сетевом уровне

Фильтрация входящих и исходящих пакетов осуществляется на основе информации, содержащейся в следующих полях TCP- и IP-заголовков пакетов: IP-адрес отправителя; IP-адрес получателя; порт отправителя; порт получателя.

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

    сравнительно невысокая стоимость;

    гибкость в определении правил фильтрации;

    небольшая задержка при прохождении пакетов.

Недостатки:

    не собирает фрагментированные пакеты;

    нет возможности отслеживать взаимосвязи (соединения) между пакетами.?

Фильтрация на сеансовом уровне

В зависимости от отслеживания активных соединений межсетевые экраны могут быть:

    stateless (простая фильтрация), которые не отслеживают текущие соединения (например, TCP), а фильтруют поток данных исключительно на основе статических правил;

    stateful, stateful packet inspection (SPI) (фильтрация с учётом контекста), с отслеживанием текущих соединений и пропуском только таких пакетов, которые удовлетворяют логике и алгоритмам работы соответствующих протоколов и приложений.

Межсетевые экраны с SPI позволяют эффективнее бороться с различными видами DoS-атак и уязвимостями некоторых сетевых протоколов. Кроме того, они обеспечивают функционирование таких протоколов, как H.323, SIP, FTP и т. п., которые используют сложные схемы передачи данных между адресатами, плохо поддающиеся описанию статическими правилами, и зачастую несовместимых со стандартными, stateless сетевыми экранами.

К преимуществам такой фильтрации относится:

    анализ содержимого пакетов;

    не требуется информации о работе протоколов 7 уровня.

Недостатки:

    сложно анализировать данные уровня приложений (возможно с использованием ALG – Application level gateway).

Application level gateway, ALG (шлюз прикладного уровня) – компонент NAT-маршрутизатора, который понимает какой-либо прикладной протокол, и при прохождении через него пакетов этого протокола модифицирует их таким образом, что находящиеся за NAT’ом пользователи могут пользоваться протоколом.

Служба ALG обеспечивает поддержку протоколов на уровне приложений (таких как SIP, H.323, FTP и др.), для которых подмена адресов/портов (Network Address Translation) недопустима. Данная служба определяет тип приложения в пакетах, приходящих со стороны интерфейса внутренней сети и соответствующим образом выполняя для них трансляцию адресов/портов через внешний интерфейс.

Технология SPI (Stateful Packet Inspection) или технология инспекции пакетов с учетом состояния протокола на сегодня является передовым методом контроля трафика. Эта технология позволяет контролировать данные вплоть до уровня приложения, не требуя при этом отдельного приложения посредника или proxy для каждого защищаемого протокола или сетевой службы.

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

Пример работы механизма Stateful Inspection . Межсетевой экран отслеживает сессию FTP, проверяя данные на уровне приложения. Когда клиент запрашивает сервер об открытии обратного соединения (команда FTP PORT), межсетевой экран извлекает номер порта из этого запроса. В списке запоминаются адреса клиента и сервера, номера портов. При фиксировании попытки установить соединение FTP-data, межсетевой экран просматривает список и проверяет, действительно ли данное соединение является ответом на допустимый запрос клиента. Список соединений поддерживается динамически, так что открыты только необходимые порты FTP. Как только сессия закрывается, порты блокируются, обеспечивая высокий уровень защищенности.

Рис. 2.12. Пример работы механизма Stateful Inspection с FTP-протоколом

Фильтрация на прикладном уровне

С целью защиты ряда уязвимых мест, присущих фильтрации пакетов, межсетевые экраны должны использовать прикладные программы для фильтрации соединений с такими сервисами, как, например, Telnet, HTTP, FTP. Подобное приложение называется proxy-службой, а хост, на котором работает proxy-служба – шлюзом уровня приложений. Такой шлюз исключает прямое взаимодействие между авторизованным клиентом и внешним хостом. Шлюз фильтрует все входящие и исходящие пакеты на прикладном уровне (уровне приложений – верхний уровень сетевой модели) и может анализировать содержимое данных, например, адрес URL, содержащийся в HTTP-сообщении, или команду, содержащуюся в FTP-сообщении. Иногда эффективнее бывает фильтрация пакетов, основанная на информации, содержащейся в самих данных. Фильтры пакетов и фильтры уровня канала не используют содержимое информационного потока при принятии решений о фильтрации, но это можно сделать с помощью фильтрации уровня приложений. Фильтры уровня прил ожений могут использовать информацию из заголовка пакета, а также содержимого данных и информации о пользователе. Администраторы могут использовать фильтрацию уровня приложений для контроля доступа на основе идентичности пользователя и/или на основе конкретной задачи, которую пытается осуществить пользователь. В фильтрах уровня приложений можно установить правила на основе отдаваемых приложением команд. Например, администратор может запретить конкретному пользователю скачивать файлы на конкретный компьютер с помощью FTP или разрешить пользователю размещать файлы через FTP на том же самом компьютере.

К преимуществам такой фильтрации относится:

    простые правила фильтрации;

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

    способность анализировать данные приложений.

Недостатки:

    относительно низкая производительность по сравнению с фильтрацией пакетов;

    proxy должен понимать свой протокол (невозможность использования с неизвестными протоколами)?;

    как правило, работает под управлением сложных ОС.

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

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

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

Определение типов межсетевых экранов

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

Межсетевые экраны прикладного уровня

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

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

При использовании межсетевого экрана прикладного уровня все соединения проходят через него (см. рис. 10.1). Как показано на рисунке, соединение начинается на системе-клиенте и поступает на внутренний интерфейс межсетевого экрана. Межсетевой экран принимает соединение, анализирует содержимое пакета и используемый протокол и определяет, соответствует ли данный трафик правилам политики безопасности. Если это так, то межсетевой экран инициирует новое соединение между своим внешним интерфейсом и системой-сервером.

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


Рис. 10.1.

Примечание

Здесь подразумевается, что модуль доступа на межсетевом экране сам по себе неуязвим для атаки. Если же программное обеспечение разработано недостаточно тщательно, это может быть и ложным утверждением.

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

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

Как правило, брандмауэры функционируют на какой-либо UNIX платформе - чаще всего это BSDI, SunOS, AIX, IRIX и т.д., реже - DOS, VMS, WNT, Windows NT. Из аппаратных платформ встречаются INTEL, Sun SPARC, RS6000, Alpha, HP PA-RISC, семейство RISC процессоров R4400-R5000. Помимо Ethernet, многие брандмауэры поддерживают FDDI, Token Ring, 100Base-T, 100VG-AnyLan, различные серийные устройства. Требования к оперативной памяти и объему жесткого диска зависят от количества машин в защищаемом сегменте сети.

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

Все брандмауэры можно разделить на три типа:

Все типы могут одновременно встретиться в одном брандмауэре.

Пакетные фильтры

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

Для описания правил прохождения пакетов составляются таблицы типа:

Поле "действие" может принимать значения пропустить или отбросить.
Тип пакета - TCP, UDP или ICMP.
Флаги - флаги из заголовка IP-пакета.
Поля "порт источника" и "порт назначения" имеют смысл только для TCP и UDP пакетов.

Сервера прикладного уровня

Брандмауэры с серверами прикладного уровня используют сервера конкретных сервисов (proxy server) - TELNET, FTP и т.д., запускаемые на брандмауэре и пропускающие через себя весь трафик, относящийся к данному сервису. Таким образом, между клиентом и сервером образуются два соединения: от клиента до брандмауэра и от брандмауэра до места назначения.

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

  • терминалы (Telnet, Rlogin);
  • передача файлов (Ftp);
  • электронная почта (SMTP, POP3);
  • WWW (HTTP);
  • Gopher;
  • Wais;
  • X Window System (X11);
  • сетевая печать (LP);
  • удаленное выполнение задач (Rsh);
  • Finger;
  • новости Usenet (NNTP);
  • Whois;
  • RealAudio.

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

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

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

Сервера уровня соединения

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

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

Такой тип сервера позволяет создавать транслятор для любого определенного пользователем сервиса, базирующегося на TCP, осуществлять контроль доступа к этому сервису, сбор статистики по его использованию.

Сравнительные характеристики пакетных фильтров и серверов прикладного уровня

Ниже приведены основные достоинства и недостатки пакетных фильтров и серверов прикладного уровня относительно друг друга.

    Достоинства пакетных фильтров:
  • относительно невысокая стоимость;
  • гибкость в определении правил фильтрации;
  • небольшая задержка при прохождении пакетов.
    Недостатки пакетных фильтров:
  • локальная сеть видна (маршрутизируется) из INTERNET;
  • правила фильтрации пакетов трудны в описании, требуются очень хорошие знания технологий TCP и UDP;
  • при нарушении работоспособности брандмауэра все компьютеры за ним становятся полностью незащищенными либо недоступными;
  • аутентификацию с использованием IP-адреса можно обмануть использованием IP-спуфинга (атакующая система выдает себя за другую, используя ее IP-адрес);
  • отсутствует аутентификация на пользовательском уровне.
    Достоинства серверов прикладного уровня:
  • локальная сеть невидима из INTERNET;
  • при нарушении работоспособности брандмауэра пакеты перестают проходить через брандмауэр, тем самым не возникает угрозы для защищаемых им машин;
  • защита на уровне приложений позволяет осуществлять большое количество дополнительных проверок, снижая тем самым вероятность взлома с использованием дыр в программном обеспечении;
  • аутентификация на пользовательском уровне может быть реализована система немедленного предупреждения о попытке взлома.
    Недостатки серверов прикладного уровня:
  • более высокая, чем для пакетных фильтров стоимость;
  • невозможность использовании протоколов RPC и UDP;
  • производительность ниже, чем для пакетных фильтров.

Виртуальные сети

Ряд брандмауэров позволяет также организовывать виртуальные корпоративные сети (Virtual Private Network ), т.е. объединить несколько локальных сетей, включенных в INTERNET в одну виртуальную сеть. VPN позволяют организовать прозрачное для пользователей соединение локальных сетей, сохраняя секретность и целостность передаваемой информации с помощью шифрования. При этом при передаче по INTERNET шифруются не только данные пользователя, но и сетевая информация - сетевые адреса, номера портов и т.д.

Схемы подключения брандмауэров

Для подключения брандмауэров используются различные схемы. Брандмауэр может использоваться в качестве внешнего роутера, используя поддерживаемые типы устройств для подключения к внешней сети (см. рис.1). Иногда используется схема, изображенная на рис.2, однако пользоваться ей следует только в крайнем случае, поскольку требуется очень аккуратная настройка роутеров и небольшие ошибки могут образовать серьезные дыры в защите.

рис.2

Чаще всего подключение осуществляется через внешний маршрутизатор, поддерживающий два Ethernet интерфейса(так называемый dual-homed брандмауэр) (две сетевые карточки в одном компьютре) (см. рис.3).

рис.3

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

Другая схема представлена на рис.4.

рис.4

При этом брандмауэром защищается только одна подсеть из нескольких выходящих из роутера. В незащищаемой брандмауэром области часто располагают серверы, которые должны быть видимы снаружи (WWW, FTP и т.д.). Большинство брандмауэров позволяет разместить эти сервера на нем самом - решение, далеко не лучшее с точки зрения загрузки машины и безопасности самого брандмауэра.

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

рис.5

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

Администрирование

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

Системы сбора статистики и предупреждения об атаке

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

Аутентификация

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

Как правило, используется принцип, получивший название "что он знает" - т.е. пользователь знает некоторое секретное слово, которое он посылает серверу аутентификации в ответ на его запрос.

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

Классы защищенности брандмауэров

Применительно к обработке конфиденциальной информации автоматизированные системы (АС) делятся на три группы:

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

В первой группе выделяют 5 классов защищенности АС: 1А, 1Б, 1В, 1Г, 1Д, во второй и третьей группах - по 2 класса защищенности: 2А, 2Б и 3А, 3Б сооответственно. Класс А соответствует максимальной, класс Д - минимальной защищенности АС.

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

По уровню защищенности брандмауэры делятся на 5 классов. Самый низкий класс защищенности - пятый. Он применяется для безопасного взаимодействия АС класса 1Д с внешней средой, четвертый - для 1Г, третий - для 1В, второй - для 1Б, самый высокий - первый - для 1А.

Для АС класса 2Б, 3Б применяются брандмауэры не ниже пятого класса.

Для АС класса 2А, 3А в зависимости от важности обрабатываемой информации применяются брандмауэры следующих классов:

  • при обработки информации с грифом "секретно" - не ниже третьего класса;
  • при обработки информации с грифом "совершенно секретно" - не ниже второго класса;
  • при обработки информации с грифом "особой важности" - только первого класса.

Показатели защищенности сведены в табл.1.

Обозначения:

Таблица 1
Показатели защищенности Классы защищенности
5 4 3 2 1
Управление доступом (фильтрация данных и трансляция адресов) + + + + =
Идентификация и аутентификация - - + = +
Регистрация - + + + =
Администрирование: идентификация и аутентификация + = + + +
Администрирование: регистрация + + + = =
Администрирование: простота использования - - + = +
Целостность + = + + +
Восстановление + = = + =
Тестирование + + + + +
Руководство администратора защиты + = = = =
Тестовая документация + + + + +
Конструкторская (проектная) документация + = + = +

Руководство для приобретающих брандмауэр

Исследовательским подразделением компании TruSecure - лабораторией ICSA - разработан документ "Firewall Buyers Guide" (Гид покупателей межсетевого экрана). В одном из разделов этого документа дана следующая форма оценки покупателя:

  1. Контактная информация - адрес и ответственные лица.
  2. Бизнес-среда работы:
    • количество и расположение отдельных учреждений (зданий) предприятия;
    • указание подразделений и информации ограниченного характера и информации, для которой важна доступность данных для взаимодействия подразделений, их размещение;
    • Указание внешних партнеров, с которыми необходимо организовать взаимодействие;
    • описание сервисов, открытых публично;
    • трребования к организации удаленного доступа во внутреннее информационное пространство предприятия;
    • сервисы электронных служб, использующие публичные каналы связи (например, электронная коммерция).
  3. Планируемые изменения в бизнес-среде по перечисленным параметрам.
  4. Информационная среда:
    • количество пользовательских рабочих станций с указанием аппаратного обеспечения, системного и прикладного программного обеспечения;
    • структура сети с указанием топологии, среды передачи данных, используемых устройств и протоколов;
    • структура удаленного доступа с указанием используемых устройств, а также методов аутентификации;
    • количество серверов с указанием аппаратного обеспечения,системного и прикладного программного обеспечения;
    • существующая система поддержки информационных систем со стороны поставщиков с их указанием и границами сферы деятельности;
    • антивирусные системы и другие системы контроля программного обеспечения;
    • технология упрравления сетью и информационными системами;
    • аутентификационные технологии - список и описание.
  5. Планируемые изменения в информационной среде по перечисленням параметрам.
  6. Связь с Интернетом:
    • тип интернет-соединения;
    • существующие межсетевые экраны (если они есть);
    • Средства связи с внешней средой, используемые внутренними системами;
    • внутренние системы и сервисы, доступные извне;
    • серверы электронной коммерции и других транзакционных систем;
    • указание на наличие утвержденной политики безопасности доступа и использования Интернета.
  7. Планируемые мероприятия (для которых приобретается межсетевой экран):
    • изменение в способах доступа к Интернету и в политике безопасности предприятия;
    • появление новых протокоолов, которые необходимо поддерживать отдельно для внутренних пользователей, пользователей с удаленным доступом или специальных пользователей, доступных публично.
  8. Требуемая функциональность межсетевого экрана:
    • по контролю доступа;
    • выдаваемым сообщениям;
    • аутентификации;
    • управлению конфигурацией;
    • контролю содержимого проходящего трафика;
    • регистрационным журналам;
    • распознаванию атак;
    • сетевым опциям (количество интерфейсов, способ доступа);
    • удаленному администрированию;
    • системным требованиям (под ключ, интеграция с другими продуктами и т.д.).
  9. Прочие условия:
    • предполагаемая стоимость межсетевого экрана (сколько предприятие может потратить);
    • предполагаемая дата начала работы продукта;
    • требования к наличию у продукта сертификатов;
    • требования к предполагаемому администратору продукта и к службе поддержки;
    • специальные условия контракта (если есть);
    • другие замечания, которые не включены в данную форму.

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

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

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

Межсетовой экран имеет несколько названий. Рассмотрим их.

Брандмауэр (нем. Brandmauer) - заимствованный из немецкого языка термин, являющийся аналогом английского firewall в его оригинальном значении (стена, которая разделяет смежные здания, предохраняя от распространения пожара). Интересно, что в области компьютерных технологий в немецком языке употребляется слово «firewall».

Файрвол, файервол, фаервол - образовано транслитерацией английского термина firewall, эквивалентного термину межсетевой экран, в настоящее время не является официальным заимствованным словом в русском языке.

Рис.6.1 Типовое размещение МЭ в корпоративной сети

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

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

Межсетевые экраны имеют различный вид и размер, и иногда это просто набор не­скольких различных компьютеров. Здесь под межсетевым экраном подразумевается компьютер или компьютеры между доверенными сетями (например, внутренними) и недоверенными (например, Интернетом), которые проверяют весь проходящий между ними трафик. Эффективные межсетевые экраны обладают следующими свой­ствами:

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

· Межсетевой экран пропускает только авторизованный трафик. Если он не спо­собен четко дифференцировать авторизованный и неавторизованный трафик, или если он настроен на пропуск опасных или ненужных соединений, то польза от него значительно снижается. При сбое или перегрузке межсетевой экран дол­жен всегда переключаться в состояние «отказ» или закрытое состояние. Лучше прервать соединения, чем оставить системы незащищенными.

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

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

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

Преимущества межсетевого экрана:

· Межсетевые экраны - это прекрасное средство реализации корпоративных по­литик безопасности. Их следует настраивать на ограничение соединений соглас­но мнению руководства по этому вопросу.

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

· Цель применения межсетевых экранов вполне конкретна, поэтому не нужно искать компромисс между безопасностью и удобством использования.

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

· Межсетевые экраны обладают очень хорошими возможностями по оповещению персонала о конкретных событиях.

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

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

· Эффективность межсетевых экранов зависит от правил, на соблюдение кото­рых они настроены. Правила не должны быть слишком лояльны.

· Межсетевые экраны не предотвращают атаки социального инжиниринга или атаки авторизованного пользователя, который умышленно и злонамеренно ис­пользует свой адрес.

· Межсетевые экраны не могут противостоять некачественным подходам к адми­нистрированию или некорректно разработанным политикам безопасности.

· Межсетевые экраны не предотвращают атаки, если трафик не проходит через них.

Некоторые люди предсказывали конец эры межсетевых экранов, которые с трудом разграничивают санкционированный и несанкционированный трафик приложе­ний. Многие приложения, например средства мгновенного обмена сообщениями, становятся все более и более мобильными и совместимыми с работой через многие порты. Таким образом, они могут действовать в обход межсетевого экрана через порт, открытый для другой авторизованной службы. Кроме того, все больше при­ложений предусматривают передачу трафика через другие авторизованные порты, доступные с наибольшей долей вероятности. Примерами таких популярных приложений являются HTTP-Tunnel (www.http-tunnel.com) и SocksCap (www.socks.permeo.com). Более того, разрабатываются приложения, специально пред­назначенные для обхода межсетевых экранов, например приложение удаленного контроля над компьютерами GoToMyPC (www.gotomypc.com).

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

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

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

· Пакетные фильтры.

· Прикладные шлюзы.

· Шлюзы контурного уровня.

· Устройства адаптивной проверки пакетов.

Прежде чем изучать функции межсетевых экранов, рассмотрим пакет протоко­лов контроля передачи и Интернета (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 Схема защищаемой закрытой и не защищаемой открытой подсетями


Похожая информация.


16.09.1999

Типы межсетевых экранов и используемые в них технологии. Si vis pacem, para bellum (Хочешь мира - готовься к войне). Константин Пьянзин Благодаря своей открытой архитектуре сеть Internet стала одним из самых удобных средств коммуникации.

Типы межсетевых экранов и используемые в них технологии.

Si vis pacem, para bellum

(Хочешь мира - готовься к войне).

Константин Пьянзин

Благодаря своей открытой архитектуре сеть Internet стала одним из самых удобных средств коммуникации. Вместе с тем открытость Internet породила множество проблем, связанных с безопасностью. Здесь как нельзя лучше подходит изречение: «Каждый - за себя, только Бог - за всех». Любой имеющий выход в Internet компьютер должен рассматриваться как потенциальный объект для атаки. Проблема особенно остро стоит в случае организаций, поскольку им необходимо контролировать работу в Internet большого количества компьютеров и сетевых устройств.

Безопасность при подключении к Internet обеспечивается с помощью следующих специализированных средств:

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

Важное место в списке средств обеспечения безопасного подключения к Internet занимают межсетевые экраны (часто называемые брандмауэрами, или, по-английски, firewall). Согласно «Руководящему документу. Межсетевые экраны» Гостехкомиссии при Президенте РФ «межсетевым экраном называется локальное (однокомпонентное) или функционально-распределенное средство (комплекс), которое реализует контроль за информацией, поступающей в автоматизированную систему и/или выходящей из нее, и обеспечивает защиту автоматизированной системы посредством фильтрации информации, т. е. анализа по совокупности критериев и принятия решения об ее распространении в (из) автоматизированной системе». К сожалению, такое определение имеет чересчур общий характер и подразумевает слишком расширенное толкование.

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

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

Межсетевые экраны по понятным причинам используются для сетей TCP/IP и классифицируются в соответствии с уровнем эталонной модели взаимодействия открытых систем (сетевой моделью) OSI. Однако такая классификация, в силу ряда обстоятельств носит достаточно условный характер. Во-первых, сетевая модель сетей TCP/IP предусматривает только 5 уровней (физический, интерфейсный, сетевой, транспортный и прикладной), в то время как модель OSI - 7 уровней (физический, канальный, сетевой, транспортный, сеансовый, презентационный и прикладной). Поэтому установить однозначное соответствие между этими моделями далеко не всегда возможно. Во-вторых, большинство выпускаемых межсетевых экранов обеспечивают работу сразу на нескольких уровнях иерархии OSI. В-третьих, некоторые экраны функционируют в режиме, который трудно соотнести с каким-то строго определенным уровнем иерархии.

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

  • управляемые коммутаторы (канальный уровень);
  • сетевые фильтры (сетевой уровень);
  • шлюзы сеансового уровня (circuit-level proxy);
  • посредники прикладного уровня;
  • инспекторы состояния (stateful inspection), представляющие собой межсетевые экраны сеансового уровня с расширенными возможностями.

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

Межсетевые экраны могут опираться на один из двух взаимоисключающих принципов обработки поступающих пакетов данных. Первый принцип гласит: «Что явно не запрещено, то разрешено». Т. е. если МЭ получил пакет, не подпадающий не под одно из принятых ограничений или не идентифицированный правилами обработки, то он передается далее. Противоположный принцип - «Что явно не разрешено, то запрещено» - гарантирует гораздо большую защищенность, но оборачивается дополнительной нагрузкой на администратора. В этом случае внутренняя сеть изначально полностью недоступна, и администратор вручную устанавливает разрешенные при обмене данными с общедоступной сетью сетевые адреса, протоколы, службы и операции.

Правила обработки информации во многих межсетевых экранах экспертного класса могут иметь многоуровневую иерархическую структуру. Например, они могут позволять задать такую схему: «Все компьютеры локальной сети недоступны извне, за исключением доступа к серверу A по протоколу ftp и к серверу B по протоколу telnet, однако при этом запрещен доступ к серверу A с операцией PUT сервиса ftp».

Межсетевые экраны могут выполнять над поступающими пакетами данных одну из двух операций: пропустить пакет далее (allow) или отбросить пакет (deny). Некоторые МЭ имеют еще одну операцию - reject, при которой пакет отбрасывается, но отправителю сообщается по протоколу ICMP о недоступности сервиса на компьютере-получателе информации. В противовес этому при операции deny отправитель не информируется о недоступности сервиса, что является более безопасным.

Ниже мы рассмотрим достоинства и недостатки каждого типа межсетевого экрана более подробно.

КОММУТАТОРЫ

Коммутаторы среднего и старшего уровня Cisco, Bay Networks (Nortel), 3Com и других производителей позволяют привязывать MAC-адреса сетевых карт компьютеров к определенным портам коммутатора. Более того, немало коммутаторов предоставляет возможность фильтрации информации на основе адреса сетевой платы отправителя или получателя, создавая при этом виртуальные сети (VLAN). Другие коммутаторы позволяют организовать VLAN на уровне портов самого коммутатора. Таким образом, коммутатор может выступать в качестве межсетевого экрана канального уровня.

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

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

Тем не менее если следовать буквальной трактовке «Руководящего документа» Гостехкомиссии, то коммутаторы с возможностью создания VLAN являются межсетевыми экранами.

СЕТЕВЫЕ ФИЛЬТРЫ

Сетевые фильтры работают на сетевом уровне иерархии OSI (см. Рисунок 1). Сетевой фильтр представляет собой маршрутизатор, обрабатывающий пакеты на основании информации, содержащейся в заголовках пакетов. Сетевые фильтры существуют для сетей TCP/IP и IPX/SPX, но последние применяют в локальных сетях, поэтому мы их рассматривать не будем.

При обработке пакетов ими учитывается следующая информация:

  • IP-адрес отправителя;
  • IP-адрес получателя;
  • протокол (TCP, UDP, ICMP);
  • номер программного порта отправителя;
  • номер программного порта получателя.

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

  1. все компьютеры корпоративной сети имеют возможность общаться с внешними серверами Web и ftp, но не с telnet, NNTP и т. д.;
  2. доступ извне запрещен ко всем компьютерам корпоративной сети, кроме доступа к серверу A по протоколу HTTP и к серверу B по протоколу ftp; кроме того, внешнему компьютеру Z разрешается доступ к внутреннему серверу C и к любым службам TCP и UDP, но не ICMP.

Сетевые фильтры очень легко реализовать, поэтому они получили повсеместное распространение и представлены программно-аппаратными и чисто программными реализациями. В частности, маршрутизаторы Cisco, Bay Networks (подразделение Nortel) и других производителей снабжены функциями сетевой фильтрации, вследствие чего такие маршрутизаторы называют фильтрующими. Список программных сетевых фильтров еще более внушителен, и большинство из них представляет бесплатные или условно-бесплатные утилиты. Они реализованы для множества сетевых платформ, в том числе для UNIX, Windows NT, NetWare, VMS, MVS.

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

В сетевых фильтрах в основном используется статическая фильтрация, когда администратору приходится создавать свой фильтр для каждого уникального типа пакета, требующего обработки. Поясним это на примере. Допустим, всем компьютерам по умолчанию запрещен доступ в Internet. Однако компьютеру Z (IP-адрес 123.45.67.89) необходим доступ к внешнему серверу A (IP-адрес 211.111.111.111), предоставляющему сервис telnet. В данном случае администратор должен задать два правила:

  1. пропустить пакет, если он передается со стороны сетевого интерфейса внутренней сети на сетевой интерфейс внешней сети и имеет параметры: IP-адрес отправителя 123.45.67.89, IP-адрес получателя 211.111.111.111, протокол транспортного уровня TCP, программный порт отправителя больше 6000, программный порт получателя 23;
  2. пропустить пакет, если он передается со стороны сетевого интерфейса внешней сети на сетевой интерфейс внутренней сети и имеет параметры: IP-адрес отправителя 211.111.111.111, IP-адрес получателя 123.45.67.89, протокол транспортного уровня TCP, программный порт отправителя 23, программный порт получателя более 6000.

Таким образом, для каждого канала обмена данными необходимо задавать два правила (фильтра); в случае многоканальных соединений (например, для сервиса ftp) количество правил соответственно увеличивается. Для большой сети список правил достигает очень внушительных размеров, в которых администратору легко запутаться. Правда, сетевые фильтры позволяют обычно объединять правила для подмножества компьютеров на основе IP-подсетей.

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

Ряд производителей (в частности, Novell в утилите FILTCFG.NLM) предусматривает динамическую, или контекстную (stateful), фильтрацию и фильтрацию фрагментов IP-пакетов, но по характеристикам они скорее относятся к разряду шлюзов сеансового уровня и поэтому будут рассмотрены позднее.

Еще одной проблемой, особенно для бесплатных сетевых фильтров, является невозможность создания иерархической структуры правил. Например, в случае принципа «что явно не разрешено, то запрещено» фильтр просматривает сначала список исключений, и если пакет не подходит не под одно исключение, то в соответствии с указанным принципом пакет отсеивается. Если же пакет подходит хотя бы под одно исключение, то он передается дальше. Однако представим такую ситуацию: сеть закрыта от доступа снаружи, но один сервер должен быть доступен для внешнего мира по протоколу ftp. Все это прекрасно можно организовать с помощью сетевого фильтра, за исключением маленькой, но очень неприятной детали - на доступ к серверу по ftp нельзя наложить дополнительные ограничения. К примеру, невозможно в таком случае запретить доступ к нему со стороны компьютера Z, которым пользуется злоумышленник. Более того, хакер может передавать на сервер пакеты с адресом отправителя, соответствующим адресу компьютера внутренней сети (самый опасный вид подделки IP-пакетов). И сетевой фильтр пропустит такой пакет. Чтобы избежать подобных проблем, администраторы вынуждены ставить два последовательно подключенных фильтра, чтобы таким образом реализовывать иерархические правила фильтрации.

Сетевые фильтры имеют ряд принципиальных недостатков. Прежде всего аутентификация (или, если точнее, идентификация) отправителя производится только на основании IP-адреса. Однако с помощью подмены IP-адресов (IP-spoofing) злоумышленник без особых усилий может обойти такую преграду. Кроме того, за уполномоченный компьютер может в принципе сесть человек, не имеющий права работать с сервером. Аутентификация на основе имени и пароля пользователя намного надежнее, но в сетевых фильтрах ее применить не представляется возможным.

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

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

ШЛЮЗЫ СЕАНСОВОГО УРОВНЯ

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

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

ФИЛЬТРЫ КОНТРОЛЯ СОСТОЯНИЯ КАНАЛА СВЯЗИ

К фильтрам контроля состояния канала связи нередко относят сетевые фильтры (сетевой уровень) с расширенными возможностями.

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

Фильтр фрагментированных пакетов. При передаче через сети с различными MTU IP-пакеты могут разбиваться на отдельные фрагменты, причем только первый фрагмент всегда содержит полный заголовок пакета транспортного уровня, включая информацию о программных портах. Обычные сетевые фильтры не в состоянии проверять фрагменты, кроме первого, и пропускают их (при выполнении критериев по IP-адресам и используемому протоколу). За счет этого злоумышленники могут организовать опасные атаки по типу «отказ в обслуживании», преднамеренно генерируя большое количество фрагментов и тем самым блокируя работу компьютера-получателя пакетов. Фильтр фрагментированных пакетов не пропускает фрагменты, если первый из них не пройдет регистрации.

Контроль битов SYN и ACK. Ряд фильтров позволяет отслеживать биты SYN и ACK в пакетах TCP. Все они призваны бороться с атаками по типу SYN-flooding (см. врезку ), но используют различные подходы. Самый простой фильтр запрещает передачу TCP-пакетов с битом SYN, но без бита ACK со стороны общедоступной сети на компьютеры внутренней сети, если последние не были явно объявлены серверами для внешней сети (или хотя бы для определенной группы компьютеров внешней сети). К сожалению, такой фильтр не спасает при атаках SYN-flooding на машины, являющиеся серверами для внешней сети, но расположенные во внутренней сети.

Для этих целей применяют специализированные фильтры с многоступенчатым порядком установления соединений. Например, фильтр SYNDefender Gateway из состава межсетевого экрана FireWall-1 производства Check Point работает следующим образом. Допустим, внешний компьютер Z пытается установить соединение с внутренним сервером A через межсетевой экран МЭ. Процедура установления соединения показана на Рисунке 2. Когда МЭ получает пакет SYN от компьютера Z (этап 1), то этот пакет передается на сервер A (этап 2). В ответ сервер A передает пакет SYN/ACK на компьютер Z, но МЭ его перехватывает (этап 3). Далее МЭ пересылает полученный пакет на компьютер Z, кроме того, МЭ от имени компьютера Z посылает пакет ACK на сервер A (этап 4). За счет быстрого ответа серверу A, выделяемая под установление новых соединений память сервера никогда не окажется переполнена, и атака SYN-flooding не пройдет.

Дальнейшее развитие событий зависит от того, действительно ли компьютер Z инициализировал установление соединения с сервером A. Если это так, то компьютер Z перешлет пакет ACK серверу A, который проходит через МЭ (этап 5a). Сервер A проигнорирует второй пакет ACK. Затем МЭ будет беспрепятственно пропускать пакеты между компьютерами A и Z. Если же МЭ не получит пакета ACK или кончится тайм-аут на установление соединения, то он вышлет в адрес сервера A пакет RST, отменяющий соединение (этап 5б).

Фильтр SYNDefender Relay из состава того же Check Point FireWall-1 работает несколько иначе. Прежде чем передавать пакет SYN на сервер A, МЭ сначала устанавливает соединение с компьютером Z. Процедура установления соединения для этого случая показана на Рисунке 3. Только после получения пакета ACK от компьютера Z межсетевой экран инициализирует соединение с сервером A (этап 3). Очевидно, что после установления соединений межсетевой экран будет вынужден в динамическом режиме менять значения полей Sequent number (порядковый номер) и Acknowledgement number (номер подтверждения) во всех пакетах TCP, передаваемых между компьютерами A и Z, что снижает производительность.

ШЛЮЗЫ, ТРАНСЛИРУЮЩИЕ АДРЕСА ИЛИ СЕТЕВЫЕ ПРОТОКОЛЫ

Пожалуй, самым известным шлюзом сеансового уровня можно считать шлюз с преобразованием IP-адресов (Network Address Translation, NAT). При использовании шлюза NAT внутренняя сеть имеет адреса, невидимые (и даже незарегистрированные) в общедоступной сети. При обращении внутреннего компьютера наружу шлюз перехватывает запрос и выступает от имени клиента, задействуя свой внешний (зарегистрированный) IP-адрес. Полученный ответ шлюз передает внутреннему компьютеру (после подстановки внутреннего адреса компьютера), выступая в качестве передаточного звена. Это позволяет убить сразу двух зайцев: резко сократить количество зарегистрированных IP-адресов и контролировать поток информации, т. е. назначать или запрещать доступ в Internet отдельным компьютерам.

Шлюзы NAT могут работать в одном из четырех режимов: динамическом, статическом, статическом с динамической выборкой IP-адресов и комбинированном.

При динамическом режиме, иногда называемом трансляцией на уровне портов (Port Address Translation, PAT), шлюз имеет один-единственный внешний IP-адрес. Все обращения в общедоступную сеть (Internet) со стороны клиентов внутренней сети осуществляются с использованием этого внешнего адреса, при этом шлюз оперирует лишь портами внешнего интерфейса, т. е. при обращении клиента шлюз выделяет ему уникальный программный порт транспортного протокола (UDP, TCP) для внешнего IP-адреса. В распоряжении шлюза NAT могут иметься пулы до 64 000 портов TCP, 64 000 портов UDP и 6 4000 портов ICMP (в протоколе ICMP термин «порт» не применяется, но разработчики шлюзов используют его, чтобы подчеркнуть принцип трансляции пакетов), хотя в некоторых реализациях емкость пулов может быть много меньше этих величин, например в Novell BorderManager каждый пул содержит по 5000 портов.

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

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

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

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

Помимо общих недостатков шлюзов сеансового уровня (см. ниже) шлюзам NAT присущ свой специфический изъян: они не поддерживают сетевые приложения, пакеты прикладного уровня которых содержат IP-адреса. Единственным исключением является сервис ftp, для которого большинство шлюзов NAT умеет контролировать (и изменять) IP-адреса внутри пакетов прикладного уровня.

Вторым недостатком шлюзов NAT можно назвать то, что они не поддерживают аутентификацию на уровне пользователей, а только на уровне IP-адресов, что делает их уязвимыми для атак по типу IP-spoofing. Кроме того, шлюзы NAT не могут предотвратить атаки типа «отказ в обслуживании», в частности SYN-flooding, поэтому их имеет смысл применять только совместно с другими типами шлюзов сеансового и/или прикладного уровней. Кроме шлюзов NAT достаточно известны шлюзы IPX/IP, предназначенные для организации выхода в Internet компьютеров, работающих в сетях IPX/SPX. При запросе клиента внутренней сети к серверу Internet шлюз перехватывает запрос и вместо пакета IPX формирует соответствующий IP-пакет. При поступлении отклика от сервера шлюз делает обратное преобразование. Пожалуй, это самый надежный тип шлюзов, поскольку внутренняя сеть имеет принципиально другую, по сравнению с TCP/IP, программную среду. Не было отмечено еще ни одного случая взлома такой инфраструктуры. Кроме того, в отличие от шлюзов NAT, аутентификация на шлюзах IPX/IP осуществляется не только на уровне сетевых адресов компьютеров, но и на уровне пользователей с помощью информации база данных NDS (для NetWare 4.x и 5.x) или BINDERY (для NetWare 3.x). Правда, такая аутентификация возможна лишь при доступе из внутренней сети в Internet, за исключением случая, когда внешний клиент использует NetWare на основе TCP/IP.

ПОСРЕДНИКИ СЕАНСОВОГО УРОВНЯ

Прежде чем разрешить установление соединения TCP между компьютерами внутренней и внешней сети, посредники сеансового уровня сначала как минимум регистрируют клиента. При этом неважно, с какой стороны (внешней или внутренней) этот клиент находится. При положительном результате регистрации между внешним и внутренним компьютерами организуется виртуальный канал, по которому пакеты передаются между сетями. С этого времени посредник не вмешивается в процесс обмена данными и не фильтрует информацию. Но такая схема является обобщенной, конкретные реализации шлюзов прикладного уровня могут иметь свои особенности. Наиболее известным и популярным посредником сеансового уровня является посредник SOCKS 5, который выступает в качестве сервера SOCKS 5. Когда клиент пытается связаться с сервером, находящимся по другую сторону посредника, то его SOCKS-клиент обращается к SOCKS-серверу, где происходит не только регистрация, но и полноценная аутентификация на основе имени и пароля пользователя. Аутентификация может быть организована так, чтобы пароль передавался в зашифрованном виде. При положительном результате аутентификации посредник SOCKS разрешает установление соединения клиента с сервером и более не вмешивается в процесс обмена информацией. Однако сервис SOCKS 5 позволяет устанавливать между клиентом и посредником передачу данными в зашифрованном виде по протоколу SSL. Принимая во внимание перечисленные характеристики, очевидно, что применение посредника SOCKS 5 особенно актуально в ситуации, когда сервер находится во внутренней сети, а клиент - в общедоступной. Но и случай, когда внутренние клиенты обращаются к ресурсам Internet, не стоит сбрасывать со счетов, поскольку посредник SOCKS 5 позволяет регулировать доступ на уровне имен и паролей пользователей. Недостатком посредников SOCKS является необходимость установки специализированного программного обеспечения - клиентской части SOCKS - на каждое клиентское место.

ОБЩИЕ НЕДОСТАТКИ ШЛЮЗОВ СЕАНСОВОГО УРОВНЯ

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

Хотя применение шлюзов сеансового уровня позволяет предотвратить ряд опасных атак на внутреннюю сеть, некоторые типы атак, в частности категории «отказ в обслуживании», можно реализовать в обход этих шлюзов. За исключением шлюза IPX/IP и посредника SOCKS 5, все остальные фильтры имеют крайне ненадежную систему идентификации и аутентификации, основанную на IP-адресах отправителя/получателя. В свою очередь, применение шлюзов IPX/IP и SOCKS 5 привносит свои проблемы, так как требует установки на клиентские машины специализированного ПО.

За исключением шлюзов IPX/IP и SOCKS 5, другие шлюзы сеансового уровня обычно не поставляются в виде коммерческого продукта. Тем не менее все межсетевые экраны экспертного класса в обязательном порядке комплектуются самыми разными шлюзами сеансового уровня (так же, как и сетевыми фильтрами), поскольку посредники прикладного уровня или инспекторы состояния не могут отслеживать передачу данных на нижних уровнях иерархии OSI.

ПОСРЕДНИКИ ПРИКЛАДНОГО УРОВНЯ

Посредники прикладного уровня (application-level proxy), часто называемые proxy-серверами, контролируют и фильтруют информацию на прикладном уровне иерархии OSI (см. Рисунок 4). Посредники различают по поддерживаемым протоколам прикладного уровня: чем их больше, тем дороже продукт. Наиболее часто поддерживаются службы Web (HTTP), ftp, SMTP, POP3/IMAP, NNTP, Gopher, telnet, DNS, RealAudio/RealVideo. Когда клиент внутренней сети обращается, например, к серверу Web, то его запрос попадает к посреднику Web (или перехватывается им). Последний устанавливает связь с сервером от имени клиента, а полученную информацию передает клиенту. Для внешнего сервера посредник выступает в качестве клиента, а для внутреннего клиента - в качестве сервера Web. Аналогично посредник может работать и в случае внешнего клиента и внутреннего сервера.

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

В случае непрозрачных посредников клиентскую систему требуется явным образом настроить на работу с посредником (например, при использовании непрозрачного посредника Web в опциях настройки браузеров необходимо указать IP-адрес посредника и присвоенный ему порт TCP). Непрозрачные посредники хороши там, где требуется строгая аутентификация при входе во внутреннюю сеть или на выходе из нее, особенно для служб, не поддерживающих шифрование паролей. Обычно это службы telnet и ftp, при этом задействуется система одноразовых паролей (One-Time Password, OTP) (более подробно о системах OTP см. в статье «Удаленное управление сетевыми ОС» в LAN №5 за 1999 г.).

На Рисунке 5 показан типичный пример использования telnet. Здесь клиент с помощью системы OTP устанавливает соединение с сервером tn.anywhere.com, находящимся за непрозрачным посредником fw.anywhere.com. Пользователь сначала должен зарегистрироваться на посреднике, сообщив для начала свое имя, в ответ на которое ему передается вызов (673 jar564). С помощью калькулятора OTP пользователь вычисляет затем парольную фразу, которую и вводит в поле Password. Далее он сообщает адрес сервера, с которым собирается установить соединение. Следует отметить, что регистрации на сервере tn.anywhere.com не требуется, поскольку межсетевой экран и данный сервер используют общую базу учетных записей пользователей.

Общим недостатком непрозрачных посредников является их «непрозрачность» для клиентского ПО и пользователей. Далеко не всякие клиентские программы можно настроить, например, на непрозрачные посредники SMTP, POP3, IMAP4, DNS, ftp.

В отличие от шлюзов сеансового уровня посредники прикладного уровня обрабатывают только те пакеты данных прикладного уровня, службы которых ими поддерживаются, а пакеты неизвестных (для посредника) или не сконфигурированных протоколов удаляются из обращения. Например, если посредник настроен только на обслуживание сервиса ftp, то он не пропустит пакеты telnet или HTTP.

Посредник прикладного уровня проверяет содержимое каждого пакета данных. Более того, посредник фильтрует пакеты на уровне конкретных операций сетевых служб. Например, межсетевой экран Raptor Firewall компании AXENT Technologies позволяет отфильтровывать пакеты ftp, содержащие команду PUT.

Посредники прикладного уровня в обязательном порядке поддерживают строгую аутентификацию с помощью либо операционной системы или одной из служб каталогов (доменов) NDS, Windows NT, NIS/NIS+, либо систем RADIUS, TACACS и т. д.

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

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

ПОСРЕДНИКИ WEB

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

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

Существует четыре типа кэширования информации на посредниках Web:

  • пассивное;
  • активное;
  • негативное;
  • иерархическое.

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

Активное кэширование предполагает наличие у посредника некоторого интеллекта. Кэширование осуществляется заранее (read-ahead), до поступления явного запроса от клиента. Например, браузер запрашивает страницу Web, содержащую рисунки или иные элементы. Посредник не будет дожидаться явных запросов со стороны клиента на подкачку этих компонентов и постарается получить их самостоятельно, так сказать, загодя. Активное кэширование происходит в фоновом режиме, что повышает производительность работы.

Негативное кэширование подразумевает кэширование отказов. Если браузер запросил страницу, которую посредник не может получить (нет связи или из-за отсутствия страницы на сервере), то отказ кэшируется. При повторном обращении клиент сразу получит отрицательный ответ. Однако посредник будет продолжать пытаться получить затребованную страницу в фоновом режиме. Негативное кэширование у посредников Web появилось недавно, в так называемом втором поколении посредников, разработанных в соответствии с технологией Harvest/Squid. Созданные в рамках старой технологии CERN посредники не кэшируют отказы и пытаются каждый раз связаться с сервером Web.

Иерархическое кэширование представляет собой еще одно достижение технологии Harvest/Squid. В соответствии с ней посредники могут образовывать сложные иерархические структуры с равноправными или подчиненными связями. Например, организация имеет два одинаковых по производительности канала в Internet. На каждый канал устанавливается посредник, и между ними определяются равноправные отношения. В этом случае при отсутствии запрошенной информации в кэше посредник обратится не к серверу Internet, а ко второму посреднику. Если у второго посредника в кэше имеется необходимая информация, то она будет передана первому посреднику и далее клиенту. В противном случае первый посредник будет вынужден сам обратиться к серверу Web. При подчиненных отношениях типа «потомок-родитель» посредник со статусом «потомок» никогда не обращается к серверу Web самостоятельно, а только через «родителя». Подобные схемы значительно уменьшают загрузку глобальных линий связи и повышают отказоустойчивость подключения. Иерархическое кэширование организуется в соответствии с одним из двух стандартизированных протоколов кэширования: ICP (Internet Caching Protocol) или CARP (Cache Array Routing Protocol). Хотя протокол CARP разработан позже ICP, он получил большее распространение, поскольку устраняет избыточное кэширование информации между посредниками.


Рисунок 6. Прямое кэширование Web.

Кроме типов кэширования (пассивное, активное, негативное и иерархическое) посредники различаются также по режимам кэширования: прямому (forward) и обратному (reverse). Прямое кэширование - это то, к чему мы все привыкли. Т. е. посредник устанавливается на входе во внутреннюю сеть и кэширует информацию с серверов Internet для клиентов внутренней сети (см. Рисунок 6). При использовании прозрачного посредника клиенты могут даже не знать о существовании посредника, в то время как в случае непрозрачного посредника в опциях браузера необходимо задать его координаты.


Рисунок 7. Обратное кэширование Web.

Обратное кэширование подразумевает обслуживание внешних клиентов, запрашивающих информацию с серверов, расположенных во внутренней сети организации. Т. е. за посредником с обратным кэшированием закрепляется один или несколько серверов Web, информацию с которых он скачивает. Такой посредник лучше всего устанавливать у провайдера Internet, чтобы снизить нагрузку на канал связи с провайдером и увеличить производительность доступа внешних клиентов к серверу Web (см. Рисунок 7). Посредник с обратным кэшированием должен быть прозрачным для внешних пользователей. Однако это возможно лишь при обратном кэшировании только одного сервера (к порту 80 протокола TCP, отвечающему за сервис HTTP, на посреднике можно привязать только один сервер - для других серверов необходимо назначать другие порты). Тем не менее с помощью не очень сложных манипуляций работу посредника по кэшированию сразу нескольких серверов можно сделать практически прозрачной для клиентов.

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

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

ИНСПЕКТОРЫ СОСТОЯНИЯ

Инспекторы состояния, или иначе брандмауэры с контекстной проверкой (stateful inspection firewall), являются по сути шлюзами сеансового уровня с расширенными возможностями. Термин «инспектор состояния» был введен компанией Check Point, дабы подчеркнуть отличие ее технологии от других применяемых в межсетевых экранах. Инспекторы состояния оперируют на сеансовом уровне, но «понимают» и протоколы прикладного уровня (см. Рисунок 8). Т. е. при получении пакета данных содержимое этого пакета сравнивается с некими шаблонами, специфическими для соответствующего протокола прикладного уровня. И в зависимости от результата сравнения, пакет либо передается далее, либо отбрасывается. Чем мощнее инспектор состояния, тем больший список шаблонов он имеет. Если пакет не соответствует ни одному шаблону, то он будет отсеян.

В отличие от посредника прикладного уровня, открывающего два виртуальных канала TCP (один - для клиента, другой - для сервера) для каждого соединения, инспектор состояния не препятствует организации прямого соединения между клиентом и сервером. За счет этого производительность инспектора состояния оказывается много выше производительности посредников прикладного уровня и приближается к производительности сетевых фильтров. Правда, разработчики посредников прикладного уровня указывают на более высокий уровень защищенности своих продуктов, поскольку трафик контролируется непосредственно на прикладном уровне. Но большинство специалистов считают такие утверждения спорными или, во всяком случае, не очевидными. У кого, например, повернется язык назвать недостаточно надежным межсетевой экран Check Point FireWall-1, являющийся инспектором состояния, когда ему принадлежит 40% рынка межсетевых экранов и он удостоен множества самых престижных наград, в том числе и за безопасность?

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

Единственным достоинством инспекторов состояния (не затрагивая вопрос производительности) по сравнению с посредниками прикладного уровня является то, что инспектор состояния абсолютно прозрачен для клиентов и не требует дополнительной настройки клиентского ПО. Однако, в свою очередь, классические инспекторы состояния не годятся для кэширования Web. Поэтому даже если межсетевой экран основан на инспекторе состояния, для кэширования Web в него включают посредник Web прикладного уровня.

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

Межсетевые экраны экспертного класса основываются либо на технологии инспекторов состояния, либо на технологии посредников прикладного уровня, но обязательно дополняются сетевыми фильтрами и шлюзами сеансового уровня. Подавляющее большинство выпускаемых межсетевых экранов представляет собой посредники прикладного уровня, но, как было отмечено ранее, инспекторы состояния (вернее, один инспектор - FireWall-1 компании Check Point) доминируют на рынке.

ДРУГИЕ ВОЗМОЖНОСТИ МЕЖСЕТЕВЫХ ЭКРАНОВ

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

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

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

ЗАКЛЮЧЕНИЕ

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

Константин Пьянзин - обозреватель LAN. С ним можно связаться по адресу: [email protected]

В середине 90-х годов атака по типу SYN-flooding была одной из самых распространенных. Она использует недостатки протокольной машины TCP. Атака SYN-flooding попадает под категорию атак «отказ в обслуживании» (Denial of Service, DoS), приводящих к зависанию компьютера - т. е. компьютер продолжает работать, но становится недоступным через сеть.

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

Когда сервер получает пакет SYN, он выделяет дополнительную память для нового соединения. В большинстве операционных систем для каждой из сетевых служб предусмотрен лимит (обычно равный десяти) на количество вновь создаваемых соединений TCP (в некоторых системах такого лимита нет, но положение от этого не намного лучше, поскольку при отсутствии свободной памяти зависнет весь компьютер, а не только одна конкретная служба). Пока сервер не получит пакет SYN/ACK или пакет RST (см. далее) либо не наступит тайм-аут на вновь создаваемое соединение (обычно 75 секунд), соединение продолжает резервировать память.

Атака SYN-flooding предусматривает посылку на сервер множества пакетов TCP с выставленным битом SYN от лица несуществующих или неработающих хостов (за счет применения подмены IP-адресов). Последнее требование важно, поскольку если запрос на установку соединения придет от имени работающего хоста, то, когда сервер пошлет в его адрес пакет SYN/ACK, хост ответит пакетом RST (reset), инициирующим сброс соединения. И соединение будет удалено из памяти сервера.

При атаке SYN-flooding выделенная под установление новых соединений память сервера быстро исчерпывается, и сетевой сервис зависает.

Для противодействия атакам SYN-flooding помимо увеличения размера памяти под устанавливаемые соединения и уменьшения тайм-аута на межсетевых экранах применяются различные хитроумные методы борьбы. Установка межсетевых экранов сеансового и прикладного уровня или инспекторов состояний кардинально решает проблему атак SYN-flooding, поскольку именно они отражают все атаки, в то время как компьютеры внутренней сети даже не знают об их проведении.