Эта статья является кандидатом в добротные статьи

Межсетевой экран

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Межсетевой экран на границе сетевого периметра.

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

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

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

Другие названия[править | править вики-текст]

Брандма́уэр (нем. Brandmauer) — заимствованный из немецкого языка термин.

Файрво́л (англ. Firewall) — заимствованный из английского языка термин.

История[править | править вики-текст]

Первые устройства, выполняющие функцию фильтрации сетевого трафика, появились в конце 1980-х, когда Интернет был достаточно новой технологией и не использовался глобально. Этими устройствами были маршрутизаторы. Именно их можно считать первой программно-аппаратной реализацией межсетевого экрана. Первые программные реализации файрвола появились существенно позже и были гораздо моложе, чем антивирус. Это доказывают различные хронологические источники. Упоминание о проекте Netfilter/iptables (одном из первых программных файрволов, встроенном в Linux версий 2.4, 2.6) начинается с 1998 года. Такое позднее появление вполне объяснимо, так как для многих пользователей компьютеров долгое время было не понятно зачем использовать файрвол, когда антивирус решал проблемы защиты их компьютеров от вредоносных программ. Помимо прочего, файрволы нуждались в тонкой настройке.[4]

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

Фильтрация трафика[править | править вики-текст]

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

Существует два принципа обработки поступающего трафика. Первый принцип гласит: "Что явно не запрещено, то разрешено". В данном случае, если межсетевой экран получил пакет, не подпадающий ни под одно правило, то он передается далее. Противоположный принцип — "Что явно не разрешено, то запрещено" — гарантирует гораздо большую защищенность, так как он запрещает весь трафик, который явно не разрешен правилами. Однако, этот принцип оборачивается дополнительной нагрузкой на администратора.[6][7]

В конечном счете, межсетевые экраны выполняют над поступающим трафиком одну из двух операций: пропустить пакет далее (allow) или отбросить пакет (deny). Некоторые межсетевые экраны имеют еще одну операцию — reject, при которой пакет отбрасывается, но отправителю сообщается о недоступности сервиса, доступ к которому он пытался получить. В противовес этому, при операции deny отправитель не информируется о недоступности сервиса, что является более безопасным.[6][7]

Классификация межсетевых экранов[править | править вики-текст]

Схематическое изображение классификации межсетевых экранов на основе сетевой модели OSI

До сих пор не существует единой и общепризнанной классификации межсетевых экранов. Однако, в большинстве случаев, поддерживаемый уровень сетевой модели OSI является основной характеристикой при их классификации. Учитывая данную модель, различают следующие типы межсетевых экранов:[8][9][10]

  1. Управляемые коммутаторы.
  2. Пакетные фильтры.
  3. Шлюзы сеансового уровня.
  4. Посредники прикладного уровня.
  5. Инспекторы состояния.

Управляемые коммутаторы[править | править вики-текст]

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

Коммутаторы многих производителей, таких как Cisco, Nortel, 3Com, позволяют осуществлять фильтрацию трафика на основе MAC-адресов, содержащихся в заголовках фреймов. Наиболее эффективно данная возможность реализована в решениях компании Cisco, в частности в семействе коммутаторов Catalyst, которые обладают механизмом Port Security. Однако, надо заметить, что практически все современные сетевые карты позволяют программно изменять их MAC-адреса, что приводит к неэффективности такого метода фильтрации. Поэтому существуют и другие параметры, которые могут использоваться в качестве признака фильтрации. Например — VLAN. Технология виртуальных локальных сетей (англ. Virtual Local Area Network) позволяет создавать группы хостов, трафик которых полностью изолирован от других узлов сети, что позволяет фильтровать его.[11]

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

Пакетные фильтры[править | править вики-текст]

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

В качестве параметров, используемых при анализе заголовков сетевых пакетов, могут использоваться:[8]

  • Тип транспортного протокола.
  • Поля служебных заголовков протоколов сетевого и транспортного уровней.
  • Порт источника и получателя.

Достаточно часто приходиться фильтровать фрагментированные пакеты, что делает определение некоторых атак более трудной. Многие сетевые атаки используют данную уязвимость межсетевых экранов, выдавая пакеты, содержащие запрещенные данные, за фрагменты другого, доверенного пакета. Одним из способов борьбы с данным типом атак является конфигурирование межсетевого экрана таким образом, чтобы блокировать фрагментированные пакеты.[14] Также, некоторые межсетевые экраны «могут дефрагментировать пакеты перед тем, как пересылать их во внутреннюю сеть. Следует понимать, что это требует дополнительных ресурсов самого межсетевого экрана, особенно памяти. Такая функциональность должна использоваться очень обоснованно, иначе межсетевой экран легко может стать объектом DoS-атаки[15]

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

  • Пограничные маршрутизаторы.
  • ОС.

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

