Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПУЛКО_учебное пособие.doc
Скачиваний:
22
Добавлен:
18.09.2019
Размер:
987.14 Кб
Скачать

5. Основы сетевой безопасности

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

5.1. Угрозы безопасности в глобальных сетях

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

Атаки типа «отказ в обслуживании» (denial of service, DoS ). Под этим названием объединены методы, призванные расстроить работу некоторого сетевого устройства путем перегрузки какого-либо ограниченного ресурса, отказа устройства, изменения его настроек. Ограниченными ресурсами являются оперативная память, емкость жесткого диска, процессорное время. Типичная DoS атака представляет собой генерацию большого потока сетевых пакетов, которые не успевают обрабатываться сетевыми серверами, что приводит либо к отказам в их работе, либо к невозможности обрабатывать запросы обычных пользователей. В качестве примера DoS атаки можно привести атаку SYN flooding, когда злоумышленник отправляет на атакуемый компьютер множество TCP-пакетов с установленным флагом SYN и несуществующим адресом отправителя. Атакуемый компьютер в ответ на каждый такой пакет создает внутренние структуры данных, необходимые для поддержки соединения и отправляет ответный пакет для подтверждения соединения. Так как в качестве адреса отправителя был указан несуществующий адрес, то ответа на свой пакет атакуемый компьютер не дождется, а память под внутренние структуры данных будут некоторое время зарезервированы. При большом количестве атакующих пакетов память атакуемого компьютера может закончиться, что приведет к его отказу. Для предотвращения подобных атак используются интеллектуальные фильтры пакетов, в момент возникновения атаки можно динамически уменьшать время ожидания ответа на пакет. Особенно разрушительными являются распределенные DoS-атаки (distributed DoS, DDoS). При реализации атаки данного типа злоумышленник сначала должен получить доступ ко множеству слабо защищенных компьютеров, подсоединенных к Интернет и установить на них специальное программное обеспечение DDoS. Удаленный компьютер с установленным программным обеспечение DDoS называется агентом. По команде с компьютера злоумышленника агенты начинают передавать сетевые пакеты на атакуемый компьютер. Агенты могут направить ICMP запросы на широковещательный адрес (Smurf атаки), поддельные HTTP запросы, фрагментированные пакеты или случайный трафик. Атака может быть направлена на любое сетевое устройство: маршрутизаторы (что эффективно блокирует всю сеть), серверы (Web, mail, DNS), или специфичные компьютеры (firewalls, IDS). В результате атаки (а несколько сотен машин могут создать трафик в несколько гигабайт) атакуемый компьютер либо полностью перестанет обрабатывать запросы, либо будет делать это очень медленно.

Очень распространенными являются атаки с использованием протокола ICMP. Протокол управляющих сообщений ICMP (Internet Control Message Protocol) носит вспомогательный характер (популярная утилита ping использует этот протокол). Протокол ICMP не содержит методов аутентификации источника сообщения, что активно используется злоумышленниками. Например, для блокировки обслуживания используются icmp-сообщения “time exceeded” (превышено время) или “destination unreachable” (адресат недоступен). Первое сообщение означает, что предел, указанный в поле TTL заголовка пакета, превышен. Такое может произойти из-за зацикливания пакетов или когда адресат расположен очень далеко. Сообщение “destination unreachable” имеет несколько значений. Но все они означают, что нет способа благополучно доставить пакет адресату. Оба сообщения вынуждают адресата немедленно прервать соединение. Именно эту цель может преследовать злоумышленник, посылая такое сообщение одному из участников взаимодействия. Протокол ICMP может использоваться и для перехвата пакетов. ICMP-сообщение “redirect” обычно используется внешними портами сети в случаях, когда какая-то ЭВМ полагает, что адресат находится вне локальной сети и направляет пакеты, адресованные ему, через внешний порт. Злоумышленник может послать ICMP-сообщение “redirect” и вынудить другую ЭВМ посылать пакеты через узел, указанный злоумышленником.

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

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

