Catalog / Cloud Security
Cloud Security AWS · Azure · OCI
IAM, logging, networking, data protection, and key management across AWS, Azure, and OCI — each control paired with a read-only command you can run yourself.
- 4
- domains
- 145
- controls
- 145
- tests the agent runs
Control catalog
Amazon Web Services (AWS)
-
AWS-001Root account MFA is enabled.
Root account MFA is enabled.
-
AWS-002No access keys exist on the root account.
No access keys exist on the root account.
-
AWS-003Root account is not used for day-to-day activity.
Root account is not used for day-to-day activity.
-
AWS-004Strong IAM password policy is enforced.
Strong IAM password policy is enforced.
-
AWS-005MFA is enabled for all IAM users with console access.
MFA is enabled for all IAM users with console access.
-
AWS-006No IAM identity has unrestricted administrator (*:*) policies beyond a justified few.
No IAM identity has unrestricted administrator (*:*) policies beyond a justified few.
-
AWS-007Active access keys are rotated at least every 90 days.
Active access keys are rotated at least every 90 days.
-
AWS-008Credentials unused for 90+ days are disabled.
Credentials unused for 90+ days are disabled.
-
AWS-009Permissions are granted via groups/roles, not directly to users.
Permissions are granted via groups/roles, not directly to users.
-
AWS-010CloudTrail is enabled in ALL regions with a multi-region trail.
CloudTrail is enabled in ALL regions with a multi-region trail.
-
AWS-011CloudTrail log-file validation is enabled.
CloudTrail log-file validation is enabled.
-
AWS-012CloudTrail logs are encrypted with a KMS CMK.
CloudTrail logs are encrypted with a KMS CMK.
-
AWS-013AWS Config is enabled in all regions.
AWS Config is enabled in all regions.
-
AWS-014Amazon GuardDuty is enabled.
Amazon GuardDuty is enabled.
-
AWS-015CloudWatch metric filters & alarms exist for critical events.
CloudWatch metric filters & alarms exist for critical events.
-
AWS-016No Security Group allows unrestricted (0.0.0.0/0) ingress to SSH (22) or RDP (3389).
No Security Group allows unrestricted (0.0.0.0/0) ingress to SSH (22) or RDP (3389).
-
AWS-017Default security group of every VPC restricts all traffic.
Default security group of every VPC restricts all traffic.
-
AWS-018VPC Flow Logs are enabled on all VPCs.
VPC Flow Logs are enabled on all VPCs.
-
AWS-019No Security Group exposes database ports (3306/5432/1433/27017) to 0.0.0.0/0.
No Security Group exposes database ports (3306/5432/1433/27017) to 0.0.0.0/0.
-
AWS-020S3 Block Public Access is enabled at the account level.
S3 Block Public Access is enabled at the account level.
-
AWS-021No individual S3 bucket is publicly readable/writable.
No individual S3 bucket is publicly readable/writable.
-
AWS-022S3 default encryption is enabled on all buckets.
S3 default encryption is enabled on all buckets.
-
AWS-023EBS volume encryption-by-default is enabled per region.
EBS volume encryption-by-default is enabled per region.
-
AWS-024RDS instances are encrypted at rest.
RDS instances are encrypted at rest.
-
AWS-025RDS instances are not publicly accessible.
RDS instances are not publicly accessible.
-
AWS-026Automatic rotation is enabled on KMS customer keys.
Automatic rotation is enabled on KMS customer keys.
-
AWS-027EC2 instances enforce IMDSv2 (token-required metadata).
EC2 instances enforce IMDSv2 (token-required metadata).
-
AWS-028Public-facing EC2 instances are intentional and minimal.
Public-facing EC2 instances are intentional and minimal.
-
AWS-029Lambda functions hold no secrets in plaintext env vars and use least-privilege roles.
Lambda functions hold no secrets in plaintext env vars and use least-privilege roles.
-
AWS-030ECR repositories have image scanning enabled.
ECR repositories have image scanning enabled.
-
AWS-031EKS clusters log control-plane and restrict public API endpoint.
EKS clusters log control-plane and restrict public API endpoint.
-
AWS-032Highly-privileged access is minimal, justified and just-in-time
Highly-privileged access is minimal, justified and just-in-time
-
AWS-033Audit log retention meets the required minimum
Audit log retention meets the required minimum
-
AWS-034Encryption in transit enforced (HTTPS/TLS only)
Encryption in transit enforced (HTTPS/TLS only)
-
AWS-035Versioning / soft-delete enabled on sensitive data stores
Versioning / soft-delete enabled on sensitive data stores
-
AWS-036Key/secret store access is restricted and protected
Key/secret store access is restricted and protected
-
AWS-037Budget / anomalous-spend alerts exist (abuse indicator)
Budget / anomalous-spend alerts exist (abuse indicator)
-
AWS-038Deletion protection on critical resources
Deletion protection on critical resources
-
AWS-039Workloads/accounts isolated for blast-radius control
Workloads/accounts isolated for blast-radius control
-
AWS-040Preventive policy guardrails are assigned
Preventive policy guardrails are assigned
Google Cloud Platform (GCP)
-
GCP-001MFA enforced for all human users, especially privileged identities
MFA enforced for all human users, especially privileged identities
-
GCP-002Strong password policy enforced (length, complexity, reuse, lockout)
Strong password policy enforced (length, complexity, reuse, lockout)
-
GCP-003No identity holds unrestricted wildcard/admin (*:* or owner) rights beyond a justified few
No identity holds unrestricted wildcard/admin (*:* or owner) rights beyond a justified few
-
GCP-004Long-lived credentials/keys rotated at least every 90 days (or eliminated)
Long-lived credentials/keys rotated at least every 90 days (or eliminated)
-
GCP-005Credentials unused for 90+ days are disabled
Credentials unused for 90+ days are disabled
-
GCP-006Permissions granted via groups/roles, not directly to individual users
Permissions granted via groups/roles, not directly to individual users
-
GCP-007Highly-privileged access is minimal, justified and just-in-time
Highly-privileged access is minimal, justified and just-in-time
-
GCP-008Cloud audit logging enabled across all regions/services
Cloud audit logging enabled across all regions/services
-
GCP-009Audit logs protected from tampering and encrypted
Audit logs protected from tampering and encrypted
-
GCP-010Audit log retention meets the required minimum
Audit log retention meets the required minimum
-
GCP-011Network flow logs enabled on all virtual networks
Network flow logs enabled on all virtual networks
-
GCP-012Cloud-native threat detection / CSPM enabled
Cloud-native threat detection / CSPM enabled
-
GCP-013Alerts exist for critical changes (IAM, network, policy, keys)
Alerts exist for critical changes (IAM, network, policy, keys)
-
GCP-014No unrestricted (0.0.0.0/0) ingress to SSH (22)
No unrestricted (0.0.0.0/0) ingress to SSH (22)
-
GCP-015No unrestricted (0.0.0.0/0) ingress to RDP (3389)
No unrestricted (0.0.0.0/0) ingress to RDP (3389)
-
GCP-016No unrestricted ingress to database ports (3306/5432/1433/27017/1521)
No unrestricted ingress to database ports (3306/5432/1433/27017/1521)
-
GCP-017Default network security group/list/firewall restricts all traffic
Default network security group/list/firewall restricts all traffic
-
GCP-018Object storage buckets are not publicly accessible
Object storage buckets are not publicly accessible
-
GCP-019Account/org-level public-access prevention is enabled
Account/org-level public-access prevention is enabled
-
GCP-020Storage encrypted at rest (default; CMK where required)
Storage encrypted at rest (default; CMK where required)
-
GCP-021Encryption in transit enforced (HTTPS/TLS only)
Encryption in transit enforced (HTTPS/TLS only)
-
GCP-022Versioning / soft-delete enabled on sensitive data stores
Versioning / soft-delete enabled on sensitive data stores
-
GCP-023Disk/block-volume encryption at rest enabled
Disk/block-volume encryption at rest enabled
-
GCP-024Compute instances have no unintended public IPs
Compute instances have no unintended public IPs
-
GCP-025Managed databases use encryption / TDE
Managed databases use encryption / TDE
-
GCP-026Managed databases are not publicly accessible / network-restricted
Managed databases are not publicly accessible / network-restricted
-
GCP-027Automatic rotation enabled on customer-managed keys
Automatic rotation enabled on customer-managed keys
-
GCP-028Key/secret store access is restricted and protected
Key/secret store access is restricted and protected
-
GCP-029Budget / anomalous-spend alerts exist (abuse indicator)
Budget / anomalous-spend alerts exist (abuse indicator)
-
GCP-030Deletion protection on critical resources
Deletion protection on critical resources
-
GCP-031Workloads/accounts isolated for blast-radius control
Workloads/accounts isolated for blast-radius control
-
GCP-032Preventive policy guardrails are assigned
Preventive policy guardrails are assigned
-
GCP-033No user-managed service account keys exist (use Workload Identity)
No user-managed service account keys exist (use Workload Identity)
-
GCP-034OS Login is enabled project-wide
OS Login is enabled project-wide
-
GCP-035Default service account is not used and lacks primitive roles
Default service account is not used and lacks primitive roles
-
GCP-036Shielded VM is enabled on instances
Shielded VM is enabled on instances
Microsoft Azure
-
AZ-001MFA is enforced for all users, especially privileged roles.
MFA is enforced for all users, especially privileged roles.
-
AZ-002Number of Global Administrators is limited (typically 2-4).
Number of Global Administrators is limited (typically 2-4).
-
AZ-003Privileged Identity Management (PIM) provides just-in-time elevation.
Privileged Identity Management (PIM) provides just-in-time elevation.
-
AZ-004Legacy/basic authentication is blocked.
Legacy/basic authentication is blocked.
-
AZ-005Guest user access and invitations are restricted.
Guest user access and invitations are restricted.
-
AZ-006Diagnostic settings ship Activity Logs to Log Analytics / storage with retention.
Diagnostic settings ship Activity Logs to Log Analytics / storage with retention.
-
AZ-007Microsoft Defender for Cloud is on the Standard/paid tier for key resource types.
Microsoft Defender for Cloud is on the Standard/paid tier for key resource types.
-
AZ-008Activity-log alerts exist for critical changes (NSG, security policy, Key Vault).
Activity-log alerts exist for critical changes (NSG, security policy, Key Vault).
-
AZ-009No NSG allows unrestricted inbound RDP (3389) from the internet.
No NSG allows unrestricted inbound RDP (3389) from the internet.
-
AZ-010No NSG allows unrestricted inbound SSH (22) from the internet.
No NSG allows unrestricted inbound SSH (22) from the internet.
-
AZ-011NSG flow logs are enabled.
NSG flow logs are enabled.
-
AZ-012Storage accounts disallow public blob access.
Storage accounts disallow public blob access.
-
AZ-013Secure transfer (HTTPS-only) is required.
Secure transfer (HTTPS-only) is required.
-
AZ-014Storage account network rules default to Deny with explicit allow-lists.
Storage account network rules default to Deny with explicit allow-lists.
-
AZ-015Storage blob soft delete is enabled.
Storage blob soft delete is enabled.
-
AZ-016Key Vaults have soft-delete and purge protection enabled.
Key Vaults have soft-delete and purge protection enabled.
-
AZ-017Key Vault network access is restricted (firewall / private endpoint).
Key Vault network access is restricted (firewall / private endpoint).
-
AZ-018VM OS and data disks are encrypted (ADE/CMK or platform encryption).
VM OS and data disks are encrypted (ADE/CMK or platform encryption).
-
AZ-019VMs use managed disks (not unmanaged page blobs).
VMs use managed disks (not unmanaged page blobs).
-
AZ-020Azure SQL auditing is enabled.
Azure SQL auditing is enabled.
-
AZ-021Transparent Data Encryption (TDE) is enabled.
Transparent Data Encryption (TDE) is enabled.
-
AZ-022SQL server firewall does not allow 0.0.0.0 (all internet).
SQL server firewall does not allow 0.0.0.0 (all internet).
-
AZ-023Microsoft Defender for SQL (threat detection) is enabled.
Microsoft Defender for SQL (threat detection) is enabled.
-
AZ-024Resource locks protect critical resources from deletion.
Resource locks protect critical resources from deletion.
-
AZ-025Azure Policy assigns guardrails for required configurations.
Azure Policy assigns guardrails for required configurations.
-
AZ-026Strong password policy enforced (length, complexity, reuse, lockout)
Strong password policy enforced (length, complexity, reuse, lockout)
-
AZ-027No identity holds unrestricted wildcard/admin (*:* or owner) rights beyond a justified few
No identity holds unrestricted wildcard/admin (*:* or owner) rights beyond a justified few
-
AZ-028Long-lived credentials/keys rotated at least every 90 days (or eliminated)
Long-lived credentials/keys rotated at least every 90 days (or eliminated)
-
AZ-029Credentials unused for 90+ days are disabled
Credentials unused for 90+ days are disabled
-
AZ-030Permissions granted via groups/roles, not directly to individual users
Permissions granted via groups/roles, not directly to individual users
-
AZ-031Audit logs protected from tampering and encrypted
Audit logs protected from tampering and encrypted
-
AZ-032No unrestricted ingress to database ports (3306/5432/1433/27017/1521)
No unrestricted ingress to database ports (3306/5432/1433/27017/1521)
-
AZ-033Default network security group/list/firewall restricts all traffic
Default network security group/list/firewall restricts all traffic
-
AZ-034Storage encrypted at rest (default; CMK where required)
Storage encrypted at rest (default; CMK where required)
-
AZ-035Compute instances have no unintended public IPs
Compute instances have no unintended public IPs
-
AZ-036Automatic rotation enabled on customer-managed keys
Automatic rotation enabled on customer-managed keys
-
AZ-037Budget / anomalous-spend alerts exist (abuse indicator)
Budget / anomalous-spend alerts exist (abuse indicator)
-
AZ-038Workloads/accounts isolated for blast-radius control
Workloads/accounts isolated for blast-radius control
Oracle Cloud Infrastructure (OCI)
-
OCI-001MFA is enforced for all IAM users, especially administrators.
MFA is enforced for all IAM users, especially administrators.
-
OCI-002Customer secret keys / API keys are rotated regularly (<=90 days).
Customer secret keys / API keys are rotated regularly (<=90 days).
-
OCI-003A strong password policy is configured.
A strong password policy is configured.
-
OCI-004Membership of the Administrators group is minimal.
Membership of the Administrators group is minimal.
-
OCI-005IAM policies follow least privilege (no broad 'manage all-resources').
IAM policies follow least privilege (no broad 'manage all-resources').
-
OCI-006Audit log retention is set to the maximum (365 days).
Audit log retention is set to the maximum (365 days).
-
OCI-007Oracle Cloud Guard is enabled at tenancy root.
Oracle Cloud Guard is enabled at tenancy root.
-
OCI-008VCN Flow Logs are enabled.
VCN Flow Logs are enabled.
-
OCI-009Notifications/Events alert on IAM, network and policy changes.
Notifications/Events alert on IAM, network and policy changes.
-
OCI-010Security lists do not allow unrestricted SSH (22) from 0.0.0.0/0.
Security lists do not allow unrestricted SSH (22) from 0.0.0.0/0.
-
OCI-011Security lists do not allow unrestricted RDP (3389) from 0.0.0.0/0.
Security lists do not allow unrestricted RDP (3389) from 0.0.0.0/0.
-
OCI-012Default security list of each VCN restricts traffic.
Default security list of each VCN restricts traffic.
-
OCI-013No Object Storage bucket has public access.
No Object Storage bucket has public access.
-
OCI-014Buckets use customer-managed encryption keys where required.
Buckets use customer-managed encryption keys where required.
-
OCI-015Versioning is enabled on sensitive buckets.
Versioning is enabled on sensitive buckets.
-
OCI-016Vault keys have rotation configured.
Vault keys have rotation configured.
-
OCI-017Block volumes are encrypted (default or CMK).
Block volumes are encrypted (default or CMK).
-
OCI-018Compute instances have no unintended public IPs.
Compute instances have no unintended public IPs.
-
OCI-019Database systems use encryption / TDE.
Database systems use encryption / TDE.
-
OCI-020Autonomous Database network access is restricted (private endpoint / ACLs).
Autonomous Database network access is restricted (private endpoint / ACLs).
-
OCI-021Compartment structure and IAM boundaries isolate workloads.
Compartment structure and IAM boundaries isolate workloads.
-
OCI-022Budget alerts detect anomalous spend (abuse indicator).
Budget alerts detect anomalous spend (abuse indicator).
-
OCI-023Credentials unused for 90+ days are disabled
Credentials unused for 90+ days are disabled
-
OCI-024Permissions granted via groups/roles, not directly to individual users
Permissions granted via groups/roles, not directly to individual users
-
OCI-025Audit logs protected from tampering and encrypted
Audit logs protected from tampering and encrypted
-
OCI-026No unrestricted ingress to database ports (3306/5432/1433/27017/1521)
No unrestricted ingress to database ports (3306/5432/1433/27017/1521)
-
OCI-027Account/org-level public-access prevention is enabled
Account/org-level public-access prevention is enabled
-
OCI-028Encryption in transit enforced (HTTPS/TLS only)
Encryption in transit enforced (HTTPS/TLS only)
-
OCI-029Key/secret store access is restricted and protected
Key/secret store access is restricted and protected
-
OCI-030Deletion protection on critical resources
Deletion protection on critical resources
-
OCI-031Preventive policy guardrails are assigned
Preventive policy guardrails are assigned