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

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

WAF обеспечивает анализ HTTP(S)-трафика, входящего и исходящего от онлайн-приложения. Его цель — предотвратить атаки, направленные на отказ в обслуживании и кражу данных. Он предоставляет администратору прямой контроль над запросами и ответами, проходящим через систему, без необходимости изменения внутреннего кода приложения. WAF отличается от обычного брандмауэра тем, что он защищает конкретное веб-приложение или группу приложений, и это происходит без взаимодействия с веб-приложениями.

Существует несколько бесплатных WAF для защиты веб-приложений. Самый деликатный аспект WAF с открытым исходным кодом — это возможность настройки кода под специфику конкретных проектов.

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

Каковы преимущества бесплатных WAF с открытым исходным кодом?

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

Основные преимущества использования решения WAF с открытым исходным кодом перечислены ниже:

  • Экономические преимущества: используйте WAF с открытым исходным кодом, если вы не хотите тратить значительные суммы на безопасность веб-приложений.
  • Отсутствие привязки к поставщику. Помимо экономической выгоды, отсутствует возможность привязки к поставщику, которая бы затрудняла переход на другой продукт или поставщика в будущем. В зависимости от базовой лицензии компании могут изменять WAF с открытым исходным кодом для создания уникальных решений.
  • Поддержка сообщества разработчиков. Еще одним важным преимуществом обычно является высокая степень преданности сообщества разработчиков. Поскольку большое количество независимых разработчиков совместно работают над кодом и регулярно его тестируют, недостатки и уязвимости часто обнаруживаются и быстро устраняются. Это благоприятно влияет на качество, стабильность и безопасность программного обеспечения.
  • Начните с малого, затем развивайтесь: благодаря открытому исходному коду вы можете быстро начать с бесплатных WAF версий для сообщества, а затем перейти на коммерческие версии того же WAF в соответствии с потребностями вашей компании. Если проект не требует помощи, версию сообщества можно использовать бесконечно. У вас есть возможность оценить множество вариантов, выбрать тот, который будет работать, а затем масштабировать его с помощью коммерческого решения.

Каковы недостатки бесплатных WAF с открытым исходным кодом?

Помимо преимуществ решений WAF с открытым исходным кодом, есть и некоторые недостатки. Основные недостатки заключаются в следующем:

  • Распределенные атаки. WAF, использующие платформы и код с открытым исходным кодом, уязвимы для широко распространенных ошибок. Из-за того, что несколько систем используют одну и ту же платформу, сотни тысяч приложений подвержены любым вновь обнаруженным уязвимостям. Как только эти уязвимости обнаружены, компании спешат разработать исправления, прежде чем они будут использованы злоумышленниками. Это указывает на то, что нельзя полагаться на WAF с открытым исходным кодом для предотвращения атак в режиме реального времени.
  • Можно обойти. большинство WAF с открытым исходным кодом используют программное обеспечение с уязвимостями. WAF с открытым исходным кодом не позволяет открыть и закрыть события при обнаружении чрезмерного трафика. Во время аварийного открытия WAF просто отслеживает и пропускает весь трафик, включая, возможно, вредоносные данные. В случае аварийного закрытия весь трафик останавливается. DoS- или DDoS-атака может обойти WAF, заблокировав доступ к приложению.
  • Уязвимости нулевого дня. Уязвимость нулевого дня — это атака, которая неизвестна специалисту по кибербезопасности и известна только злоумышленнику. Поэтому эксперту по кибербезопасности требуется время, чтобы разработать патч против уязвимости нулевого дня. Тем временем злоумышленник может скомпрометировать систему, воспользовавшись этой возможностью. Большинство WAF с открытым исходным кодом не способны защититься от подобных кибератак. Чтобы поддерживать WAF в актуальном состоянии с инвазивными атаками нулевого дня, разработчикам приходится часто и всесторонне менять системные правила.
  • Проблемы с настройкой и обслуживанием. WAF с открытым исходным кодом часто необходимо настраивать сразу после установки. В некоторых случаях для этого требуется значительно больше труда, чем для обычных межсетевых экранов. Для оптимальной защиты необходимо знание как WAF с открытым исходным кодом, так и приложения, в котором он устанавливается. Если у вас нет достаточных знаний в области безопасности, вам придется передать WAF на аутсорсинг, что обходится дорого. Учитывая стоимость активов, которые они защищают, профессионалы в этой области получают кругленькую зарплату. Вы бы не хотели, чтобы новичок испортил вашу кибербезопасность из-за своей некомпетентности. Обслуживание сети WAF с открытым исходным кодом чрезвычайно трудоемко. Благодаря адаптируемости веб-приложений они постоянно развиваются и нуждаются в обслуживании. Пользователям часто нужны новые функции и регулярные обновления. Не говоря уже о быстро меняющейся среде компьютеров.