Глобальная сеть является благоприятной средой для распространения вирусов и «троянских коней». Развитие Интернет привело к появлению такого феномена как вирусы – черви. Остановимся подробнее на сетевом черве Klez. Этот экземпляр заражает компьютер через ошибку в почтовой программе Outlook: когда пользователь пытается прочитать письмо, содержащее вирус, Klez инфицирует систему. После попадания в ОС сетевой червь сканирует жесткие диски, ищет электронные адреса и рассылает на них письма, прикрепляя свое тело в качестве вложения, создавая очень большой исходящий трафик. Таким образом, скорость распространения сетевого червя становилась очень высокой. Эту же схему используют и все остальные сетевые черви: каким-либо образом попадают на компьютер, ищут потовые адреса и рассылают себя дальше. По данным Лаборатории Касперского за время своего существования Klez заразил более 110 тыс. компьютеров. Главным способом защиты от подобных вредоносных программ является регулярное обновление баз антивирусного программного обеспечения, а также регулярное обновление используемого программного обеспечения, которое атакуют вирусы, поскольку, например, программная «заплатка», предотвращающая ошибку ОС, эксплуатируемую вирусом Klez, была выпущена задолго до его появления.

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

5.2. Средства криптографической защиты соединений в вычислительных сетях

Для обеспечения конфиденциальности информации, передаваемой по сети, необходимо обеспечить ее шифрование на стороне отправителя и дешифрацию на стороне получателя по одному из алгоритмов, рассмотренных в главе 2. Существует несколько средств кодирования, которые шифруют информацию на разных уровнях модели OSI. Самым простым средством является шифрование информации на прикладном уровне. В этом случае шифрованию подвергается только непосредственно передаваемая информация, никакая служебная информация из заголовков сетевых пакетов в этом случае не кодируется. Примером программы, которая осуществляет подобного рода шифрование можно назвать PGP (Pretty Good Privacy). Одно из главных достоинств этой программы состоит в том, что существуют версии PGP практически для всех программных платформ: DOS, Windows, Unix, Macintosh. PGP представляет собой криптосистему, которая позволяет шифровать данные (содержимое файлов, буфера обмена) по асимметричной схеме, а также формировать ЭЦП для передаваемых сообщений. В PGP используются следующие алгоритмы: RSA, SHA, DES, CAST, IDEA, DSS. Закодированная информация сохраняется в виде файла, который может быть передан по сети любым способом (электронная почта, FTP). Для удобства работы PGP может интегрироваться с почтовыми программами, такими как OutlookExpress, TheBat, Eudora. Еще одно достоинство PGP – то, что существуют свободно распространяемые версии этой программы (freeware), которые можно найти по адресу http://www.pgpru.com

Применение программы PGP и подобных ей может оказаться неудобным вследствие того, что пользователю необходимо самому принимать меры для шифрации сообщений. Для того чтобы сделать процедуру шифрования прозрачной для пользователя, существуют различные сетевые протоколы, реализующие технологии защищенных соединений. Рассмотрим один из подобных протоколов – протокол SSL (Secure Socket Layer). Протокол SSL спроектирован компанией Netscape для своего браузера Netscape Navigator для обеспечения конфиденциальности обмена между двумя прикладными процессами клиента и сервера. Он предоставляет также возможность аутентификации сервера и, опционно, клиента. SSL работает на представительском уровне модели OSI поверх протокола TCP.

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

Протокол SSL предоставляет безопасный канал, который имеет три основные свойства:

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

  • Канал аутентифицирован. Серверная сторона диалога всегда аутентифицируется, в то время как клиентская - аутентифицируется опционно.

  • Канал надежен. Транспортировка сообщений включает в себя проверку целостности

Протокол SSL использует следующие криптографические алгоритмы: DES, DSA, MD5, RC2, RC4. Все современные браузеры поддерживают протокол SSL. Если пользователь вводит в адресной строке URL начинающийся с аббревиатуры HTTPS, то начинает работать протокол HTTPS, который представляет собой стандартный протокол HTTP, защищенный средствами SSL. При этом подключение происходит к порту номер 443, который для HTTPS обычно используется по умолчанию. После этого браузер и сервер обмениваются пакетами, проводя взаимную аутентификацию по имеющимся у них сертификатам, обмениваются сеансовыми ключами шифрования и начинают обмен информацией в зашифрованном виде (рис. 5 .1).

