GCP 환경에서 펜테스트를 수행하려면 GCP에서 사용되는 모든 서비스를 확인하기 위해 충분한 권한을 요청해야 합니다. 이상적으로, 클라이언트에게 다음을 요청하여야 합니다:
해당 프로젝트 내에 서비스 계정을 생성하고 (json 자격 증명을 얻음) 또는 새로운 사용자를 생성합니다.
이후에 언급되는 역할을 ORGANIZATION에 대해 서비스 계정 또는 사용자에게 부여합니다.
생성된 프로젝트에서 이후에 언급되는 API를 활성화합니다.
이후 제안된 도구를 사용하기 위한 권한 집합:
Copy roles/viewer
roles/resourcemanager.folderViewer
roles/resourcemanager.organizationViewer
APIs를 활성화하기 위해 (starbase에서):
Copy gcloud services enable \
serviceusage.googleapis.com \
cloudfunctions.googleapis.com \
storage.googleapis.com \
iam.googleapis.com \
cloudresourcemanager.googleapis.com \
compute.googleapis.com \
cloudkms.googleapis.com \
sqladmin.googleapis.com \
bigquery.googleapis.com \
container.googleapis.com \
dns.googleapis.com \
logging.googleapis.com \
monitoring.googleapis.com \
binaryauthorization.googleapis.com \
pubsub.googleapis.com \
appengine.googleapis.com \
run.googleapis.com \
redis.googleapis.com \
memcache.googleapis.com \
apigateway.googleapis.com \
spanner.googleapis.com \
privateca.googleapis.com \
cloudasset.googleapis.com \
accesscontextmanager.googleapis.com
개별 도구 권한
Copy From https://github.com/carlospolop/PurplePanda/tree/master/intel/google#permissions-configuration
roles/bigquery.metadataViewer
roles/composer.user
roles/compute.viewer
roles/container.clusterViewer
roles/iam.securityReviewer
roles/resourcemanager.folderViewer
roles/resourcemanager.organizationViewer
roles/secretmanager.viewer
ScoutSuite는 Google Cloud Platform(GCP)의 권한에 대한 정보를 수집하는 도구입니다. 이 도구를 사용하여 GCP 환경에서 펜테스트를 수행하기 전에 권한 설정을 분석할 수 있습니다. ScoutSuite는 GCP 리소스에 대한 권한을 검사하고, 불필요한 권한, 부적절한 권한 및 권한 부여 오류를 식별합니다. 이를 통해 GCP 환경의 보안 취약점을 식별하고, 효과적인 보안 강화를 위한 조치를 취할 수 있습니다.
Copy From https://github.com/nccgroup/ScoutSuite/wiki/Google-Cloud-Platform#permissions
roles/Viewer
roles/iam.securityReviewer
roles/stackdriver.accounts.viewer
CloudSploit는 GCP 클라우드 환경에서 보안 취약점을 검사하는 오픈 소스 도구입니다. CloudSploit는 GCP 리소스의 구성과 권한 설정을 분석하여 보안 위험을 식별합니다. 이 도구를 사용하여 GCP 환경에서 발생할 수 있는 보안 문제를 신속하게 파악할 수 있습니다.
Copy From https://github.com/aquasecurity/cloudsploit/blob/master/docs/gcp.md#cloud-provider-configuration
includedPermissions:
- cloudasset.assets.listResource
- cloudkms.cryptoKeys.list
- cloudkms.keyRings.list
- cloudsql.instances.list
- cloudsql.users.list
- compute.autoscalers.list
- compute.backendServices.list
- compute.disks.list
- compute.firewalls.list
- compute.healthChecks.list
- compute.instanceGroups.list
- compute.instances.getIamPolicy
- compute.instances.list
- compute.networks.list
- compute.projects.get
- compute.securityPolicies.list
- compute.subnetworks.list
- compute.targetHttpProxies.list
- container.clusters.list
- dns.managedZones.list
- iam.serviceAccountKeys.list
- iam.serviceAccounts.list
- logging.logMetrics.list
- logging.sinks.list
- monitoring.alertPolicies.list
- resourcemanager.folders.get
- resourcemanager.folders.getIamPolicy
- resourcemanager.folders.list
- resourcemanager.hierarchyNodes.listTagBindings
- resourcemanager.organizations.get
- resourcemanager.organizations.getIamPolicy
- resourcemanager.projects.get
- resourcemanager.projects.getIamPolicy
- resourcemanager.projects.list
- resourcemanager.resourceTagBindings.list
- resourcemanager.tagKeys.get
- resourcemanager.tagKeys.getIamPolicy
- resourcemanager.tagKeys.list
- resourcemanager.tagValues.get
- resourcemanager.tagValues.getIamPolicy
- resourcemanager.tagValues.list
- storage.buckets.getIamPolicy
- storage.buckets.list
Copy From https://lyft.github.io/cartography/modules/gcp/config.html
roles/iam.securityReviewer
roles/resourcemanager.organizationViewer
roles/resourcemanager.folderViewer
Copy From https://github.com/JupiterOne/graph-google-cloud/blob/main/docs/development.md
roles/iam.securityReviewer
roles/iam.organizationRoleViewer
roles/bigquery.metadataViewer
Last updated 9 months ago