Каковы лучшие WAF с открытым исходным кодом?

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

  1. NAXSI
  2. WebKnight
  3. Shadow Daemon
  4. Coraza
  5. OctopusWAF
  6. IronBee
  7. ModSecurity

1. NAXSI

NAXSI — это аббревиатура от Nginx Anti XSS и SQL-инъекций. Технически это сторонний модуль Nginx, входящий в состав нескольких UNIX-подобных систем. По умолчанию этот модуль считывает ограниченный набор основных (и понятных) правил, охватывающих 99 процентов известных шаблонов, связанных с уязвимостями веб-сайтов.

Naxsi имеет базовый набор правил и может быть расширен за счет пользовательских наборов правил. Конфигурация происходит в контексте Nginx. WAF адаптируется к различным контекстам и веб-приложениям благодаря оценкам отдельных правил и настраиваемым пороговым значениям для операций блокировки.

Naxsi может проверять множество данных, включая URL-адреса, параметры запроса, файлы cookie, заголовки и тело POST, и его можно включить или отключить на уровне местоположения в конфигурации Nginx. Автоматическое создание белого списка упрощает развертывание вышестоящего межсетевого экрана и исключает любые ложные срабатывания. Дополнительные приложения, такие как NX-Utils и Doxi, упрощают администрирование, создание отчетов и модификацию наборов правил.

NX-utils, входящие в состав Naxsi, очень полезны для создания белых списков и отчетов. Во-первых, коллекция NX-utils состоит из режима перехвата, который позволяет NAXSI записывать запросы, остановленные WAF, для будущих отчетов и белых списков в базе данных, а также режима отчета, который визуализирует сохраненные события. Будущая версия NX-Utils обеспечит улучшенную обработку и фильтрацию отчетов для более точной оценки событий WAF.

NAXSI, представляющий собой загружаемый модуль для веб-сервера Nginx, используется OPNsense WAF. NAXSI имеет два типа правил:

  • Основные правила: Эти правила применяются на международном уровне. Блокировка фрагментов кода, которые могут быть использованы для получения несанкционированного доступа к серверу (например, SQL-/XPATH-внедрение для доступа к данным) или для получения контроля над внешним клиентом (например, XSS).
  • Основные правила. Эти правила обычно используются для внесения в белый список основных правил по идентификатору или для дополнительных правил.

NAXSI, в отличие от большинства брандмауэров веб-приложений, не полагается на базу данных сигнатур, как антивирус, и поэтому его нельзя обойти «неизвестным» методом атаки.

NAXSI работает как межсетевой экран DROP по умолчанию. NAXSI фильтрует только запросы GET и PUT, а его настройка по умолчанию действует как брандмауэр DROP-by-default, поэтому для его правильной работы необходимо добавить правило ACCEPT.

Основные возможности NAXSI:

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

2. WebKnight

WebKnight от AQTRONiX — это брандмауэр веб-приложений с открытым исходным кодом для веб-серверов IIS. Он предотвращает попадание вредоносных запросов в IIS путем сканирования всех запросов.

Все заблокированные запросы протоколируются по умолчанию, и вы можете изменить это в соответствии со своими потребностями. WebKnight 3.0 имеет веб-интерфейс администратора для настройки правил и выполнения административных задач, включая статистику.

