Cloud Security Review (GCP-Template)
Cloud Security Review (GCP-Template)
klist
GCP Security Audit Check
About the Document
This checklist will be extremely useful for Security Leaders, Security Practitioners, Security E
Version Details
Version Author
v 0.1 Prasad
v 1.0 Prasad
v 1.1 Prasad
GCP Details
Application Name
Cloud Platform GCP
Environment Details
Types of Penetration Testing Grey Box
Methodology Discovery - Verify -Audit
Date of Review 12/3/2023
GCP Team
Analyst Name
After carefully going through Google’s Cloud Platform Acceptable Usage Policy and Terms of Service, a list of activ
conducting google cloud penetration testing on an organization’s cloud presence. A scenario has
GCP Security Audit Checklist
e extremely useful for Security Leaders, Security Practitioners, Security Engineers, and Risk and Compliance Officers.
Changes Date
First Draft 9/18/2023
First Release 10/15/2023
Second Release 11/10/2023
GCP
Grey Box
Discovery - Verify -Audit
12/3/2023
on
oud Platform Acceptable Usage Policy and Terms of Service, a list of activities has been created which contains dos and don’ts while
penetration testing on an organization’s cloud presence. A scenario has been illustrated for a better understanding.
Officers.
Legend
Customer
GCP
Both
Cloud Responsibility Table
o visually offer reminders as to what action falls under whose jurisdiction
Not Implemented
✅ Encrypt data in transits using TLS Implemented
✅ Create backups and snapshots of critical data and resources Implemented
Partially
✅ Use Google Cloud Endpoints for API management and security Implemented
✅ Implementation DLP policy to prevent sensitive data leakage Not Implemented
✅ Rotate KMS encryption keys Implemented
✅ Uniform bucket-level access enabled Implemented
✅ Not publicly accessible (KMS, Cloud Storage,
Instance,Endpoints,Database,API Keys ,SA, Buckets ) Implemented
✅Cloud SQL
1.Enable SSL to all incoming connections
2.Not publicly accessible
3.Do not have public IPs
4.Automated backups configured
Implemented
✅ Cloud Logging
1.Ensure that Cloud Audit Logging is configured
2.Ensure that sinks are configured
3.Retention policies on log buckets are configured
4.Enable logs router encryption
Implemented
✅ GKE
1.Enable secrets encryption
2.Enable GKE cluster node encryption
3.Restrict network access
Implemented
✅ Computer Engine
1.Enable Block Project-wide SSH keys
2.Not Enable connecting to serial ports
3.Encrypted with CSEK for critical VMs
Implemented
✅ SSH Keys Implementation Implemented
Enable Security Command Center Dashboard
To enable the Security Command Center Dashboard in Google Cloud Platform (GCP), you can follow these steps:
1.Go to the Security Command Center page in the Google Cloud console .
2.Select the project or organization that you want to review.
3.If Security Command Center is active in the organization or project you select, the Overview page displays with an overview
the active vulnerability finding over the last seven days. Recommendation / Comment
4.If Security Command Center is not active, you are invited to activate it
Set Up Org level policy
N/A
Project Level access setup
N/A
Remove unmanaged and default account
N/A
For business continuity and convenience you should have at least two organizational admins. This provides redundancy, in cas
for any reason or if an account is lost. But be careful of adding too many admins to your organization. The general principle is
N/A
It is best to use groups when configuring GCP access, assign roles to the groups instead of individual users.
Remember, it’s easier to track one rule that allows traffic to a range of VMs than it is to track separate rules for each VM
N/A
In
Use Google Cloud Platform
hierarchical (GCP),rules
firewall policy VPCto Flow Logs
block is a feature
traffic that never
that should allowsbe you to capture
allowed at aninformation
organizationabout the IP
or folder traffic going to
level.
your Virtual Private Cloud (VPC). This can be useful for network monitoring,
For "allow" rules, restrict them to specific VMs by specifying the service account of the VMs forensics, real-time security analysis, and expense
Here are the steps to set up an audit trail in GCP:
N/A
To enable VPCLogs:
Flow GCP
Logsprovides
in GCP, you can follow
1.Cloud Audit a service calledthese
Cloudsteps:
Audit Logs that helps security teams maintain audit trail . Every admin
Always used always-on
a hardened, serviced based
auditfirewall
trail, which cannot be disabled by any rogue actor. Data access logs can be customized to best su
1.Go
N/A to monitoring
around the VPC networks page in the Google Cloud Console.
and compliance.
2.Click the name of a subnet to display the Subnet details page.
N/A
3.Click the EDIT
2.Real-time button.
delivery of audit events: Receive near real-time delivery of the audit events in Cloud Audit Logs within seconds of
N/A
4.Set
to Flowassess
quickly Logs toand On.act on any identified behavior in the most appropriate ways for your organization.
5.Click Save.
Alternatively,audit
3.Immutable you can create
trail: Clouda Audit
new custom-mode
Logs reside in network and enable
highly protected VPC Flow
storage, Logs.in a secure, immutable, and highly durab
resulting
Keep up to date dependency and API
You can view VPC
4.End-to-end Flow LogsCloud
transparency: by using theLogs
Audit Logsfeatures
ExplorerAdmin
. In theActivity
Select log
logsnames list, clickadministrative
documenting vpc_flows, and then click
events, and Apply
Data Acces
cloud data by your users.
Crete separate subnet as per required
N/A
5.Default encryption: Cloud Audit Logs is encrypted at rest using either AES256 or AES128, which is also used to help protect t
N/A
infrastructure.
Google Cloud Key Management Service (KMS) is a cloud service for managing cryptographic keys for your Google Cloud service
N/A
1.Preparing Secrets: Have application secrets for each environment.
6.Integration
2.Creating KMS with partners:
Secret Keys: This
Createservice
keys provides easy-to-use
in the Google integration guides with popular SIEM partners via flexible Pub/S
Cloud KMS.
N/A
integration
3.Assigning modules.
Permission to use these keys: Assign appropriate permissions to use these keys.
N/A
4.Encrypting Secrets: Encrypt the secrets using the created keys.
Remember, users should
5.Using Encrypted Secretsnot be able
in the to amendUse
deployment: or switch off the audit
these encrypted trail. in
secrets Where a system administrator amends or switches
your deployment.
that action should be retained. Periodic checks
6.Using secrets at runtime: Use these secrets at runtime. should be conducted to verify that audit trails remain enabled and effective.
7.KMS Audit Logs: Enable audit logs for your KMS
Google Stackdriver is a unified monitoring, logging, and diagnostics service that simplifies operations for applications running o
N/A
If necessary in the project, activate the compliance feature in the GCP Security Command Center.
N/A
Set up to 90 days
Binary Authorization: Create policies specific to each cluster and set the default project-level policy to “Deny All Images”. Any
then need its own cluster-specific policy.
Shielded GKE Nodes: Enable Shielded GKE Nodes at cluster creation or update. Secure boot should be enabled with Shielded G
Confidential GKE Nodes: Enable Confidential GKE Nodes on a cluster or on a node pool, data in workloads running on the confi
use
Application-layer Secrets Encryption: Enable Application-layer Secrets Encryption for your GKE cluster
Workload Identity: Use service accounts to authenticate to Google cloud. Create service accounts for each application that acc
Google Groups for RBAC: Enable Google Groups for RBAC and enter your security group name
Legacy Authorization: Disable Legacy Authorization and ensure that Kubernetes RBAC and IAM are the sources of truth
Basic Authentication: It is recommended to disable Basic Authentication and use other more secure methods like OAuth 2.0
Client Certificate: It is recommended to disable Client Certificate Authentication and use other more secure methods like OAu
N/A