Lion Cipher Lab

Flag impossible-travel logins by enriching auth logs with offline GeoIP

Why it matters

When an attacker signs in with a stolen password the login is not malformed -- right username, right password, maybe even a passed MFA prompt. MITRE ATT&CK tracks this as T1078, Valid Accounts, and it is one of the hardest things a SOC catches because nothing is technically wrong. One of the few physical tells left is geography: a real person cannot sign in from New York and, twenty minutes later, from Singapore. Microsoft Entra ID Protection ships exactly this as a built-in risk detection. But the raw auth log your SIEM collects does not contain locations -- it contains IP addresses. Before…

What you'll learn

Steps in this lab

  1. Why enrichment is the hard part
  2. Generate a synthetic auth log -- IPs only, with a hidden answer key
  3. Build the offline GeoIP stub (a stand-in for MaxMind GeoLite2)
  4. Enrich with a CIDR lookup, then flag by haversine velocity (BEFORE)
  5. Tune 1: a minimum-distance floor for GeoIP jitter (AFTER, part 1)
  6. Tune 2: an egress/infra allowlist (AFTER, part 2)
  7. The honest negatives: where GeoIP enrichment lies
  8. The judgment: when impossible travel earns its noise

Open the full interactive lab →