↳ GitHub sourceAnalytics ruleHigh
SAST Auth Finding Correlated with Brute Force
Description
Detects applications with open SAST authentication findings that are
simultaneously experiencing brute force login attempts in Azure AD.
Correlates StratoSecure SAST findings with SigninLogs failure spikes.
- Rule type
- Scheduled
- Version
- 1.0.0
- Declared status
- Available
- Query frequency
- 1h
- Query period
- 75m
- 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 lookback = 1h;
let bruteForceThreshold = 20;
let AuthFindings = StratoSecure_Findings_CL
| where TimeGenerated >= ago(lookback)
| where FixStatus =~ "open"
| where Severity in ("Critical", "High")
| where RuleId has_any ("auth", "jwt", "login", "session", "token", "password", "credential")
| summarize FindingCount = count(), RuleIds = make_set(RuleId), Repos = make_set(Repository)
by ApplicationId, StraTenantId;
let BruteForce = SigninLogs
| where TimeGenerated >= ago(lookback)
| where ResultType != "0"
| summarize FailedAttempts = count(), DistinctUsers = dcount(UserPrincipalName),
IPList = make_set(IPAddress, 20), FirstAttempt = min(TimeGenerated), LastAttempt = max(TimeGenerated)
by AppId, AppDisplayName
| where FailedAttempts >= bruteForceThreshold;
AuthFindings
| join kind=inner BruteForce on $left.ApplicationId == $right.AppId
| project TimeGenerated = LastAttempt, ApplicationId, AppDisplayName, StraTenantId,
FindingCount, RuleIds, Repos, FailedAttempts, DistinctUsers, IPList
Declared entities
Related content
Links established from declared identifiers and solution manifests.
Source provenance
GitHubDisplayed values come from files in Azure/Azure-Sentinel. They describe the published template, not your workspace configuration.
- Commit
9800e51↗- Source identifier
4ae9f294-410d-4c11-9072-0d8fcf5162d8
GSTEP / CATALOG TRACKING
Added to catalog : 16 Sept 2026 · 05:49 UTC
Last change observed : 16 Sept 2026 · 05:49 UTC