Шлюзы сеансового уровня[править | править вики-текст]

Шлюз сеансового уровня исключает прямое взаимодействие внешних хостов с узлом, расположенным в локальной сети, выступая в качестве посредника (англ. proxy), который реагирует на все входящие пакеты, проверяя их допустимость на основании текущей фазы соединения. Таким образом, шлюз сеансового уровня гарантирует, что ни один сетевой пакет не будет пропущен, если он не принадлежит ранее установленному соединению. Если пакеты передаются в рамках одной сессии, шлюз сеансового уровня просто копирует их, не осуществляя дополнительной фильтрации. Как только авторизованное соединение установлено, шлюз помещает в специальную таблицу соединений соответствующую информацию (адреса отправителя и получателя, состояние соединения и т.д.). Как только сеанс связи завершается, запись о нем удаляется из этой таблицы. Все последующие пакеты, которые могут быть сформированы злоумышленником и "как бы относятся" к уже завершенному соединению, отбрасываются.[19]

Достоинство данной технологии, ярким представителем которой является SOCKS, в том, что она исключает прямой контакт между двумя узлами. Адрес шлюза сеансового уровня является единственным элементом, который связывает внешнюю сеть с внутренними защищаемыми ресурсами. Кроме того, поскольку соединение между узлами устанавливается только после проверки его допустимости, то тем самым шлюз предотвращает возможность реализации DoS-атаки, присущей пакетным фильтрам.[20]

Несмотря на кажущуюся эффективность этой технологии, у нее есть один очень серьезный недостаток — невозможность проверки содержания поля данных. Тем самым, злоумышленнику представляется возможность передачи в защищаемую сеть троянских коней.[21]

Посредники прикладного уровня[править | править вики-текст]

Посредники прикладного уровня, также, как и шлюзы сеансового уровня, осуществляют посредническую функцию между двумя узлами, исключая их непосредственное взаимодействие, однако они способны " понимать" контекст передаваемого трафика, так как функционируют на прикладном уровне. Межсетевые экраны, построенные по этой технологии, содержат посредников приложений (англ. application proxy), которые, "зная" как функционирует то или иное приложение, могут обрабатывать его трафик. Например, межсетевой экран прикладного уровня может определить, что почтовое сообщение содержит неразрешенный тип присоединенного файла (такой как выполняемый файл). Также, он может, например, разрешать в исходящем трафике команду GET (получение файла) протокола FTP и запрещать команду PUT (отправка файла) и наоборот. Данная возможность также позволяет разрешать или запрещать передавать веб-страницы в зависимости от конкретных типов содержимого, такого как Java или ActiveX, или проверять, что SSL сертификаты подписаны конкретным СА. Межсетевые экраны прикладного уровня могут предоставлять возможность определять и блокировать несуществующие команды или нежелательную последовательность команд, что часто означает атаку переполнения буфера, DoS-атаку или другие атаки, связанные с прикладными протоколами, таким как HTTP. Также, межсетевые экраны прикладного уровня имеют возможность выполнять аутентификацию пользователя. [22] «Другая возможность состоит в проверке входных данных для отдельных команд, такой как минимальная и максимальная длина аргументов. Например, аргумент имени пользователя длиной в 1000 символов является подозрительным или если он содержит бинарные данные.»[23] Межсетевые экраны прикладного уровня доступны для многих протоколов, включая НТТР, почтовые (SMTP, POP, IMAP) и VoIP.[23]

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

Инспекторы состояния[править | править вики-текст]

Каждый из названных классов межсетевых экранов обладает рядом достоинств и может применяться для защиты корпоративных сетей. Однако куда более эффективным было бы объединить все названные классы межсетевых экранов в одном устройстве. Что и было сделано в инспекторах состояний, которые совмещают в себе все достоинства названных выше типов экранов, начиная анализ трафика с сетевого и заканчивая прикладным уровнями, что позволяет совместить в одном устройстве казалось бы несовместимые вещи - большую производительность и высокую защищенность. Эти межсетевые экраны позволяют контролировать:[25]

  • Каждый передаваемый пакет — на основе имеющейся таблицы правил;
  • Каждую сессию — на основе таблицы состояний;
  • Каждое приложение — на основе разработанных посредников.

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

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

Реализация[править | править вики-текст]

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