Альтернативой использованию протокола SSL может стать применение протокола TLS (Transport Layer Security), имеющего практически аналогичную функциональность

Для защиты информации на более низком – сетевом – уровне модели OSI используется технология VPN (Virtual Private Network). VPN предполагает использование криптографических методов защиты для обеспечения конфиденциальности и целостности информации на сетевом уровне с использованием ряда современных протоколов сетевого уровня (IPSec, PPTP, L2TP, L2P) при передаче информации по сетям общего пользования. Шифрование происходит прозрачно для пользователей программными или программно-аппаратными средствами. При этом данные всех сетевых пакетов, начиная с транспортного уровня, шифруются и помещаются в закодированном виде в область данных пакета сетевого уровня. Так образуется скрытый от посторонних «туннель», по которому информация может передаваться в сети общего доступа между узлами воображаемой, виртуальной сети. По сравнению с протоколом SSL VPN предоставляет возможность скрыть от злоумышленника такую информацию, как номера используемых портов, а при использовании механизма туннелирования - и используемые в локальной сети IP-адреса, что затрудняет возможности сканирования сети, поиска слабых мест в ней.

Существуют три основных метода подключения VPN:

  • соединением двух сетей, при этом VPN обеспечивается маршрутизаторами или брандмауэрами на границе сети (рис.5.2);

  • подключением узла к сети, когда программное обеспечение VPN устанавливается на клиентском компьютере, который подключается к сети;

  • подключением через провайдера, когда организацию VPN на коммутируемых линиях связи берет на себя Интернет-провайдер.

Рассмотрим один из протоколов, посредством которого реализуется технология VPN. Стандарт IP Security - это комплект протоколов, касающихся вопросов шифрования, аутентификации и обеспечения защиты при транспортировке IP-

пакетов, который должен стать частью разрабатываемого стандарта IPv6. Он включает в себя 3 основных протокола – аутентификации заголовка (Authentification Header, AH), безопасного сокрытия содержимого (Encapsulation Security Payload, ESP) и обмена ключами (Internet Key Exchange, IKE). Протокол AH обеспечивает аутентификацию отправителя пакета и целостность заголовка пакета с использованием механизмов хэширования. Протокол ESP обеспечивает проверку целостности датаграммы пакета и шифрование информации в ней. Он может работать в двух режимах: транспортном и туннельном. В транспортном режиме протокол ESP обеспечивает защиту пакетов (и данных, и заголовков) протоколов более высокого уровня, заголовок пакета IP не защищается. В туннельном режиме ESP обеспечивает связь между двумя шлюзами локальных сетей, защищая информацию в заголовке IP-пакета. В этом режиме IP- пакет полностью кодируется и помещается в область данных пакета, передаваемого между двумя шлюзами. На шлюзе принимающей стороны этот пакет распаковывается и отправляется адресату. Протокол IKE отвечает за процедуру установки соединения, когда стороны договариваются об используемых криптоалгоритмах, обмениваются сеансовыми ключами шифрования. Протоколы стандарта IPSec используют такие криптоалгоритмы, как DES, TripleDES, AES, SHA, MD5.

Для использования VPN на практике можно использовать аппаратные шлюзы (например, CSP VPN Gate), через которые осуществляется связь с внешней сетью и которые сами реализуют все функции VPN. Для конечного пользователя более простым и дешевым решением может оказаться использование программной реализации, можно, например, воспользоваться встроенными средствами поддержки IPSec в Windows 2000/XP.

5.3. Использование межсетевых экранов для защиты локальных сетей

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

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

  • трансляция адресов, позволяющая использовать для внешних коммуникаций компьютеров локальной сети только один IP-адрес – адрес самого брандмауэра, внутренние адреса локальной сети могут быть любыми;

  • переадресация, позволяющая отправлять пакеты, приходящие на некоторый IP-адрес, на компьютер с другим адресом. Это позволяет, например, распределить нагрузку на Web-сервер.

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