Некоторые из выдающихся особенностей WebKnight:

  • Интерфейс администрирования – удобен для управления WebKnight и статистикой.
  • Ведение журнала — журналирование запросов, которые блокируются или обрабатываются WebKnight.
  • Используйте с WebDAV, Cold Fusion, OWA, Share Point и т. д.
  • Защита против перебора паролей методом грубой силы.
  • Блокировка IP-адреса, что удобно для блокировки входящих запросов от известных вредоносных IP-адресов.
  • Безопасность хотлинкинга.
  • Защита от ботов.
  • Анализ данных GET и POST запросов.
  • Обновление во время выполнения — нет необходимости перезапускать IIS при обновлении WebKnight.
  • SSL-шифрование сеанса.
  • SQLi, XSS, CSRF и защита от потери данных (DLP).

Вот некоторые преимущества WebKnight:

  • Защищает ваше веб-приложение от угроз, а также останавливает вредоносных ботов.
  • Предоставляет информацию о текущих атаках и повышает заметность действий плохих ребят против вашего сайта.
  • Соответствие требованиям PCI DSS.
  • Открытый исходный код (GNU GPL).

3. Shadow Daemon

Shadow Daemon — это набор инструментов, предназначенных для выявления, протоколирования и предотвращения атак на веб-приложения. Shadow Daemon представляет собой брандмауэр веб-приложений, который перехватывает запросы и удаляет вредоносные параметры. Это модульное решение, которое изолирует онлайн-приложения, предоставляет средства для анализа и интерфейсы для повышения безопасности, гибкости и масштабируемости.

Shadow Daemon — бесплатное приложение. Он предлагается под лицензией GPLv2, что означает, что исходный код может изучаться, обновляться и распространяться кем угодно.

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

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

Shadow Daemon может идентифицировать распространенные атаки, такие как:

  • SQL-инъекции
  • XML-инъекции
  • Внедрение кода
  • Командные инъекции
  • Межсайтовый скриптинг
  • Включение локальных/удаленных файлов
  • Доступ через черный ход

Некоторые характеристики Shadow Daemon:

  • Объединение черных и белых списков позволяет обеспечить точное обнаружение.
  • Широкий охват благодаря многочисленным коннекторам.
  • Ближе к применению для повышения безопасности.
  • Блокируйте только вредоносные части вредоносных запросов.

Shadow Daemon поддерживается подробной документацией и активным сообществом. Это простой в использовании и управляемый межсетевой экран с открытым исходным кодом для веб-приложений.

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

4. Coraza

Coraza — это высокопроизводительный брандмауэр веб-приложений (WAF) корпоративного уровня с открытым исходным кодом, предназначенный для защиты ваших самых ценных приложений. Он разработан на языке программирования Go, поддерживает наборы правил ModSecurity и SecLang и полностью совместим с основным набором правил OWASP.

Coraza является заменой Trustwave ModSecurity Engine, выпуск которого скоро будет прекращен, и поддерживает наборы правил SecLang в качестве отраслевого стандарта.

Основные особенности Coraza:

  • Безопасность: Coraza использует основной набор правил OWASP (CRS) для защиты ваших веб-приложений от широкого спектра угроз, включая топ десять наиболее опасных угроз OWASP, с минимальным количеством ложных срабатываний. CRS защищает от множества типичных типов атак, включая SQL-инъекцию (SQLi), межсайтовый скриптинг (XSS), PHP- и Java-код, HTTPoxy, Shellshock, скрипты/сканеры/обнаружение ботов, а также утечки метаданных и ошибок.
  • Расширяемость: по своей сути Coraza представляет собой библиотеку с несколькими коннекторами для развертывания локальных экземпляров брандмауэра веб-приложений. Создавайте свои собственные журналы аудита, механизмы сохранения, операторы и действия, чтобы расширять Coraza настолько, насколько вам хочется.
  • Производительность: Coraza может управлять большими веб-сайтами и крошечными блогами с минимальным влиянием на производительность.
  • Доступность: любой может понять и изменить исходный код Coraza. Добавить дополнительные функции в Coraza просто.
  • Сообщество: Coraza — это проект, управляемый сообществом; вклады приветствуются, и все предложения рассматриваются.

