Skip to main content

More Info:

Ensure that Restrict Shared VPC Subnetworks policy is enforced for your GCP organizations.

Risk Level

Medium

Address

Operational Maturity, Security

Compliance Standards

  • Cloudanix Best Practice

Triage and Remediation

Remediation

Using Console

To remediate the “Restrict Shared VPC Subnetworks” misconfiguration in GCP using GCP console, you can follow these steps:
  1. Open the GCP console and go to the VPC network page.
  2. Select the shared VPC network for which you want to restrict subnetworks.
  3. In the “Subnetworks” section, click on the “Edit” button.
  4. In the “Subnetworks” dialog box, uncheck the “Allow new subnetworks in this VPC network” option.
  5. Click on the “Save” button to apply the changes.
By following these steps, you have successfully restricted the creation of new subnetworks in the shared VPC network, which will help in preventing unauthorized access and potential security threats.

To remediate the misconfiguration of “Restrict Shared VPC Subnetworks” in GCP using GCP CLI, you can follow the below steps:Step 1: Open the Cloud ShellStep 2: Run the below command to list all the subnetworks in the shared VPC:
Note: Replace [SHARED_VPC_NAME] and [HOST_PROJECT_ID] with the actual shared VPC name and host project ID.Step 3: Run the below command to restrict the subnetworks in the shared VPC:
Note: Replace [SHARED_VPC_NAME] and [HOST_PROJECT_ID] with the actual shared VPC name and host project ID.This command will disable all the shared VPC features which can be enabled on subnetworks.Step 4: Run the below command to verify the changes:
Note: Replace [SHARED_VPC_NAME] and [HOST_PROJECT_ID] with the actual shared VPC name and host project ID.This command will display the details of the shared VPC and confirm that the subnetworks are restricted.By following these steps, you can remediate the misconfiguration of “Restrict Shared VPC Subnetworks” in GCP using GCP CLI.
To remediate the misconfiguration of “Restrict Shared VPC Subnetworks” for GCP using Python, follow the below steps:
  1. First, you need to create a service account and download the JSON key for authentication.
  2. Install the Google Cloud SDK and the necessary Python libraries.
  3. Use the following Python code to remediate the misconfiguration:
This code will set the “private_ip_google_access” property of the subnetwork to “false”, which will restrict shared VPC subnetworks.Note: Make sure to replace the “path/to/service_account_key.json”, “your_project_id”, and “your_subnetwork_name” with the actual values.
Substitute:
  • YOUR_ORG_ID with your organization ID.
  • SHARED_VPC_HOST_PROJECT, REGION, ALLOWED_SUBNETWORK_1, etc., with the actual Shared VPC host project, region, and allowed subnet names.
This change does not force replacement of existing projects or subnetworks, but it may block new/updated Shared VPC attachments that do not use one of the allowed subnetworks.Verification: terraform plan should show creation or update of google_org_policy_policy.restrict_shared_vpc_subnetworks with name = organizations/YOUR_ORG_ID/policies/constraints/compute.restrictSharedVpcSubnetworks and the intended allowed_values under spec[0].rules[0].values[0].