Пакетные фильтры работают с информацией в заголовках IP, ICMP, TCP и UDP- пакетов. Правила фильтрации пакетов задаются на основе следующих данных:

  • название сетевого интерфейса и направление передачи информации;

  • IP-адреса отправителя и получателя;

  • протокол более высокого уровня (используется TCP или UDP);

  • порт отправителя и получателя для протоколов TCP и UDP;

  • опции IP (например, блокировка маршрутизации от источника);

  • тип сообщения ICMP.

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

  1. Разрешить весь трафик, не запрещенный правилами фильтрации.

  2. Запретить весь трафик, не разрешенный правилами фильтрации.

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

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

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

Большинство современных операционных систем имеют встроенные пакетные фильтры, например ipfw в Unix или Internet Connection Firewall в Windows. Функции пакетного фильтра могут выполнять и аппаратные маршрутизаторы, например, CISCO PIX 515E.

Главным недостатком пакетных фильтров является невозможность осуществления фильтрации пакетов по содержимому информационной части пакетов, то есть по данным, относящимся к пакетам более высокого уровня. Этот недостаток может быть устранен путем использования шлюзов приложений (application gateway, proxy-server). Proxy-серверы работают на прикладном уровне, обеспечивая работу той или иной сетевой службы. При этом в отличие от пакетных фильтров, которые лишь перенаправляют пакет из одной сети в другую, proxy-серверы принимают запрос от клиента и направляют его во внешнюю сеть от своего имени, разрывая таким образом нормальный сетевой трафик (см. рис.5.4). Поэтому брандмауэр в виде шлюза приложений может быть реализован на компьютере всего с одним сетевым интерфейсом.

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

Фильтрация содержимого может осуществляться по множеству параметров:

  • IP-адрес отправителя и получателя;

  • запрашиваемый URL;

  • наличие вложений (приложения Java, компоненты ActiveX) и т.п.

  • время запроса и другие, в зависимости от используемого proxy-сервера.

Важной функцией современных proxy-серверов является трансляция сетевых адресов (Network Address Translation, NAT), которая подразумевает замену адреса клиента в запросе во внешнюю сеть на собственный адрес (или несколько адресов) proxy-сервера. Это позволяет скрыть от посторонних структуру внутренней сети, список используемых в ней адресов. С другой стороны это позволяет иметь на всю локальную сеть лишь один легальный IP-адрес, который должен быть присвоен proxy-серверу. Рабочие станции внутри сети могут иметь любые IP-адреса, в том числе и те, которые запрещено использовать во внешней сети. NAT может быть организована по статической и динамической схеме. При статической трансляции адрес клиента в локальной сети привязывается к конкретному адресу, который транслируется во внешнюю сеть. Динамическая трансляция предполагает наличие диапазона доступных внешних адресов и при каждом запросе клиента proxy-сервер выделяет один из свободных адресов для представления клиента во внешней сети, по окончании транзакции этот адрес возвращается в список свободных и может быть использован в дальнейшем для передачи запроса другого клиента. Развитием идеи NAT стала трансляция адресов портов (Network Address Port Translation, NAPT), когда один и тот же IP-адрес распределяется при трансляции на несколько пользователей и каждому пользователю сопоставляется в отправляемом во внешнюю сеть пакете уникальная комбинация IP-адреса и номера порта отправителя. Иными словами, различным пользователям сети proxy-сервер сопоставляет один и тот же IP-адрес, но присваивает различные номера портов в исходящих запросах. Это стало возможным за счет того, что порт отправителя зачастую не несет в запросе никакой полезной информации и может быть использован для уникальной идентификации клиента локальной сети для proxy-сервера.

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

Рассмотрим свойства наиболее распространенных proxy-серверов.

Microsoft Proxy Server (версия 2.0) представляет собой брандмауэр с расширяемым набором функций и сервер кэширования информации, обеспечивает поддержку протоколов HTTP и gopher, а также поддержку клиентских приложений (например, Telnet и RealAudio) для компьютеров интрасети, использующих протоколы TCP/IP или IPX/SPX, поддерживает VPN, выполняет функции фильтра пакетов. Работает в среде Windows.

