Skip to content
Эта страница переведена с помощью ИИ и может содержать неточности. Помогите улучшить перевод на GitHub.

Брандмауэр WAF ​

Файрвол веб-приложений на основе Coraza и OWASP CRS v4, который можно подключать к сайтам веб-служб.

Возможности ​

  • Встроенный набор правил OWASP CRS v4, включаемый по файлам правил;
  • собственные правила SecLang;
  • режим блокировки и режим только обнаружения;
  • настраиваемый лимит проверки тела запроса: при превышении запрос отклоняется или проверяется только его начало; проверку тела можно отключить для отдельных путей;
  • режим совместимости с WebDAV: пропускает методы, заголовки и любые типы содержимого загрузок, которые используют облачные диски и WebDAV;
  • несколько экземпляров, на которые сайты ссылаются по необходимости.

Рекомендации по использованию ​

  1. Для нового сайта сначала включите режим «только обнаружение» и понаблюдайте за журналом, чтобы убедиться в отсутствии ложных срабатываний;
  2. Для ложных срабатываний настройте файлы правил или добавьте собственные исключения;
  3. Затем переключитесь в режим блокировки.

Сайты с загрузкой больших файлов ​

По умолчанию WAF проверяет тело запроса размером не более 12,5 МБ, а более крупные запросы отклоняет (413), поэтому на облачных дисках, WebDAV и файловых менеджерах большие файлы не загружаются. Это настраивается в блоке «Проверка тела запроса» экземпляра:

  • Лимит проверки: 0 — значение по умолчанию 12,5 МБ, максимум 1024 МБ;
  • При превышении: «Отклонить запрос» работает как раньше; «Проверять только начало» проверяет только часть в пределах лимита, а остальное передаёт бэкенду без изменений — подходит для сайтов с загрузкой больших файлов;
  • Совместимость с WebDAV и загрузками: по умолчанию OWASP CRS разрешает только GET, HEAD, POST и OPTIONS и блокирует заголовки Lock-Token, If, Content-Range и типы содержимого вне белого списка, поэтому WebDAV-клиенты не могут просматривать каталоги, загружать файлы и ставить блокировки. После включения пропускаются методы PUT, DELETE, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK и другие, а также эти заголовки, а тип содержимого загрузок больше не ограничивается; тело запросов PUT и application/octet-stream считается содержимым файла и больше не проверяется как параметры формы. Проверки на внедрение, path traversal и другие атаки продолжают работать;
  • Пути без проверки тела: по одному префиксу пути на строку (например, /api/upload, /remote.php/dav/); для подходящих запросов тело не проверяется, а заголовки, URL и параметры проверяются как обычно.

Для облачных дисков, WebDAV и подобных сайтов рекомендуется создать отдельный экземпляр: включить «Совместимость с WebDAV и загрузками» и выбрать «Проверять только начало», а при необходимости добавить адреса загрузки в пути без проверки тела; остальные сайты продолжают использовать настройки по умолчанию.

curl, rclone и другие клиенты при загрузке крупного содержимого отправляют заголовок Expect: 100-continue, который CRS 4 по умолчанию блокирует. Все экземпляры Gately пропускают этот заголовок (100-continue Gately обрабатывает сам), дополнительная настройка не нужна.

Проверка ​

WAF тестируется на реальных атакующих payload и блокирует такие атаки, как path traversal.

Распространяется по лицензии Apache-2.0.