Смекни!
smekni.com

Безопасность Internet (стр. 4 из 8)

Первое правило позволяет пропускать пакеты TCP из сети Internet от любого источника с номером порта большим, чем 1023, к получателю с адресом 123.4.5.6 в порт 23. Порт 23 связан с сервером TELNET, а все клиенты TELNET должны иметь неприви­легированные порты с номерами не ниже 1024.

Второе и третье правила работают аналогично и разреша­ют передачу пакетов к получателям с адресами 123.4.5.7 и 123.4.5.8 в порт 25, используемый SMTP.

Четвертое правило пропускает пакеты к NNTP-серверу се­ти, но только от отправителя с адресом 129.6.48.254 к получателю с адресом 123.4.5.9 с портом назначения 119 (129.6.48.254 -единственный NNTP-сервер, от которого внутренняя сеть получает новости, поэтому доступ к сети для выполнения протокола NNTP ограничен только этой системой).

Пятое правило разрешает трафик NTP, который использу­ет протокол UDP вместо TCP. от любого источника к любому полу­чателю внутренней сети.

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

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

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

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

·сравнительно невысокую стоимость;

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

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

Недостатками фильтрующих маршрутизаторов являются:

·внутренняя сеть видна (маршрутизируется) из сети Internet;

·правила фильтрации пакетов трудны в описании и требуют очень хороших знаний технологий TCP и UDP;

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

·аутентификацию с использованием IP-адреса можно обмануть путем подмены IP-адреса (атакующая система выдает себя за другую, используя ее IP-адрес);

· отсутствует аутентификация на пользовательском уровне.

Шлюзы сетевого уровня

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

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

Когда авторизированный клиент запрашивает некоторый сервис, шлюз принимает этот запрос, проверяя, удовлетворяет ли этот клиент базовым критериям фильтрации (например, может ли DNS-сервер определить IP-адрес клиента и ассоциированное с ним имя). Затем, действуя от имени клиента, шлюз устанавливает соединение с внешним хост-компьютером и следит за выполнением процедуры квитирования связи по протоколу TCP. Эта проце­дура состоит из обмена TCP-пакетами, которые помечаются фла­гами SYN (синхронизировать) и АСК (подтвердить).

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

Далее осуществляется обратная процедура: хост-компьютер посылает клиенту пакет SYN с исходным числом (например, 2000), а клиент подтверждает его получение передачей пакета АСК, содержащего число 2001. На этом процесс квитирования связи завершается.

Шлюз сетевого уровня признает запрошенное соединение допустимым только в том случае, если при выполнении процедуры квитирования связи флаги SYN и АСК, а также числа, содержа­щиеся в TCP-пакетах, оказываются логически связанными меж­ду собой.

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

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

Фактически большинство шлюзов сетевого уровня не яв­ляются самостоятельными продуктами, а поставляются в комплек­те со шлюзами прикладного уровня. Примерами таких шлюзов яв­ляются Gauntlet Internet Firewall компании Trusted Information Systems, Alta Vista Firewall компании DEC и ANS Interlock компании ANS. Например, Alta Vista Firewall использует канальные посред­ники прикладного уровня для каждой из шести служб TCP/IP, к ко­торым относятся, в частности, FTP, HTTP (Hyper Text Transport Protocol) и telnet. Кроме того, межсетевой экран компании DEC обеспечивает шлюз сетевого уровня, поддерживающий другие общедоступные службы TCP/IP, такие как Gopher и SMTP, для которых межсетевой экран не предоставляет посредников приклад­ного уровня.

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

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

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

Шлюзы прикладного уровня

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