SECOPS

Instant Cloudflare WAF change alert from audit-log webhook

Triggers the moment a Cloudflare audit-log webhook reports a WAF ruleset edit, pulls the new ruleset.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerwebhook
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerCloudflare audit-log webhook receivedHTTP webhook
  • LogicFilter for WAF ruleset write events
  • ActionFetch current ruleset for affected zoneCloudflareCloudflare
  • ActionDiff against cached prior versionShell
  • OutputPost actor + diff to Slack channelSlack

What it does

Instead of polling, this workflow reacts to Cloudflare's audit-log webhook. When the webhook signals a WAF ruleset was modified, it fetches the current ruleset, builds a before/after diff against the cached previous version, and pushes a concise alert into a Slack channel with the actor, timestamp, and exact rule changes.

When to use it

Use it for high-sensitivity zones where any WAF change must be seen by on-call immediately, not on the next scheduled scan. It shrinks detection time from minutes to seconds and names who made the edit.

How it works

  1. 1An HTTP webhook trigger receives the Cloudflare audit-log event.
  2. 2A logic step filters for WAF ruleset write events and drops unrelated audit entries.
  3. 3A Cloudflare action fetches the full current ruleset for the affected zone.
  4. 4A shell step diffs it against the cached prior version and renders a readable summary.
  5. 5A Slack output posts the actor, change time, and rule-level diff to the security channel.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect HTTP webhookTrigger any URL on agent actions.
  2. 2
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  3. 3
    Connect ShellRun sandboxed commands inside the workspace.
  4. 4
    Connect SlackChannels, DMs, threads, mentions.
  5. 5
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  6. 6
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  7. 7
    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.