SECOPS

WAF False-Positive Spike Detector

Monitors Cloudflare block rates on a short interval, and when blocks against known-good paths spike past a threshold.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerShort-interval schedule polls
  • ActionFetch recent block counts by rule/pathCloudflareCloudflare
  • LogicDetect spike vs known-good baseline
  • ActionPage on-call via PagerDutyPagerDutyPagerDuty
  • OutputPost offending rule + samples to SlackSlack

What it does

This pipeline watches for sudden surges in WAF blocks that hit paths you've marked as legitimate, the classic signature of a managed-ruleset update gone wrong. When the rate crosses a threshold it pages on-call immediately so a bad rule doesn't quietly break production traffic.

When to use it

Use it as a safety net after Cloudflare pushes managed-rule updates, or anytime a deploy could trip the WAF. It catches the "we just started 403ing all our own API calls" incident in minutes instead of waiting for customer complaints.

How it works

  1. 1A schedule polls every few minutes.
  2. 2It fetches recent block counts from Cloudflare grouped by rule and path.
  3. 3A threshold check compares blocks against an allowlist of known-good paths to the recent baseline.
  4. 4If no anomalous spike, the run exits quietly.
  5. 5On a spike, it pages on-call through PagerDuty with the rule ID and affected paths.
  6. 6It also posts the offending rule and sample blocked requests to Slack for fast diagnosis.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect PagerDutyIncidents, on-call, escalations.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.