Rules and WAF protection

Readable detectors and rules, an anomaly score, modes per site, per rule and per path, narrow exceptions, virtual patches and a progressive rollout. You observe first, block later, and can always go back.

All functions

Where to find it in the console : Protection menu: Rules, Exceptions and Policies; Analysis menu: False positives; the Protection tab of a site.

What it is for

Observe before blocking

A new site starts in detection mode: everything is inspected and recorded, nothing is blocked. A report shows what would have been refused before you switch to blocking.

Decisions that explain themselves

Each event says which rule reacted, where (parameter, header, body), with which score and which action. No black box: you can replay a request and see the decision.

Fix a false positive without weakening the site

An exception targets one rule, one parameter, one path and one address, with an expiry date. The rest of the protection does not change.

Change the rules without taking a risk

Simulation on past traffic, rollout to a share of the nodes or of the requests, comparable versions and rollback in one step.

How ToutWAF decides

Every request goes through the same steps. The result is a decision, recorded with its evidence.

Detectors and rules

The built-in detectors (injections, deserialization, request smuggling, uploads, protocol), the OWASP CRS and your own rules look at the request. The catalogue documents more than 300 TW- error codes.

An anomaly score

Each detection adds points according to its severity: 5 for critical, 4 for error, 3 for warning, 2 for notice. The default inbound threshold is 5: one critical detection blocks, two warnings (3 + 3) block, a single warning is only logged.

The mode decides the action

Off, detection or blocking, depending on the site, the rule, the path and the method. Some rules act on their own without going through the score, for example a fake Googlebot or an unsigned JWT.

A visitor's requestDetectors, CRS and your ruleseach detection carries a TW- codeAnomaly scorecompared with the inbound thresholdDecision according to the modelog, challenge, slow down, block...
Illustration: from the request to the decision.

Three modes, at every level

Бесплатно

The mode is set for the whole site, but also for one rule, a family of rules, a path or a method. A rule can also change its action: log, challenge, slow down, decoy, block or redirect.

  • A new site is in detection: events carry the action that would have been taken, without it being applied.
  • Paranoia levels from 1 to 4 (1 by default), per site or per path. You go up one level at a time, in detection, and read the report before blocking.
  • A percentage of the requests can enforce blocking (ENFORCE_PERCENT): a canary at request level.
  • If the engine fails or exceeds its time budget, the site chooses to let requests through or to refuse them (per site). Choose refuse for a payment, let through for a brochure site.
Offnothing is inspectedDetectioninspected and loggedBlockingdecisions enforced
Illustration: the three modes of a site.

OWASP CRS and SecLang

Бесплатно

The OWASP Core Rule Set v4 is evaluated by ToutWAF's own SecLang parser and evaluator, with the plug-ins that match the technology detected on your site.

  • The definitions catalogue holds about 85 sources, checked every hour, verified before use and rolled back if they fail.
  • Starting templates: generic, WordPress, Laravel, Symfony, Django, Spring, Node and single-page application.
  • You can target a CRS identifier or a range (for example 942100-942999) in a mode or an exception.

The complete CRS v4 was only tested on a reduced fixture.

Your own rules

Бесплатно

A readable condition language, with a visual editor and a text editor that stay in sync.

  • Rule tester: replay a request against the current policy and see the decision.
  • Dry run on real traffic: the rule is replayed on seven days of recorded requests, without enforcing anything.
  • Rule tests that run in continuous integration, with JUnit output.

The console validator and the engine accept slightly different subsets of the language: always verify a rule with a test.

Narrow exceptions and rule overrides

Бесплатно

When a rule reacts wrongly, you work around it as narrowly as possible instead of switching it off.

  • An exception covers one rule, one parameter (argument, header, cookie, JSON field or body), a path prefix and an address, with an expiry and a reason.
  • From an event, the button « This is a false positive » proposes the narrowest exception and shows its effect on the recorded events before creating it.
  • ToutWAF also suggests exceptions from the traffic: you accept or dismiss them.
  • A rule override changes the mode or action of a rule, a tag or a family, for a path and methods. Every change is versioned, compared and audited.

Example of rule overrides, in the policy of a site