В настоящее время чаще используется программное решение, которое на первый взгляд выглядит более привлекательным. Это связано с тем, что для его применения достаточно, казалось бы, только приобрести программное обеспечение межсетевого экрана и установить на любой компьютер, имеющийся в организации. Однако, на практике далеко не всегда в организации находится свободный компьютер, да еще и удовлетворяющий достаточно высоким требованиям по системным ресурсам. После того, как компьютер все-таки найден (чаще всего - куплен), следует процесс установки и настройки операционной системы, а также, непосредственно, программного обеспечения межсетевого экрана. Нетрудно заметить, что использование обычного персонального компьютера далеко не так просто, как кажется на первый взгляд. Именно поэтому все большее распространение стали получать специализированные программно-аппаратные решения, называемые security appliance. Они поставляются, как специальные программно-аппаратные комплексы, использующие специализированные или обычные операционные системы (как правило, на базе FreeBSD или Linux), "урезанные" для выполнения только заданных функций. К достоинству таких решений можно отнести:[27]

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

Ограниченность анализа межсетевого экрана[править | править вики-текст]

Межсетевой экран эффективен только когда он может анализировать проходящий трафик. Если он не может "понимать" проходящий через него трафик — он не может осмысленно разрешить или запретить его, вне зависимости от выбранной технологии. Например, многие сетевые протоколы, такие как IPsec, TLS, SSH и SRTP, используют криптографию, чтобы скрыть содержимое, из-за чего их трафик не может быть проинтерпретирован. «Межсетевые экраны не могут также читать зашифрованные прикладные данные, например, если почтовое сообщение зашифровано с помощью протоколов S/MIME или OpenPGP. Другим примером ограничения является то, что многие межсетевые экраны не понимают туннелированный трафик, даже если он не зашифрован.» [28] «Во всех этих случаях правила межсетевого экрана должны определить, что делать с трафиком, если они не могут его "понять".»[28]

Литература[править | править вики-текст]

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

  1. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 22. — ISBN 5-7038-2059-6.
  2. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 22—25. — ISBN 5-7038-2059-6.
  3. Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 43. — ISBN 5-94774-603-4.
  4. K. Ingham, S. Forrest A History and Survey of Network Firewalls (англ.). — P. 2.
  5. K. Ingham, S. Forrest A History and Survey of Network Firewalls (англ.). — P. 2.
  6. 1 2 3 Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 131. — ISBN 5-94774-603-4.
  7. 1 2 3 Шаньгин В. Ф. Защита информации в компьютерных системах и сетях. — «ИНФРА-М», 2011. — С. 195. — ISBN 978-5-16-003132-3.
  8. 1 2 Дэвид В. Чепмен-мл., Энди Фокс. Брандмауэры Cisco Secure PIX. — «Вильямс», 2003. — С. 30. — ISBN 5-8459-0463-3.
  9. 1 2 Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 48. — ISBN 5-7038-2059-6.
  10. Шаньгин В. Ф. Защита информации в компьютерных системах и сетях. — «ИНФРА-М», 2011. — С. 194. — ISBN 978-5-16-003132-3.
  11. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 50. — ISBN 5-7038-2059-6.
  12. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 52. — ISBN 5-7038-2059-6.
  13. Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 52. — ISBN 5-94774-603-4.
  14. Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 51—56. — ISBN 5-94774-603-4.
  15. Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 51 — 56. — ISBN 5-94774-603-4.
  16. Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 53. — ISBN 5-94774-603-4.
  17. Дэвид В. Чепмен-мл., Энди Фокс. Брандмауэры Cisco Secure PIX. — «Вильямс», 2003. — С. 30—31. — ISBN 5-8459-0463-3.
  18. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 54. — ISBN 5-7038-2059-6.
  19. Дэвид В. Чепмен-мл., Энди Фокс. Брандмауэры Cisco Secure PIX. — «Вильямс», 2003. — С. 31. — ISBN 5-8459-0463-3.
  20. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 58. — ISBN 5-7038-2059-6.
  21. Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 63—64. — ISBN 5-94774-603-4.
  22. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 55—56. — ISBN 5-7038-2059-6.
  23. 1 2 Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 59. — ISBN 5-94774-603-4.
  24. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 56. — ISBN 5-7038-2059-6.
  25. Лебедь С. В. Межсетевое экранирование. Теория и практика защиты внешнего периметра. — «МГТУ им. Н. Э. Баумана», 2002. — С. 58-61. — ISBN 5-7038-2059-6.
  26. Дэвид В. Чепмен-мл., Энди Фокс. Брандмауэры Cisco Secure PIX. — «Вильямс», 2003. — С. 32. — ISBN 5-8459-0463-3.
  27. Шаньгин В. Ф. Защита информации в компьютерных системах и сетях. — «ИНФРА-М», 2011. — С. 207. — ISBN 978-5-16-003132-3.
  28. 1 2 Лапонина О. Р. Межсетевое экранирование. — «Бином», 2014. — С. 73. — ISBN 5-94774-603-4.

Ссылки[править | править вики-текст]