Компилятор Golang версии 1.16+ является обязательным условием. Дистрибутив Linux (рекомендуется Debian или Centos, Windows пока не поддерживается) доступен уже сейчас.

5. OctopusWAF

OctopusWAF — это брандмауэр веб-приложений с открытым исходным кодом, полностью написанный на C, который осуществляет многочисленные соединения с использованием libevent. Дизайн, управляемый событиями, предназначен для множества одновременных соединений (поддержание активности), что важно для приложений AJAX с высокой скоростью. Этот WAF идеально подходит для защиты конечных точек, требующих индивидуальной безопасности.

Основные особенности OctopusWAF:

  • Возможность обратного прокси.
  • Обнаружение аномалий с помощью регулярных выражений и ресурсов библиотеки PCRE.
  • Обнаружение аномалий безопасности с помощью алгоритмов сопоставления строк, таких как DFA, horspool и karp-rabin.
  • Обнаружение аномалий безопасности с помощью libinjection.
  • Варианты сохранения журнала.

6. IronBee

На конференции RSA 2011 года компания Qualys, Inc., ведущий поставщик решений по управлению рисками ИТ-безопасности и соответствия требованиям, представила IronBee, новый проект с открытым исходным кодом, который предоставит новое поколение технологии брандмауэра веб-приложений (WAF).

Рост использования веб-приложений и переход к облачным вычислениям требуют развертывания технологии WAF для защиты данных и соответствия таким требованиям, как соответствие требованиям индустрии платежных карт (PCI). С выпуском IronBee Qualys создает сообщество коммерческих участников и участников с открытым исходным кодом, которое позволит компаниям любого размера внедрить технологию WAF следующего поколения для защиты своих данных и ИТ-активов.

Основные возможности IronBee:

  • Очень портативный и исключительно легкий.
  • Современный механизм оценки безопасности приложений, предлагающий новые возможности обработки и анализа HTTP-трафика.
  • Лицензия на программное обеспечение Apache v2 — это невирусная лицензия с открытым исходным кодом, которая допускает участие как частных лиц, так и коммерческих предприятий, создавая тем самым сообщество как пользователей, так и создателей.
  • Создан с нуля для многочисленных вариантов развертывания, включая пассивный, встроенный, внепроцессный и обратный прокси-сервер.
  • Модульная архитектура позволяет участникам просто создавать свои собственные модули, не имея глубокого понимания архитектуры IronBee, а также облегчает упаковку информации о конфигурации и модулей на основе требований пользователя.
  • Усилия сообщества по сбору, консолидации и распространению информации, необходимой для защиты веб-приложений.

7. ModSecurity

ModSecurity, иногда называемый Modsec, представляет собой брандмауэр веб-приложений с открытым исходным кодом (WAF). Созданный как модуль для HTTP-сервера Apache, он теперь включает в себя различные возможности фильтрации запросов и ответов HTTP, а также другие функции безопасности на нескольких платформах, включая HTTP-сервер Apache, Microsoft IIS и Nginx. Это бесплатное программное обеспечение, распространяемое по лицензии Apache 2.0.

С 1 июля 2024 г. Trustwave больше не будет поддерживать ModSecurity. После этого обслуживание кода ModSecurity будет передано сообществу разработчиков открытого исходного кода.

NGINX ModSecurity WAF — это брандмауэр веб-приложений (WAF), основанный на ModSecurity 3.0, переписанной исходной версии программного обеспечения ModSecurity, которая функционирует как собственный динамический модуль для NGINX Plus. NGINX ModSecurity WAF можно использовать для предотвращения широкого спектра атак уровня 7 и адаптации к новым угрозам с помощью виртуальных исправлений. Несмотря на наличие бесплатной версии, NGINX ModSecurity не является проектом с открытым исходным кодом, так что имейте это в виду.

Основные особенности ModSecurity:

  • Полные журналы HTTP-трафика
  • Мониторинг безопасности приложений и контроль доступа в режиме реального времени
  • Укрепление веб-приложений
  • Постоянная пассивная оценка безопасности
  • Обширная документация

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

