SECOPS

Snowflake Egress Cluster Hunt to Discord Report

Hunts archived Cloudflare egress logs in Snowflake on a daily schedule to cluster low-and-slow exfiltration patterns, then posts a ranked summary report to a Discord SOC channel.

CategorySecOps
Enginesim
Difficultyadvanced
Triggerschedule
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule starts hunt
  • ActionQuery Snowflake, cluster egress transfersSnowflakeSnowflake
  • LogicScore clusters (volume, beaconing, rarity)
  • LogicFilter + rank above hunt threshold
  • ActionDraft analyst summaries per clusterOpenAI
  • OutputPost ranked digest to DiscordDiscordDiscord

What it does

Runs a daily threat hunt across long-window Cloudflare egress logs in Snowflake to catch slow-drip exfiltration that single-event alerting misses. It clusters related transfers by source, destination, and timing, ranks the suspicious clusters, and delivers a digest to Discord.

When to use it

Use it for retrospective hunting when attackers spread exfiltration thin to stay under per-event thresholds. Good for teams warehousing months of logs in Snowflake who want a daily, human-readable hunt digest.

How it works

  1. 1A daily schedule trigger starts the hunt.
  2. 2A Snowflake action queries the trailing egress window and groups transfers into candidate clusters.
  3. 3A logic step scores each cluster on cumulative volume, beaconing regularity, and destination rarity.
  4. 4A filter logic step keeps only clusters above the hunt threshold and ranks them.
  5. 5An OpenAI action drafts a concise analyst-readable summary for each top cluster.
  6. 6A Discord output posts the ranked digest with links back to the underlying queries.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect SnowflakeWarehouses, queries, shares.
  2. 2
    Connect OpenAIModels, embeddings, files.
  3. 3
    Connect DiscordCommunity channels + voice + bots.
  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.