
Hunting Impossible Travel in Sentinel with KQL
Two sign-ins too far apart in time and distance to be one person. In Sentinel, KQL's prev() and a distance function are all it takes.
security · azure · data · the practical side

Two sign-ins too far apart in time and distance to be one person. In Sentinel, KQL's prev() and a distance function are all it takes.

Part one of building a site you actually own. Why static, why this stack, and getting Hugo running on your machine in ten minutes.

Entra break-glass (emergency access) accounts: cloud-only, excluded from every policy, watched closely, and tested before you need them.

Brute force tries many passwords on one account. Spray tries one password on many accounts, and hides under your lockout threshold. Here's the shape it leaves.

Five silent DAX failures that can make Power BI measures and visuals disagree, and the defensive habits that stop them.

Push-bombing leaves a loud shape in SigninLogs. In Sentinel, a KQL count, a threshold and a join are enough to catch it.

How many SCUs Security Copilot needs: provisioned versus overage, hourly billing, the E5 allocation per 1,000 licences, and avoiding capacity cliffs.

How to set up Microsoft Security Copilot: E5 auto-provisioning, prerequisites for provisioning capacity, SCUs, and the default roles to fix on day one.

Break-glass first, report-only always, and the other habits that keep a Conditional Access rollout from ending in a lockout.

A KQL primer for hunting in Microsoft Sentinel: five operators, one mental model, and why you never trust a detection you can't read.

The identity seam, stale permissions, logging gaps and shared-responsibility confusion that hybrid environments accumulate.