YAML
rule_overrides:
  - { rule: tw-sqli-orderby-probe, mode: detect }
  - { rule: "tag:attack-xss", mode: block, path_prefix: /checkout }
  - { rule: "family:4xxx", action: challenge, methods: [POST] }

A policy that is inherited

Бесплатно

Settings go from general to specific: global, then per organisation, per site and per path. The more specific one wins.

  • Every change is a version: structured difference, history and rollback in one step.
  • Four-eyes approval: a second reviewer approves a version before it goes live.
  • Policy as code: export, validate, compare and apply YAML or JSON from your continuous integration.
GlobalOrganisationSitePath
Illustration: the levels of the policy, from the most general to the most specific.

Put a rule live without risk

The recommended path is: observe, review, simulate, switch, watch, and keep the rollback ready.

Draft

You change the policy in a draft; nothing is published.

Simulation

The policy is replayed on past traffic: requests that would be newly blocked or allowed.

Canary

A share of the nodes, a share of the requests or a single rule; you watch, then extend.

Publication and rollback

Publication is automatic and fast; if a node refuses the policy, it goes back to the last accepted version.

DraftSimulation on past trafficCanaryshare of nodes or requestsActive versionrollback in one step
Illustration: from the draft to the active version.

Virtual patches

Бесплатно

A known vulnerability is blocked at the WAF while the application waits for its fix.

  • A built-in catalogue covers Log4Shell, Spring4Shell and Confluence flaws, among others, and can be switched on per site.
  • Emerging Threats Open signatures are converted only when the translation is exact; they log by default.
  • CISA KEV advisories are informational until a verified pattern exists: they block nothing.

Automatic rules

БесплатноPro и выше

ToutWAF settles its false positives and moves from observation to blocking, with evidence you audit and undo.

  • Free: the self-test of a site, the false-positive estimate per rule group, the « Ready to block » indicator and the decisions journal.
  • Licence required: the Automatic profile (log, challenge, then block one rule group at a time) and the automatic exceptions, narrow and time-limited.
  • Guardrails: only protocol and web-injection rules can be worked around automatically, never by switching the rule off, and everything can be undone in one click.

What is not done, or not proven

We prefer to say it plainly.

  • Loading the complete CRS v4 was only tested on a reduced fixture.
  • Automatic rules were exercised by tests and a local bench, not on production traffic.
  • The only detection and performance figures published are in the documentation: they come from the project's own synthetic corpus, are not independent measurements and do not rank ToutWAF against any other product. This page gives none.
  • A WAF reduces risk, it does not replace fixing the application: keep your code's updates and access controls.

Use cases

Take a shop live without interruption

A week of detection, the report suggests a few narrow exceptions, you switch to blocking and keep the rollback ready.

React to a known vulnerability

A virtual patch blocks the exploit while the application waits for its update.

A rich-text editor triggers a rule

An exception limited to this field, this path and thirty days settles the case without touching the rest.

What is included, by edition

The basics are free; the advanced options need a paid offer. An option under licence stays visible in the console, locked, never hidden.

РедакцияБесплатно Входит во все предложения, включая оба бесплатных (Free и Free +)Pro и выше Платные предложения: видна в консоли, без лицензии заблокирована. Начиная с Pro, если не указано Agency или Enterprise