Каковы обязательные функции WAF?

Open Web Application Security Project (OWASP) — это некоммерческая организация, целью которой является сделать безопасность программного обеспечения и серверов «прозрачной, чтобы отдельные лица и предприятия могли принимать обоснованные решения».

Вы можете узнать о десяти основных проблемах безопасности веб-приложений на их вики. В рейтинге OWASP Top 10 подчеркиваются наиболее важные проблемы безопасности при проектировании или развертывании WAF для сервера. Это основная атака, которую WAF призван предотвратить, и в списке объясняется, как WAF защищает ваш сервер.

Вот пять аспектов, которые важны при выборе WAF.

  • Интеграция. Как и в случае с другими аспектами безопасности, обеспечение надлежащей защиты начинается с анализа защищаемого объекта. Возможно, у вас уже есть активы, защищенные аппаратным WAF. Перед этими устройствами можно разместить облачный WAF, чтобы разгрузить более распространенный трафик веб-атак. Вероятно, у вас есть некоторые облачные активы, и если вы похожи на большинство современных компаний, вы либо реализуете, либо рассматриваете стратегию мультиоблачной среды. В этом случае важно рассмотреть решение по обеспечению безопасности, независимое от окружения.
  • Положительная и отрицательная безопасность. Необходимо учитывать множество видов защитных позиций, начиная с позитивной и негативной безопасности. Негативная позиция безопасности предполагает, что любое общение разрешено, если только оно не содержит ранее обнаруженной опасности или атаки. Это наиболее распространенный стиль развертывания WAF, и понятно, почему: негативный подход значительно реже блокирует подлинный трафик. Очевидно, что эффективность этой стратегии зависит от состояния базы данных сигнатурных правил поставщика безопасности и осведомленности о надвигающихся угрозах, поскольку это определяет ожидаемый уровень защиты. Если вы примете этот подход, крайне важно, чтобы ваши базы данных уязвимостей не отставали от развивающихся атак. Эта модель не обнаружит угрозы нулевого дня, поскольку по определению для этих кибератак еще нет сигнатур. С другой стороны, подход позитивной безопасности предполагает, что трафик отклоняется, если он явно не одобрен. Эта стратегия позволит выявлять угрозы нулевого дня, а также атаки с использованием искаженных пакетов или трафика, не соответствующего RFC. Позитивная стратегия безопасности опирается на эвристику трафика и автоматическое обучение, что позволяет адаптировать профиль нарушителя к трафику.
  • Режим обучения. Для достижения оптимальной безопасности важно, чтобы служба/устройство «обучалось» на собственном опыте. Это важнейший аспект, которому служба может внести свой вклад. Поскольку команды безопасности часто достаточно изолированы от команд разработчиков, им может не хватать знаний о компонентах программы или о том, что определяет «приемлемое поведение». Режим обучения наблюдает за трафиком, проходящим через устройство, и дает рекомендации относительно того, какое правило ослабления, если таковое имеется, следует реализовать.
  • Кастомизация. Уязвимости и сигнатуры атак являются распространенными компонентами WAF. Крайне важно, чтобы компании оставались в авангарде исследований уязвимостей и периодически предоставляли сигнатуры для защиты уязвимых сервисов и библиотек с открытым исходным кодом. Крайне важно иметь возможность включать сигнатуры из других источников, таких как отраслевые сертификаты ISAC и сторонние поставщики. Кроме того, вам должно быть легко добавить свои собственные подписи к правилам WAF, основываясь на вашем собственном опыте и знаниях.
  • Простота в использовании. У вас должна быть возможность выбирать из широкого спектра элементов управления и применять их в детальной форме, включая возможность применять политики к группам приложений. Хотя развертывание WAF может быть само собой разумеющимся, наличие WAF, который можно легко обновлять и поддерживать, является конкурентным преимуществом. Из-за продолжающегося развития угроз WAF должен быть достаточно адаптируемым, чтобы оставаться в курсе событий.

Источник: https://www.zenarmor.com/docs/network-security-tutorials/best-open-source-web-application-firewalls#6-ironbee

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *