Межсетевой экран приложений
Межсетевой экран приложений (англ. Application firewall) — разновидность сетевого экрана, контролирующая входящий и исходящий трафик приложений или сервисов. Он блокирует входящие, исходящие сообщения и вызовы системных сервисов, которые не соответствуют политике безопасности. Работает на уровне прикладного слоя англ. OSI model и предназначен для контроля всего сетевого трафика на этом уровне. В отличие от обычных межсетевых экранов с отслеживанием состояния (stateful firewall), которые не могут детально управлять связанным с конкретным приложением сетевым трафиком, межсетевой экран приложений позволяет контролировать работу определённых приложений или сервисов. Различают сетевые и компьютерные межсетевые экраны приложений.
Сетевой межсетевой экран приложений
Сетевой межсетевой экран приложений функционирует на прикладном уровне стека сетевых протоколов и нередко известен как прокси экран или обратный прокси-экран. Иногда их называют специализированными межсетевыми экранами приложений (например, сетевой межсетевой экран приложений). Реализация возможна как в виде программного обеспечения, так и в виде отдельного сетевого аппаратного устройства. Как правило, различные программные реализации на стороне клиента или сервера обеспечивают инспектирование сетевого трафика прокси-сервером до его передачи конечному пользователю или серверу. Поскольку эти экраны действуют на прикладном уровне, они способны анализировать содержимое трафика и блокировать вредоносные потоки — например, посещение вредоносных веб-сайтов, вирусы или нежелательные клиентские сценарии.
В современных межсетевых экранах приложений шифрование данных может осуществляться не на сервере, а при обнаружении вторжений либо вредоносной активности блокируются данные на этапе ввода/вывода приложения. Кроме того, они управляют аутентификацией, централизуют управление и могут блокировать контент, нарушающий политики безопасности.
В Purdue University, Джин Спэффорд, Билл Чесвик и Маркус Ранум стали авторами концепции межсетевого экрана третьего поколения — экранов прикладного уровня. Разработка Маркуса Ранума (совместно с Полом Викси, Брайаном Ридом и Джеффом Могулом) легла в основу первого коммерческого продукта — DEC SEAL, реализованного Джеффом Маллиганом. Первый крупный контракт DEC был заключён 13 июня 1991 года с химической компанией на Восточном побережье США.
В рамках контракта DARPA, Маркус Ранум, Вэй Сюй и Питер Черчьярд разработали межсетевой экран Firewall Toolkit (FWTK), который был открыт для лицензирования 1 октября 1993 года. Целями свободного распространения FWTK были: создание общей платформы для разработки новых систем безопасности на основе корпоративного опыта, облегчение будущих разработок, расширение границ и надёжности экранов. Однако FWTK был лишь простым прокси на уровне приложений, требующим вмешательства пользователя.
В 1994 году Вэй Сюй усовершенствовал FWTK, интегрировав фильтрацию состояния IP и упростив работу с сокетами. Итогом стала первая прозрачная реализация межсетевого экрана, известная как Gauntlet — ранний представитель третьего поколения. Gauntlet считался одним из лучших экранов приложений в период с 1995 по 1998 годы до приобретения Network Associates Inc (NAI).
Ключевая особенность фильтрации на прикладном уровне — способность интерпретировать отдельные приложения и протоколы (например, FTP, DNS или HTTP), выявлять злоупотребления и нестандартные попытки работы протоколов на нестандартных портах.
Компьютерный межсетевой экран приложений
Компьютерный межсетевой экран приложений может отслеживать любые входные и выходные данные либо вызовы системных сервисов между приложениями. Контроль производится не только за сетевым стеком, но и за данными, передаваемыми с системными вызовами. Подобные экраны обеспечивают защиту только локальных приложений, запущенных на одном компьютере.
Межсетевые экраны приложений принимают решение о разрешении или блокировании соединений процессов, слушая обращения к сокетам между прикладным уровнем и нижними уровнями OSI-модели. Такие экраны также могут называться сокетными фильтрами. Они работают аналогично пакетному фильтру, однако фильтрация основана не на портах, а на уровне процессов. Обычно применяются политики и разрешения для приложений, которым ещё не был получен входящий трафик. Редко используются самостоятельно без поддержки фильтрации на сетевом уровне.
Кроме того, межсетевые экраны приложений дополнительно проверяют идентификаторы пакетов, сверяя их с набором протокольных ограничений для локальных процессов при передаче данных. Комплексность фильтрации увеличивается для стандартных сервисов (например, сервисы обмена файлами), поскольку набор правил для каждого приложения ограничен количеством возможных взаимодействий. Такие экраны уязвимы перед атаками на память процесса и сложными методами эксплуатации.
Компьютерные межсетевые экраны приложений могут обладать возможностями сетевых экранов этого типа.
Системы защищённых сред (англ. sandboxing) могут ограничивать доступ приложений к файлам, процессам и сети. Коммерческие средства оснащения песочницей существуют для операционных систем Windows и UNIX.
Примеры
Для лучшего понимания приведены примеры специфических межсетевых экранов приложений.
Реализации
Существует множество решений межсетевых экранов приложений — как открытых, так и коммерческих.
Mac OS X содержит реализацию среды контроля доступа TrustedBSD MAC, заимствованную из FreeBSD. TrustedBSD MAC, как и AppArmor для некоторых дистрибутивов Linux, применяется для ограничения работы определённых сервисов (например, mDNSresponder). С выходом Mac OS X Leopard механизм TrustedBSD MAC обеспечивает базовый слой защиты сетевых сервисов по умолчанию.
Начиная с Leopard, реализована функция межсетевого экрана приложений, управляемая из настроек безопасности — с использованием подписанных кодов программ, внесённых в белый список. Обычно такой экран контролирует только входящие соединения, перенаправляя их разрешённым программам.
Ниже перечислены пакеты для Linux, предоставляющие возможность фильтрации трафика и контроля на уровне приложений:
- Kerio Control (коммерческий продукт)
- AppArmor
- ModSecurity — работает под Windows, Mac OS X, Solaris и другими версиями Unix. Создан для интеграции с веб-серверами IIS, Apache2 и NGINX.
- Systrace
- Zorp firewall
- WinGate
Некоторые решения доступны как аппаратные устройства либо в виде виртуальных систем, работающих поверх базового серверного оборудования.
- Fortinet NextGeneration Firewall
- Meraki
- F5 Networks BIG-IP Application Security Manager
- AIONCLOUD
- A10 Networks Web Application Firewall
- Barracuda Networks Web Application Firewall/Load Balancer ADC
- Monitorapp AIWAF
- Check Point
- Citrix NetScaler (Citrix Systems)
- Cloudbric
- CloudFlare
- Imperva
- KEMP Technologies
- Penta Security
- Smoothwall
- Untangle
- WatchGuard
Специализированные межсетевые экраны приложений
Специализированные межсетевые экраны приложений предлагаются для защиты и управления отдельными приложениями; наиболее яркие представители этого класса предназначены для веб-приложений.
Крупные атаки на веб-серверы, например, атака с использованием PHF CGI в 1996 году, стимулировали исследования по разработке специализированных моделей безопасности для веб-приложений. Возникновение технологий, ныне известных как web application firewall (WAF), датируется этим периодом. Первые коммерческие WAF появились в 1999 году, среди которых — AppShield компании Perfecto Technologies (переименованной в Sanctum в 2004 году, позже приобретённой фирмой Watchfire). Эти продукты ориентировались на защиту электронной коммерции и борьбу с незаконным содержимым интернет-страниц. Другие ранние решения, такие как NetContinuum (поглощён Barracuda Networks в 2007 году), внедряли концепцию преднастроенных «безопасных серверов». Ранние игроки рынка сталкивались с недостатком зрелых механизмов создания политик, высокой стоимостью и сложностями эксплуатации, однако спрос на подобные продукты постоянно рос.
В 2002 году был запущен открытый проект ModSecurity (Thinking Stone, затем Breach Security), стремившийся распространить WAF благодаря решению ряда существующих ограничений и публикации репозитория унифицированных правил, основанных на рекомендациях OASIS WAS TC. Это позволило создать общепринятые, документированные и стандартизированные механизмы защиты.
В 2003 году работа WAS TC способствовала появлению проекта OWASP Top 10 — ежегодного рейтинга типовых уязвимостей веб-приложений, используемого как контрольный список для средств защиты, включая WAF. Данный стандарт стал широко применяться в отрасли.
С 2004 года ведущие поставщики сетевых решений, специализирующихся на управлении трафиком и безопасности, начали выходить на рынок WAF методом слияний и приобретений. В числе наиболее значимых событий: интеграция TrafficShield (Magnifire WebSystems) в систему управления трафиком Big-IP от F5 и покупка F5 компании AppShield в том же году (впоследствии эта технология была снята с поддержки). Процесс консолидации продолжился в 2006 году приобретением Protegrity компании Kavado и поглощением Teros корпорацией Citrix Systems.
До этого рынок WAF занимали преимущественно узкоспециализированные провайдеры безопасности на прикладном уровне; затем продукты WAF были интегрированы в более широкие системы (балансировщики нагрузки, серверы приложений, сетевые экраны и др.), что расширило их функциональность и повысило сложность выбора для конечных пользователей. Решения оставались недешёвыми и не до конца понятными рынку.
В 2006 году был учреждён Консорциум по безопасности веб-приложений (Web Application Security Consortium) с целью повышения прозрачности WAF-рынка. Проект критериев оценки WAF (WAFEC) объединил поставщиков и исследователей отрасли для выработки стандартов и развития технологий.
Интерес к WAF возрос с учреждением в 2006 году Совета по стандартам безопасности платёжных карточек (PCI Security Standards Council), объединившего крупнейшие платёжные системы (AMEX, Visa, MasterCard и др.) для выработки правил и мер по снижению случаев мошенничества. PCI Data Security Standard потребовал обязательной защиты всех веб-приложений (например, путём применения WAF или защищённой разработки). Программа OWASP Top 10 легла в основу этих требований.
С развитием виртуализации и облачных сервисов появилась потребность в масштабируемых WAF-решениях.
К 2010 году рынок WAF превысил 200 миллионов долларов по оценке Forrester. В отчёте "Web Application Firewall 2010 and Beyond" аналитик Chenxi Wang прогнозировал продолжение ежегодного роста рынка на 20 % и увеличивающуюся доступность решений для среднего и крупного бизнеса. Среди лидеров рынка назывался Imperva.
Распределённый межсетевой экран для веб-приложений (dWARF) является программным WAF, отдельные компоненты которого развертываются в различных точках сети. Благодаря этому нагрузка на аппаратные ресурсы не сконцентрирована в одной точке, и масштабирование происходит свободно и динамично — можно отдельно добавлять и удалять компоненты системы. Такой подход особенно эффективен для больших облачных инфраструктур с публичной, частной или гибридной архитектурой.
Облачные WAF являются представителями технологии защиты веб-приложений, не требующей внесения изменений в аппаратное обеспечение или ПО. Провайдеры часто обеспечивают перенаправление всего веб-трафика через облачный WAF после простого изменения DNS. Обычно такие системы централизованы, а информация о новых угрозах мгновенно распространяется среди всех пользователей, что усиливает коллективную защиту. Решения гибкие и масштабируемые, как и другие облачные сервисы, а плата взимается по мере увеличения трафика. Подход подходит для облачных приложений и небольших или средних веб-сайтов, которым требуется защита с минимальным вмешательством.
- Bekchy
- CloudFlare
- Sucuri
Примечания
- Luis F. Medina (2003). The Weakest Security Link Series (1-е изд.). IUniverse. С. 54. ISBN 978-0-595-26494-0.
- Software Firewalls: Made of Straw? Part 1 of 2 (англ.). Symantec.com. Symantec Connect Community (29 июня 2010). Дата обращения: 19 июня 2024. Архивировано 7 ноября 2017 года.
- Firewall your applications with AppArmor (англ.). Linux.com (15 февраля 2010). Дата обращения: 19 июня 2024. Архивировано 30 августа 2011 года.
- The TrustedBSD Project (англ.). TrustedBSD (21 ноября 2008). Дата обращения: 19 июня 2024. Архивировано 23 января 2010 года.
- Mandatory Access Control (MAC) Framework (англ.). TrustedBSD. Дата обращения: 19 июня 2024. Архивировано 23 января 2010 года.
- CERT Advisory CA-1996-06 Vulnerability in NCSA/Apache CGI example code (англ.). CERT Coordination Center. Carnegie Mellon University (20 марта 1996). Дата обращения: 19 июня 2024. Архивировано 7 ноября 2013 года.
- Messmer, Ellen. New tool blocks wily e-comm hacker tricks (англ.), CNN (7 September 1999). Архивировано 29 мая 2010 года. Дата обращения: 19 июня 2024.
- Vijayan, Jaikumar. Q&A: Watchfire CTO sees Sanctum acquisition as a good fit (англ.), Computerworld (4 August 2004). Архивировано 8 октября 2012 года. Дата обращения: 19 июня 2024.
- Kirk, Jeremy. Breach Security acquires rival firewall ModSecurity (англ.), InfoWorld (25 September 2006). Архивировано 15 апреля 2014 года. Дата обращения: 19 июня 2024.
- Greene, Tim. F5 buys Magnifire for $29 million (англ.), Network World (1 June 2004). Архивировано 4 июля 2013 года. Дата обращения: 19 июня 2024.
- Rosencrance, Linda. Protegrity acquires Web apps security vendor Kavado (англ.), Computerworld (19 August 2005). Архивировано 8 октября 2012 года. Дата обращения: 19 июня 2024.
- Rogers, James Citrix Picks Up Teros (англ.). Network Computing (15 ноября 2005). Дата обращения: 19 июня 2024. Архивировано 5 марта 2012 года.