Защита приложений

  • SQL-инъекции, распознаваемые по структуре токенов, а не по спискам ключевых слов, для пяти диалектовБесплатно
  • NoSQL-инъекции: операторы и серверный JavaScript в запросах, формах и JSON-телахБесплатно
  • Межсайтовый скриптинг: HTML-токенизатор с детекторами контекста, SVG, приёмниками DOM и полиглотыБесплатно
  • Инъекции команд и выполнение кода: shell, PowerShell, интерпретаторы и eval языковБесплатно
  • Включение файлов и обход путей с многопроходным декодированием кодировокБесплатно
  • SSRF: запросы к внутренним адресам, метаданным облака и экзотическим схемамБесплатно
  • XXE и раскрытие сущностей XML, инъекции XPathБесплатно
  • Инъекции в шаблоны: Jinja2, Twig, Freemarker, Velocity, ThymeleafБесплатно
  • Небезопасная десериализация: Java, PHP, .NET, Python, YAMLБесплатно
  • LDAP, языки выражений (OGNL, SpEL), CRLF, открытое перенаправление и загрязнение прототиповБесплатно
  • Контрабанда HTTP-запросов, строгое разграничение по RFC 9112 и ограничения против злоупотреблений HTTP/2Бесплатно
  • Тело запроса больше окна проверки отклоняется или помечается и никогда не пересылается непровереннымБесплатно
  • Загрузка файлов: расширение, двойное расширение, магические байты, веб-шеллы, макросы, необязательная проверка ClamAVБесплатно
  • Защита CMS: WordPress, Drupal, Joomla, PrestaShop, Magento, NextcloudБесплатно
  • Сканеры и инструменты атаки (sqlmap, Nikto, Nuclei, Burp) и перебор по сериям ответов 404Бесплатно
  • CSRF: проверка Origin и Referer, внедрение токена в формыБесплатно
  • Защита сессий: фиксация, перехват, шифрование cookieБесплатно
  • Ограниченный разбор: пределы глубины, размера и числа параметров, регулярные выражения с линейным временемБесплатно

Правила, политика и развёртывание

  • OWASP CRS v4 загружается как есть, с собственными парсером и вычислителем SecLang от ToutWAFБесплатно
  • Уровни паранойи от 1 до 4 — для сайта или для путиБесплатно
  • Оценка аномалий с порогами для входящего и исходящего трафикаБесплатно
  • Режимы «выключено», «обнаружение» и «блокировка» для сайта, правила и пути, с переопределением действияБесплатно
  • Читаемый язык правил для собственных правилБесплатно
  • Точные исключения по правилу, параметру, пути и адресу, со сроком действия и предпросмотром влиянияБесплатно
  • Виртуальные патчи для известных уязвимостей (Log4Shell, Spring4Shell, Confluence и другие), включаются для каждого сайтаБесплатно
  • Ложные срабатывания: от события до самого узкого исключения в один клик, с объяснением простым языкомБесплатно
  • Симуляция: воспроизведение прошлого трафика на черновике политикиБесплатно
  • Отчёт об обнаружении по окончании периода наблюдения, с предложенными исключениямиБесплатно
  • Поэтапное развёртывание: часть узлов, часть запросов или одно правилоБесплатно
  • Наследование политики: глобально, организация, сайт, путьБесплатно
  • Шаблоны: универсальный, WordPress, Laravel, Symfony, Django, Spring, Node, одностраничное приложениеБесплатно
  • Версии, структурированное сравнение и откат за один шагБесплатно
  • Утверждение «четыре глаза» перед запуском версииБесплатно
  • Политика как код: экспорт, проверка, сравнение и применение YAML или JSON из CIБесплатно
  • Тесты правил, запускаемые в CI, с выводом JUnitБесплатно
  • Автоматическая публикация: каждое изменение компилируется, проверяется и за несколько секунд отправляется на узлы, с автоматическим откатом, если узел его отклонилБесплатно

Автоматические правила

  • Самотестирование сайта: обычные запросы оцениваются вашей плоскостью данных до любой блокировкиБесплатно
  • Оценка доли ложных срабатываний по группам правил и индикатор «Готово к блокировке»Бесплатно
  • Плагины CRS для технологии, обнаруженной на вашем сайтеБесплатно
  • Журнал автоматических решений с доказательствами и отменой в один кликБесплатно
  • Профиль «Автоматический»: только журнал, затем проверка, затем блокировка — по одной группе правилPro и выше
  • Автоматические исключения: узкие, ограниченные по времени, создаются только при убедительных доказательствах в реальном трафикеPro и выше
  • Автоматический откат обновления правил, которое блокирует обычные запросыPro и выше

Вернуться к значению по умолчанию для расширенной опции можно всегда. Что происходит по окончании платной лицензии, описано в вопросах и ответах о тарифах: 48 часов льготного периода, 48 часов только для чтения, затем защита WAF отключается до продления.

Цены Read the documentation

Поставьте щит перед вашими приложениями уже сегодня

Установите его на собственный сервер или напишите нам, чтобы обсудить лицензии.