IaaS/PaaS/SaaS shared responsibility, hypervisor hardening, cloud network segmentation, container security, surface reduction, cloud IAM, and CSPM — the modern cloud defense layer.
Cloud security requires understanding which security responsibilities are shared between provider and customer, how to design secure cloud networks, protect container workloads, implement least-privilege IAM, and continuously monitor for misconfigurations.
| Security Layer | IaaS (e.g., EC2) | PaaS (e.g., App Service) | SaaS (e.g., Office 365) |
|---|---|---|---|
| Physical / Facilities | Provider | Provider | Provider |
| Hypervisor / Host OS | Provider | Provider | Provider |
| Network Infrastructure | Provider | Provider | Provider |
| Guest OS / Patching | Customer | Provider | Provider |
| Runtime / Middleware | Customer | Provider | Provider |
| Application Code | Customer | Customer | Provider |
| Data Classification | Customer | Customer | Customer |
| Identity / IAM | Customer | Customer | Customer |
| Network Config (VPC/SG) | Customer | Shared | Provider |
Red = Customer responsibility. Green = Provider. Yellow = Shared.
Expand each topic for comprehensive coverage of Domain 5 exam objectives.
Service Model Definitions:
Customer Always Responsible For:
Common Misconceptions:
Provider Certification Review: Review cloud provider SOC2 Type II reports, ISO27001 certificates, and FedRAMP authorization (for US government) during due diligence. These confirm provider's security controls — not customer's configuration quality.
Hypervisor Types:
Hypervisor Hardening:
Hyperjacking Attack: Attacker installs a thin malicious hypervisor below the legitimate OS, making the OS a VM running on the attacker's hypervisor. Extremely sophisticated, rare in practice. Detection: TPM attestation — hardware root of trust verifies boot chain integrity. Secure Boot, UEFI password for BIOS protection.
VM Escape: Exploit in hypervisor software allows VM to break out of isolation and access host OS or other VMs. Historically rare (VMware VM escape CVEs). Mitigations: keep hypervisor patched, disable guest VM communication features (clipboard), restrict VM privileges.
Security Groups (AWS) / NSGs (Azure) — Stateful, Per-Instance:
NACLs — Stateless, Per-Subnet:
VPC Flow Logs: Capture metadata for all network traffic (src/dst IP, ports, bytes, accept/reject). Equivalent to NetFlow. Stored in S3 or CloudWatch Logs. Essential for incident forensics, traffic pattern analysis, security group validation. Enable on all production VPCs.
Egress Filtering: Prevent C2 callbacks and data exfiltration. NAT Gateway with outbound Security Group restrictions. Web proxy for HTTP/HTTPS inspection. AWS Network Firewall for stateful Suricata rules on egress.
VPC Endpoints (PrivateLink): Access AWS services (S3, DynamoDB, SQS) from private subnets without internet routing — traffic stays within AWS network. Gateway endpoints (S3, DynamoDB — free). Interface endpoints (most services — ENI with private IP). Prevents data exfiltration via public internet path to AWS services.
Transit Gateway: Hub-and-spoke connectivity between multiple VPCs and on-premises. Avoids full VPC peering mesh (n*(n-1)/2 peering connections). Centralize security inspection (firewall in inspection VPC).
Container Image Security:
Kubernetes Security:
Runtime Security: Falco (CNCF) monitors Linux syscalls and generates alerts when container behavior deviates from expected patterns — detect unexpected network connections, file writes in read-only paths, shell spawns in containers. Supply chain: sign images with cosign/Notary, verify signatures before deployment (admission controller policy).
IAM Roles vs Long-Term Access Keys:
Principle of Least Privilege for Cloud IAM:
CloudTrail / Activity Logs:
CSPM (Cloud Security Posture Management):
Cloud WAF:
Cloud DDoS Protection:
Cloud Monitoring Services:
Object Storage Security (S3):
Track your Domain 5 preparation progress.
Tables and code snippets for rapid Domain 5 review.
| Attribute | Security Groups | Network ACLs (NACLs) |
|---|---|---|
| Scope | Per instance (ENI) | Per subnet |
| Statefulness | Stateful — return traffic auto-allowed | Stateless — must define inbound AND outbound |
| Rule type | Allow only (no explicit deny) | Allow and Deny rules available |
| Rule evaluation | All rules evaluated, most permissive applies | Rules evaluated in number order, first match wins |
| Default behavior | Default: deny all inbound, allow all outbound | Default: allow all (number 100 allow * / 32766 allow *) |
| Use case | Primary instance-level firewall | Subnet-level secondary control, IP blacklisting |
| Multiple allowed | Yes — up to 5 SGs per ENI | One NACL per subnet |
| Phase | Security Control | Tool / Implementation |
|---|---|---|
| Build | Base image scanning for CVEs | Trivy, Clair, Snyk in CI/CD pipeline |
| Build | Minimal base image | Alpine, distroless, multi-stage Dockerfile |
| Build | Non-root user | USER instruction in Dockerfile |
| Build | No secrets in image | Build args not in final layer; use secrets management |
| Deploy | Image signature verification | cosign, Notary, Kubernetes admission webhook |
| Deploy | NetworkPolicy default-deny | Kubernetes NetworkPolicy + Calico/Cilium CNI |
| Deploy | Pod Security Admission | Restricted profile: no root, no privileged, read-only FS |
| Runtime | Behavioral detection | Falco — syscall-based anomaly detection |
| Runtime | Syscall restrictions | seccomp profiles, AppArmor profiles |
| # | Misconfiguration | Risk | Fix |
|---|---|---|---|
| 1 | Public S3 bucket with PII | Data breach — direct public access | Block Public Access, bucket policy, Macie scanning |
| 2 | SG: port 22/3389 open to 0.0.0.0/0 | Exposed admin interfaces to internet | Restrict to known IPs or use Systems Manager Session Manager |
| 3 | Root account without MFA | Root compromise = full account takeover | Enable MFA, create IAM users for all operations |
| 4 | CloudTrail disabled | No audit log — blind to API-level attacks | Enable multi-region CloudTrail, S3 log validation |
| 5 | Unencrypted RDS/EBS volumes | Data exposure if storage is accessed | Enable encryption at rest; new volumes default to encrypted |
| 6 | IAM user with AdministratorAccess | Credential theft = full account compromise | Use roles with least privilege, enforce MFA |
| 7 | Access keys in source code | Public repo = instant credential theft | Use IAM roles; git-secrets pre-commit hooks |
| 8 | No VPC Flow Logs | No forensic network data for incidents | Enable on all production VPCs |
| Function | AWS | Azure | GCP |
|---|---|---|---|
| Threat Detection | GuardDuty | Defender for Cloud | Security Command Center |
| CSPM / Compliance | Security Hub + Config | Defender for Cloud | Security Command Center |
| Audit Logging | CloudTrail | Activity Log + Diagnostics | Cloud Audit Logs |
| WAF | AWS WAF | Azure WAF (App GW / Front Door) | Cloud Armor |
| DDoS Protection | Shield Standard / Advanced | DDoS Protection Standard | Cloud Armor |
| Secrets Management | Secrets Manager | Key Vault | Secret Manager |
| Key Management | KMS | Key Vault (keys) | Cloud KMS |
| PII Detection | Macie | Purview | Cloud DLP |
| Network Firewall | Network Firewall | Azure Firewall | Cloud Firewall / FW Policies |
Test your knowledge with scenario-based questions.
Focused plan covering all cloud security architecture topics with hands-on labs.
Cloud security misconceptions that frequently appear on GDSA exam questions.
Common questions about cloud security architecture concepts.