↳ GitHub sourceAnalytics ruleMedium

Tailscale Premium: Unexpected exit-node egress

Description

Identifies when a node sends traffic via an exit node not used in the prior 7-day baseline. First-seen exit destinations from a node may indicate routing-policy drift, data exfiltration, or compromise.
Rule type
Scheduled
Version
1.0.0
Declared status
Available
Query frequency
1h
Query period
1h
Trigger
gt 0

Declared MITRE coverage

Declared sources

Metadata from the source file. No dependencies inferred from KQL.

Connectors

Data types

KQL query

Original query, unchanged.

let baseline = 7d;
let recent = 1h;
let recentEgress =
    Tailscale_Network_CL
    | where TimeGenerated > ago(recent)
    | where HasExitTraffic
    | mv-expand t = ExitTraffic
    | extend Src = tostring(t.src), ExitDst = tostring(t.dst), Bytes = tolong(t.txBytes) + tolong(t.rxBytes)
    | summarize FirstSeen = min(TimeGenerated), TotalBytes = sum(Bytes) by NodeId, SrcNodeName, SrcUser, SrcOs, Src, ExitDst;
let baselineEgress =
    Tailscale_Network_CL
    | where TimeGenerated between (ago(baseline + recent) .. ago(recent))
    | where HasExitTraffic
    | mv-expand t = ExitTraffic
    | extend Src = tostring(t.src), ExitDst = tostring(t.dst)
    | distinct NodeId, Src, ExitDst;
recentEgress
| join kind=leftanti baselineEgress on NodeId, Src, ExitDst
| extend TotalMB = round(TotalBytes / 1024.0 / 1024.0, 2)

Declared entities

HostAccountIP

Related content

Links established from declared identifiers and solution manifests.

Source provenance

GitHub

Displayed values come from files in Azure/Azure-Sentinel. They describe the published template, not your workspace configuration.

Source identifier
c1d2e3f4-1a2b-3c4d-5e6f-7a8b9c0d1e2f
Additional source files 2Solutions/Tailscale (CCF)/Analytic Rules/TailscalePremiumUnexpectedExitNodeEgress.yamlsource ↗Solutions/Tailscale (CCF)/Data/Solution_Tailscale.jsonsolution-membership ↗
GSTEP / CATALOG TRACKING

Added to catalog : 16 Sept 2026 · 05:49 UTC
Last change observed : 16 Sept 2026 · 05:49 UTC

GSTEP sync dates, separate from the source content’s publication dates.