SECOPS

Impossible-Travel Login Detector with Evidence Packet

Watches Axiom auth logs for the same user authenticating from two geographically distant locations within an impossible time window.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerevent
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNew auth events arrive in AxiomAxiom
  • ActionGeolocate each login source IP
  • LogicFlag pairs exceeding plausible travel speed
  • ActionAssemble geolocated evidence packet
  • ActionOpen Linear security incident with packetLinearLinear
  • OutputPost alert linking the incident to SlackSlack

What it does

Detects "impossible travel" sign-ins: when one identity logs in from two places that no human could traverse in the elapsed time (e.g. New York then Singapore eleven minutes later). It builds a structured evidence packet and opens a tracked incident so an analyst can act fast.

When to use it

Run this continuously when you ship a SaaS or internal app and want account-takeover signal without buying a full ITDR suite. Best when your auth events already land in Axiom with IP, user ID, and timestamp.

How it works

  1. 1Axiom emits a batch of new authentication events on a short polling interval.
  2. 2The workflow groups successful logins per user and geolocates each source IP.
  3. 3A logic step computes the required travel speed between consecutive logins; if it exceeds a plausible-travel threshold, the pair is flagged.
  4. 4For each flag it assembles an evidence packet — both IPs, ASN/org, device fingerprints, the two raw events, and a map of distance vs. time.
  5. 5It creates a Linear issue in the Security team with the packet attached and a severity label.
  6. 6It posts a concise alert to the secops Slack channel linking the Linear issue.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect AxiomLog streams, queries, dashboards.
  2. 2
    Connect LinearIssues, projects, cycles, triage.
  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.