Unusual Source IP for Azure Arc Cluster Credential Access
Detects when a service principal or user performs an Azure Arc cluster credential listing operation from a source IP not previously associated with that identity, potentially indicating compromised credentials.
This detection identifies anomalous access patterns to Azure Arc-connected Kubernetes clusters. Specifically, it monitors the listClusterUserCredential operation, which provides credentials for the Arc Cluster Connect proxy, enabling kubectl access through the Azure ARM API. An attacker leveraging stolen credentials, such as those belonging to a service principal, may attempt to list cluster credentials from an unfamiliar IP address. The detection leverages a 7-day history to establish baseline IP-to-identity mappings, reducing false positives from legitimate sources like CI/CD pipelines with rotating IPs. This activity is particularly relevant because successful credential access can lead to unauthorized cluster access and potential data exfiltration or resource compromise. The IBM X-Force has identified potential abuse of Azure Arc for hybrid escalation and persistence. The detection logic originates from Elastic's detection rules.
Attack Chain
- Attacker compromises a service principal or user account with privileges to manage Azure Arc-connected Kubernetes clusters.
- Attacker authenticates to Azure using the compromised credentials.
- Attacker invokes the
MICROSOFT.KUBERNETES/CONNECTEDCLUSTERS/LISTCLUSTERUSERCREDENTIAL/ACTIONoperation via the Azure API from a new or unusual source IP address. - The operation returns credentials for the Arc Cluster Connect proxy.
- Attacker uses the retrieved credentials to establish a proxy tunnel via
az connectedk8s proxy. - Attacker routes
kubectlcommands through the Azure ARM API, accessing the Kubernetes cluster without direct network connectivity. - Attacker performs reconnaissance within the Kubernetes cluster, identifying valuable resources like secrets and configmaps.
- Attacker exfiltrates sensitive data or compromises the cluster's integrity.
Impact
A successful attack can lead to unauthorized access to Kubernetes clusters connected to Azure Arc. Compromised credentials can enable attackers to perform arbitrary actions within the cluster, potentially leading to data theft, service disruption, or the deployment of malicious workloads. The severity depends on the privileges associated with the compromised identity and the sensitivity of the data stored within the cluster. Lateral movement from compromised cloud resources to on-premise Kubernetes clusters is possible.
Recommendation
- Deploy the Sigma rule "Azure Arc Cluster Credential Access from Unusual Source" to your SIEM and tune the history window for your environment.
- Investigate any alerts generated by the Sigma rule by examining the caller identity (
azure.activitylogs.identity.claims.appid), source IP (source.ip), and associated Azure Sign-In Logs. - If a compromise is suspected, revoke the service principal credentials and remove Arc RBAC role assignments as detailed in the investigation guide.
- Monitor Azure Activity Logs for
MICROSOFT.KUBERNETES/CONNECTEDCLUSTERS/LISTCLUSTERUSERCREDENTIAL/ACTIONevents, filtering for unexpected source IPs. - Review Kubernetes audit logs for suspicious activity following the
listClusterUserCredentialoperation.
Detection coverage 2
Azure Arc Cluster Credential Access from Unusual Source
mediumDetects when a service principal or user performs an Azure Arc cluster credential listing operation from a source IP not previously associated with that identity.
Azure Arc Connected Cluster Credential Listing
infoDetects successful listing of cluster user credentials in Azure Arc, which is a prerequisite for subsequent cluster access.
Detection queries are available on the platform. Get full rules →