Межсетевые экраны, системы предотвращения вторжений и брандмауэры для приложений Web представляют собой базовые компоненты стратегии обеспечения безопасности в вычислительных центрах, которая состоит из трех эшелонов обороны и призвана обеспечить максимально возможную защиту для приложений на базе Web. В статье рассматривается каждая из перечисленных технологий и оценивается ее роль в деле защиты приложений Web.
Защита приложений Web на предприятиях и связанных с ними баз данных приобретает все большее значение для предотвращения атак из Internet. Если когда-то удовлетворительную защиту от угроз из Internet мог предложить правильно сконфигурированный межсетевой экран, то впоследствии широкое распространение получили «черви», работавшие на уровне приложений, что потребовало использования эффективных систем предотвращения вторжений (Intrusion Prevention System, IPS). Ныне появились новые угрозы, которые способны обойти IPS благодаря стратегиям нападений, нацеленным на приложения Web. Для того чтобы достойно противостоять опасности, во многих крупных вычислительных центрах применяются брандмауэры для приложений Web.
МЕЖСЕТЕВЫЕ ЭКРАНЫ — ПЕРВАЯ ЛИНИЯ ОБОРОНЫ
Уже более 15 лет межсетевые экраны относятся к стандартному оснащению сетевой инфраструктуры и представляют собой первую линию обороны. Если, к примеру, приложение Web выполняется на каком-либо сервере, расположенном в демилитаризованной зоне или центре данных, то экран следит за тем, чтобы поступающие из-за пределов внутренней локальной сети запросы направлялись только на порты HTTP Port 80 и HTTPS Port 443. Без межсетевого экрана ресурсами сервера Web легко могли бы злоупотреблять хакеры — при помощи сканеров портов или протоколов удаленного доступа, например Telnet.
Однако в большинстве случаев межсетевые экраны не предлагают никаких функций для исследования пакетов прикладного уровня (уровня 7, или уровня полезных данных) в потоках данных. Злоумышленники научились использовать это слабое место в свою пользу, внедряя осуществляемые на уровне приложений атаки в не вызывающие подозрений запросы к Web. «Черви» на базе Web относятся к первым примерам данного вида опасностей. Code Red, Nimda и Slapper — вот наиболее известные из них, нанесшие значительный урон пользователям по всему миру.
СИСТЕМЫ IPS — ВТОРАЯ ЛИНИЯ ОБОРОНЫ
Системы предотвращения вторжений останавливают «червей» и отражают другие атаки, которые наносят удар в слабые места коммерческого и бесплатного программного обеспечения, как, например, серверы Web (IIS, Apache и т. д.) и серверы баз данных (Oracle, MS SQL и т. п.). Система IPS проверяет содержимое пакетов на уровне приложений и сравнивает его со списком известных шаблонов данных (сигнатур).
Все же и системы IPS обладают лишь ограниченным кругом возможностей: из-за зависимости от сигнатур они беспомощны против нападений через «бреши» в приложениях Web известных производителей (SAP, Oracle, Peoplesoft и т. д.) и в самостоятельно написанных приложениях Web (в приложениях .asp или .php). Распространенным примером подобной угрозы является так называемая «инъекция SQL», когда злоумышленник находит в модуле ввода приложения (Input Validation — проверка правильности ввода) «брешь» в системе безопасности, которая позволила бы ему заменять правильные вводимые данные на специальные команды, адресованные базе данных. Эти команды передаются серверу базы данных и здесь уже выполняются с полномочиями программы.
ОПАСНОСТЬ «ИНЪЕКЦИЙ SQL»
С помощью «инъекции SQL» хакер может похитить номера кредитных карт, имена пользователей и пароли или даже получить неограниченный доступ ко всей базе данных.
Подобно атакам с использованием «червей», атаки на приложения Web с точки зрения протоколов выглядят как законные потоки данных HTTP, поэтому межсетевые экраны не способны их распознать. Однако в отличие от «червей» они не используют какое-либо известное слабое место и потому не могут быть прерваны при помощи сигнатуры. Некоторые производители IPS делают акцент на том, что их системы способны отражать часть атак на приложения Web, проверяя сигнатуры, которые содержат часто используемые во время атак на Web последовательности символов, к примеру union, select или script.
Однако эти слова нередко встречаются и на совершенно обычных сайтах Web, которые в дальнейшем будут ошибочно классифицированы как опасные. Таким образом, в большинстве случаев функция сигнатур отключается. Но даже если она остается активной, ее легко обойти при помощи известных технологий.
БРАНДМАУЭРЫ ДЛЯ ПРИЛОЖЕНИЙ WEB — ТРЕТЬЯ ЛИНИЯ ОБОРОНЫ
Рисунок 1. Брандмауэры для приложений Web защищают как от внешних, так и от внутренних атак.
Брандмауэр для приложений Web (Web Application Firewall, WAF) призван противостоять растущему числу злоумышленников, активно выискивающих слабые места в приложениях Web (см. Рисунок 1). Такой брандмауэр строит сравнительную модель (часто называемую «положительной моделью безопасности»), которая описывает, как приложение Web работает при нормальных условиях. Затем он сравнивает реальные потоки данных с моделью, что позволяет ему идентифицировать необычное поведение.
Эффективная модель приложения WAF включает в свой состав динамические URL (.asp, .php и т. д.), параметры, методы HTTP, маркеры (cookies), идентификаторы сеанса, схемы XML/SOAP и многое другое. В некоторых продуктах WAF первого поколения модели приходилось создавать вручную — крайне сложная и трудоемкая задача, причем в случае изменения приложений Web ее нередко приходилось решать ежедневно. Этот процесс был автоматизирован в системах WAF второго поколения: в ходе него проводится мониторинг трафика данных приложения в реальном времени и с помощью статистических обучающихся алгоритмов автоматически строится полноценная модель поведения в нормальных условиях.
Теперь, если злоумышленник угрожает передаче данных приложения, немедленно включается WAF. Скажем, хакер на сайте электронной торговли Web заменяет какой-либо численный параметр корзины покупателя на строку SQL UPDATE, к примеру, для изменения цены, тогда WAF распознает необычное действие, противоречащее типичному поведению приложения.
Хотя UPDATE и является частью допустимой строки SQL, WAF научился идентифицировать неправомочное использование параметра, благодаря чему частота ложных срабатываний радикально уменьшилась. Таким образом, при использовании современных систем WAF настройка вручную уже не нужна.
УПРОЩЕНИЕ И МАСШТАБИРОВАНИЕ ВЫЧИСЛИТЕЛЬНЫХ ЦЕНТРОВ
Реализация систем WAF предъявляет к приложениям, сетевым решениям и решениям повышенной готовности определенные требования. С точки зрения приложения архитектура WAF первого поколения основывается на технологии обратного посредника (reverse proxy) для проверки на уровне приложений. Однако при реализации наличие посредника привносит множество рисков:
• снижение производительности — начиная с первых межсетевых экранов архитектуры с посредником становились причиной снижения пропускной способности сети и повышения времени реакции (задержки); • изменения в вычислительном центре — архитектуры с посредником изменяют трафик данных в сети, поэтому в вычислительном центре необходимо произвести согласование IP-адресации, IP-маршрутизации, URL приложений, встроенных вызовов приложений и т. д.; • единая точка отказа/повышенная готовность — решения с обратным посредником приводят к появлению точки общесистемного отказа (Single Point of Failure), их следует разрабатывать с особой тщательностью для обеспечения максимально возможной готовности.
В новых системах WAF применяются технологии обработки данных на уровне ядра, что позволяет избавиться от недостатков решений с посредником. Они позволяют увеличить пропускную способность до нескольких гигабит в секунду, снизить задержку до микросекунд и обойтись без внесения изменений в инфраструктуру вычислительного центра. Кроме того, работающие на уровне ядра продукты допускают несколько сценариев применения для обеспечения повышенной готовности.
Устанавливаемые в разрыв на сетевом маршруте (inline), они поддерживают прозрачную передачу нагрузки при сбое (failover). В случае ошибки сеансы не прерываются. Кроме того, эти продукты можно использовать и в автономном режиме (offline) в ка-честве сетевого монитора, тогда атаки отражаются путем сброса TCP.
ЗАЩИТА ДЛЯ ЛЮБОГО ИНТЕРФЕЙСА С точки зрения сети системы WAF должны прозрачно интегрироваться в имеющиеся архитектуры второго уровня, чтобы поддерживать сложную топологию виртуальных локальных сетей и такие процессы, как агрегация каналов. Продукты первого поколения не отвечали этому требованию, что иногда приводило к серьезным проблемам в вычислительных центрах.
Последнее поколение платформ обеспечения безопасности обладает параметрами производительности, позволяющими добиться прозрачности приложений в новых системах WAF. Это дает возможность брандмауэру для приложений Web защищать трафик данных, поступающий через любой интерфейс. Кроме того, новые платформы обеспечения безопасности в состоянии представить виртуальные локальные сети по отношению к приложениям в качестве либо собственного, либо стандартизованного интерфейса Ethernet.
И наконец, еще один аспект, который не стоит недооценивать: модульная архитектура новых платформ обеспечения безопасности предлагает полную избыточность на уровне портов, аппаратного обеспечения и приложений. Таким образом, эти платформы отвечают требованию повышенной готовности систем WAF второго поколения. Именно модульность предлагает еще одно важное преимущество: производительность системы линейно масштабируется благодаря добавлению новых модулей или интерфейсных карт.
ЗАЩИТА ПОСРЕДСТВОМ ТРЕХСТУПЕНЧАТОГО ПОДХОДА
Обеспечение безопасности приложений Web порождает целых круг сложных задач. Это высказывание звучит довольно банально, поскольку верно для слишком большого числа вопросов обеспечения безопасности, однако в данном случае требует очень серьезного осмысления: лица, ответственные за безопасность, должны понимать, что спектр потенциальных угроз чрезвычайно широк — от простых атак на сеть при посредстве «червей» до атак на приложения Web. Максимально возможная защита приложений Web требует трехступенчатого подхода (см. Рисунок 3), который базируется на технологиях межсетевых экранов, систем предотвращения вторжений и брандмауэров для защиты приложений Web.
Рисунок 3. Брандмауэры для приложений Web расширяют зону обеспечения безопасности, распространяя ее с сетевого уровня до уровней данных и приложений.
Авторы: Алан Норквист, Трооп Вилдер Алан Норквист — вице-президент по маркетингу компании Imperva. Трооп Вилдер — вице-президент по маркетингу компании Crossbeam Systems. Источник: LAN #12/2006