Elastic medium stable kql
Azure AKS Potential API Enumeration by User
Detects a single Kubernetes identity in AKS (Azure Kubernetes Service) that is denied (HTTP 403 Forbidden) across multiple distinct API resource types within a short window. Broad authorization failures spanning many resources are a strong signal of API enumeration (reconnaissance with a stolen service account token), as an actor probes what its credentials can reach before privilege escalation. Detection is based on the breadth of denied resources rather than the raw failure count, so single-resource controller retry loops do not trigger it.
Detection Logic
data_stream.dataset:azure.platformlogs and
event.action:"Microsoft.ContainerService/managedClusters/diagnosticLogs/Read" and
azure.platformlogs.category:"kube-audit" and
azure.platformlogs.properties.log.stage:"ResponseComplete" and
azure.platformlogs.properties.log.responseStatus.code:"403" and
azure.platformlogs.properties.log.responseStatus.reason:"Forbidden" and
not azure.platformlogs.properties.log.user.username:(
system\:node\:* or "aksService" or "hcpService" or "readinessChecker" or
system\:serviceaccount\:kube-system\:*
) False Positives
- ⚠ A workload or observability agent with partial RBAC can be denied across several resource types and resemble enumeration (for example a monitoring agent that watches resources it lacks permission for). Baseline such identities and raise the cardinality threshold, or exclude the specific validated service account, after review. Single-resource retry loops (one resource denied repeatedly) do not trigger this rule because detection is based on the number of distinct resources denied, not the raw failure count.
Field Validations
Loading…
Comments (0)
Loading comments...