Squid - высокопроизводительный кэширующий proxy-сервер для web-клиентов с поддержкой протоколов FTP, gopher и HTTP, имеющий реализации как под Unix, так и под Windows- платформы. Squid хранит метаданные и особенно часто запрашиваемые объекты в ОЗУ, кэширует DNS-запросы, поддерживает неблокирующие DNS-запросы и реализует негативное кэширование неудачных запросов. Поддерживает протокол ICP (Internet Casing Protocol), позволяющий организовывать нескольким серверам иерархические структуры кэширования.

Помимо перечисленных, на практике могут быть использованы так называемые персональные межсетевые экраны. Они устанавливаются на компьютер пользователя, и все правила безопасности задаются для обмена этого компьютера с внешней сетью. Это позволяет настроить политику безопасности персонально под каждого пользователя непосредственно на его рабочей станции. Примером подобного МСЭ является брандмауэр AtGuard, который включает в себя функции proxy-сервера и локального пакетного фильтра. AtGuard способен блокировать баннеры, файлы cookie, Java -скрипты и апплеты, а также элементы ActiveX. Еще одна особенность AtGuard – способность работать в режиме обучения, когда при каждой попытке подключиться к какому-либо порту запрашивается разрешение на установку соединения, и сделанный пользователем выбор становится правилом для дальнейшей работы программы.

Используемые на практике МСЭ представляют собой интегрированную систему защиты, включающую и пакетный фильтр, и proxy-сервер. Они могут располагаться как на одном, так и на нескольких компьютерах, в связи с чем существует возможность выбора архитектуры используемого МСЭ [8].

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

А рхитектура с экранированным узлом предполагает использование одновременно и пакетного фильтра, и proxy-сервера (рис.5.5).

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

  • трафик из внешней сети к прикладному шлюзу пропускается;

  • прочий трафик из внешней сети блокируется;

  • пакетный фильтр блокирует любой трафик из локальной сети во внешнюю, если он не идет от прикладного шлюза.

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

Р азвитием концепции изолированного узла стала архитектура с изолированной подсетью. Здесь используется два пакетных фильтра (рис.5.6) для организации изолированной подсети, которую еще называют демилитаризованной зоной (DMZ).

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

  • пропускать прикладной трафик от прикладного шлюза во внешнюю сеть;

  • пропускать прикладной трафик из внешней сети к прикладному шлюзу;

  • все остальные виды трафика блокировать.

Внутренний пакетный фильтр управляет трафиком «локальная сеть – демилитаризованная зона» согласно следующим правилам:

  • трафик от прикладного шлюза к внутренним системам пропускается;

  • трафик к прикладному шлюзу от внутренних систем пропускается;

  • трафик к информационным серверам внутри DMZ пропускается;

  • все остальные виды трафика блокировать.

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

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

Рассмотрим пример реализации межсетевого экрана. Предположим, что существует некоторая организация, имеющая собственную локальную сеть, подключенную к глобальной сети Интернет. Будем считать, что провайдер выделил нашей организации один статический IP адрес 195.209.133.1. Внутри локальной сети администратор может использовать любой из диапазонов адресов, предназначенных для применения в частных сетях: 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16. Для примера возьмем диапазон 10.0.0.0/8. Доступ в глобальную сеть Интернет будет осуществляться через компьютер, имеющий два сетевых интерфейса, один из которых подключен к глобальной сети Интернет и имеет IP адрес 195.209.133.1, а второй подключен к локальной сети организации и имеет IP адрес 10.0.0.1. Далее будем обозначать этот компьютер символом S. Также допустим, что у нашей организации существуют официальный WEB-сервер www.myorg.ru и почтовый сервер, обслуживающий домен myorg.ru. Данные сервера, а также основной DNS-сервер для зоны myorg.ru будут установлены на компьютере S. Вспомогательный DNS-сервер для зоны myorg.ru поддерживается провайдером. Кроме того, предположим, что на компьютере S также установлены локальный FTP-сервер и proxy-сервер, обеспечивающий доступ в сеть Интернет для остальных компьютеров, принадлежащих нашей организации. Также предположим, что в нашей организации существуют два компьютера рекламного отдела, далее R1 и R2, два компьютера отдела продаж P1 и P2, компьютер директора D, компьютер заместителя директора Z, два компьютера бухгалтерии B1 и B2, компьютер отдела кадров O и демонстрационный компьютер W. Для всех компьютеров организации необходимо обеспечить доступ к почтовому серверу, к локальному FTP-серверу, а также к WWW-серверу организации. Исключением является компьютер W, для которого необходимо обеспечить доступ только к WWW-серверу. Кроме того, для компьютеров R1, R2, P1, P2, Z и D необходимо обеспечить доступ к глобальной сети Интернет через proxy-сервер.

Для выполнения всех предъявленных выше требований, а также для обеспечения безопасности и исключения несанкционированного доступа целесообразно на компьютере S установить пакетный фильтр. Рассмотрим примерную таблицу правил для нашего случая. Назначим IP адреса для компьютеров нашей организации: R1 – 10.0.0.16, R2 – 10.0.0.17, P1 – 10.0.0.20, P2 – 10.0.0.21, D – 10.0.0.24, Z – 10.0.0.25, B1 – 10.0.0.32, B2 – 10.0.0.33, O – 10.0.0.36, W – 10.0.0.38. Такое неравномерное распределение адресов было выбрано для обеспечения возможности использования диапазонов IP адресов для компьютеров разных отделов. Например, компьютеры рекламного отдела принадлежат диапазону 10.0.0.16/30. А компьютеры рекламного отдела, отдела продаж, заместителя директора и директора - диапазону 10.0.0.16/28. Подобная группировка значительно упрощает администрирование и сокращает количество правил для пакетного фильтра. Кроме того, в данном примере оставлены диапазоны IP адресов для дальнейшего расширения организации. Например, если в дальнейшем появятся компьютеры R3 и P3, то им можно будет назначить IP адреса 10.0.0.18 и 10.0.0.22 соответственно. При этом изменения в правилах пакетного фильтра и других конфигурационных файлах будут минимальными. Вся сеть нашей организации в бесклассовой модели адресации будет представлена как 10.0.0.0/26. Широковещательным адресом для нашей локальной сети будет адрес 10.0.0.63. В общем случае при использовании диапазонов частных адресов администратор может использовать любую маску подсети, доступную для выбранного диапазона. Например, в нашем случае можно было бы использовать сеть 10.0.0.0/24 с широковещательным адресом 10.0.0.255. Схема описанной выше локальной сети приведена на рис.5.7. Данная схема реализует архитектуру двухканального компьютера.

Р ис. 5.7 Схема локальной сети организации

В соответствии со всеми приведенными выше требованиями и учитывая назначенные IP адреса, получаем набор для пакетного фильтра компьютера S, приведенный в таблице 5.1. Будем считать, что proxy-сервер работает на TCP порту 3128. Данный proxy-сервер обеспечивает доступ к WWW-серверам глобальной сети Интернет, работающим на TCP порту 80 по протоколу http, и к WWW-серверам, работающим на TCP порту 443 по протоколу HTTPS. Кроме того, будем считать, что вспомогательный DNS-сервер поддерживается провайдером и имеет адрес 195.209.133.2. Компьютер S подключен к локальной сети через сетевой адаптер, а связь с провайдером осуществляется с помощью модема. Далее будем обозначать эти сетевые интерфейсы в нотации операционных систем семейства UNIX, т.е. RL0 и PPP0 соответственно. Приведенная ниже таблица содержит следующие поля: № - номер правила, «протокол» - протокол стека протоколов TCP/IP (ALL для любого протокола, работающего поверх IP), «Отправитель.Адрес» - IP адрес либо диапазон адресов отправителя IP дейтаграммы, «Отправитель.Порт» - TCP или UDP порт отправителя TCP сегмента или UDP дейтаграммы, «Получатель.Адрес» - IP адрес либо диапазон адресов получателя IP дейтаграммы, «Получатель.Порт» - TCP или UDP порт получателя TCP сегмента или UDP дейтаграммы, «Действие» - действие, которое необходимо выполнить, если пакет удовлетворяет правилу (возможные варианты: allow – пропустить пакет, deny – отклонить пакет), «Интерфейс» - сетевой интерфейс, через который отправляется или принимается пакет, «Направление» - направление пакета (IN пакет приходит через данный интерфейс, OUT – пакет отправляется через данный интерфейс).

Таблица 5.1

Правила пакетного фильтра компьютера S.

Прото

кол

Отправитель

Получатель

Действие

Интер

фейс

Направл.

Адрес

Порт

Адрес

Порт

100

ALL

ANY

-

ANY

-

ALLOW

LO0

-

150

ICMP

ANY

-

ANY

-

ALLOW

ANY

-

200

UDP

195.209.133.1

ANY

ANY

53

ALLOW

PPP0

OUT

201

UDP

ANY

53

195.209.133.1

ANY

ALLOW

PPP0

IN

210

UDP

ANY

ANY

195.209.133.1

53

ALLOW

PPP0

IN

211

UDP

195.209.133.1

53

ANY

ANY

ALLOW

PPP0

OUT

220

TCP

195.209.133.2

ANY

195.209.133.1

53

ALLOW

PPP0

IN

221

TCP

195.209.133.1

53

195.209.133.2

ANY

ALLOW

PPP0

OUT

300

TCP

195.209.133.1

ANY

ANY

25

ALLOW

PPP0

OUT

301

TCP

ANY

25

195.209.133.1

ANY

ALLOW

PPP0

IN

310

TCP

ANY

ANY

195.209.133.1

25

ALLOW

PPP0

IN

311

TCP

195.209.133.1

25

ANY

ANY

ALLOW

PPP0

OUT

400

TCP

ANY

ANY

195.209.133.1

80

ALLOW

PPP0

IN

401

TCP

195.209.133.1

80

ANY

ANY

ALLOW

PPP0

OUT

500

TCP

195.209.133.1

ANY

ANY

80,443

ALLOW

PPP0

OUT

501

TCP

ANY

80,443

195.209.133.1

ANY

ALLOW

PPP0

IN

1000

UDP

10.0.0.0/26

ANY

10.0.0.1

53

ALLOW

RL0

IN

1001

UDP

10.0.0.1

53

10.0.0.0/26

ANY

ALLOW

RL0

OUT

1100

TCP

10.0.0.0/26

ANY

10.0.0.1

80

ALLOW

RL0

IN

1101

TCP

10.0.0.1

80

10.0.0.0/26

ANY

ALLOW

RL0

OUT

1200

TCP

10.0.0.38

ANY

10.0.0.1

25,110,21

DENY

RL0

IN

1300

TCP

10.0.0.0/26

ANY

10.0.0.1

25,110

ALLOW

RL0

IN

1301

TCP

10.0.0.1

25,110

10.0.0.0/26

ANY

ALLOW

RL0

OUT

1310

TCP

10.0.0.0/26

ANY

10.0.0.1

20,21

ALLOW

RL0

IN

1311

TCP

10.0.0.1

20,21

10.0.0.0/26

ANY

ALLOW

RL0

OUT

1400

TCP

10.0.0.16/28

ANY

10.0.0.1

3128

ALLOW

RL0

IN

1401

TCP

10.0.0.1

3128

10.0.0.16/28

ANY

ALLOW

RL0

OUT

65535

ALL

ANY

-

ANY

-

DENY

ANY

-

Рассмотрим приведенные выше правила более подробно. Номера правил выбраны произвольно, однако следует отметить, что правила с меньшими номерами обрабатываются раньше. Порядок обработки правил очень важен. По умолчанию в большинстве пакетных фильтров, если пакет удовлетворяет условию правила, то выполняется действие, указанное в правиле, и следующие правила не проверяются. В данном примере правила с нечетными номерами являются «обратными» и обеспечивают прохождение пакетов, которые являются ответами на правила с предыдущим номером. В некоторых пакетных фильтрах данные правила добавляются автоматически, либо существуют специальные опции для автоматической генерации подобных правил. Примером может служить использование динамических правил и опций check-state и keep-state в пакетном фильтре ipfw операционных систем семейства Unix.

Правило 100 обеспечивает прохождение всех IP-дейтаграмм через локальный интерфейс. Данный интерфейс обычно имеет адрес 127.0.0.1 и существует на каждом хосте и шлюзе IP-сети. Он необходим для внутренней работы стека TCP/IP и называется также локальной «заглушкой» или локальной «петлей». Под это правило также попадают все IP-пакеты, имеющие в качестве адресов отправителя и получателя любой из локальных адресов данного компьютера. Для нашего случая это адреса 127.0.0.1, 10.0.0.1 и 195.209.133.1. Другими словами, данное правило разрешает весь «внутренний» трафик компьютера S. Правило 150 обеспечивает работу межсетевого протокола управляющих сообщений ICMP. Данный протокол необходим для корректной работы таких утилит, как ping и traceroute, а также для работы с сообщениями о недоступности хоста, сети и порта, контроля за перегрузкой сети и т.д. Иногда целесообразно запретить некоторые из этих сообщений, например, сообщение с типом 5 – сообщение о переадресации. Правила 200 и 201 разрешают нашему DNS-серверу запросы к другим DNS-серверам и необходимы для корректной работы нашего кэширующего DNS-сервера. Правила 210 и 211 разрешают запросы других DNS-серверов к нашему основному DNS-серверу. Правила 220 и 221 разрешают зонную пересылку между вспомогательным DNS-сервером провайдера, обслуживающим зону myorg.ru, и нашим основным DNS-сервером. Правила 300 и 301 разрешают нашему SMTP-серверу отправлять почту на другие сервера. Правила 310 и 311 разрешают другим SMTP-серверам присылать почту нашему серверу. Правила 400 и 401 обеспечивают доступ к WWW-серверу организации из сети Интернет. Правила 500 и 501 обеспечивают доступ proxy-сервера к WEB- и HTTPS-серверам глобальной сети Интернет. Далее идут правила для компьютеров локальной сети. Правила 1000 и 1001 обеспечивают доступ всех компьютеров локальной сети к DNS-серверу. Правила 1100 и 1101 обеспечивают доступ всех компьютеров локальной сети к WWW-серверу организации. Правило 1200 следует отметить особо. Это правило запрещает компьютеру W доступ к почтовым серверам SMTP и POP3, а также к FTP-серверу. Следующие правила 1300, 1310 будут разрешать доступ к этим серверам для всех компьютеров локальной сети, к которым конечно относится и компьютер W. Однако, поскольку правило 1200 будет обработано первым, то в случае совпадения остальные правила обработаны не будут и доступ к почтовым и FTP серверам организации для компьютера W будет запрещен. Отметим также, что для этого правила нет «обратного». Поскольку будет запрещен первый же TCP-сегмент с флагом SYN отправленный компьютером W, который инициирует установку TCP-соединения. Соответственно TCP модуль компьютера S даже не будет знать о желании компьютера W установить соединение на порты 21,25,110 и поэтому не будет генерировать никаких ответных пакетов. Правила 1300 и 1301 разрешают доступ к SMTP- и POP3-серверу для всех компьютеров локальной сети. Правила 1310 и 1311 обеспечивают работу всех компьютеров локальной сети с локальным FTP-сервером. В данном случае разрешается только активный режим работы FTP-сервера. Порт 20 не был запрещен в правиле 1200, поскольку он используется только при установке соединения данных. А данное соединение не может быть установлено без предварительной установки соединения команд на порту 21. Правила 1400 и 1401 разрешают доступ к proxy-серверу для компьютеров R1,R2,P1,P2,Z и D. В общем случае эти правила разрешают доступ к proxy-серверу для компьютеров из диапазона 10.0.0.16 – 10.0.0.31. И, наконец, правило 65535 запрещает прохождение всех остальных IP-пакетов.

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

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

5.4. Вывод

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]