More Info:
Enable Vpc Flow Logs And Intranode Visibility To See Pod-Level Traffic, Even For Traffic Within A Worker Node.Risk Level
LowAddress
SecurityCompliance Standards
- CIS GKE
Triage and Remediation
- Remediation
Remediation
Manual Steps
Manual Steps
-
Identify the cluster’s VPC network and subnetwork (any machine with gcloud access)
Note the values of
network,subnetwork, andnetworkConfig.enableIntraNodeVisibility. -
Review whether intranode visibility is already enabled (any machine with gcloud access)
From the previous command’s output, checknetworkConfig.enableIntraNodeVisibility:true→ intranode visibility is enabled.falseornull→ intranode visibility is not enabled; plan if enabling it is acceptable (extra logging, potential cost, and privacy considerations).
-
Check current VPC Flow Logs configuration on the cluster subnet (any machine with gcloud access)
Review
enableFlowLogsandlogConfigto understand current logging status and granularity. -
Decide on enabling VPC Flow Logs and intranode visibility
With your security/networking team, determine:- Whether pod‑level and intra‑node traffic visibility is required for your threat model and compliance.
- Acceptable log volume, retention, and access controls in Cloud Logging. If both are required and acceptable, proceed to enable them.
-
Enable VPC Flow Logs on the subnet and intranode visibility on the cluster (any machine with gcloud access)
a. Enable VPC Flow Logs on the subnet:b. Enable intranode visibility on the cluster (this may be a mutating operation on the cluster config): -
Verify that the configuration change is effective (any machine with gcloud access)
a. Re-run the cluster describe command to confirm intranode visibility:Ensure the output istrue.
b. Re-run the subnet describe command to confirm flow logs:EnsureenableFlowLogsistrue.
Using kubectl
Using kubectl
kubectl cannot enable VPC Flow Logs or Intranode Visibility because they are configured on the GCP VPC subnet and GKE cluster network settings via the cloud provider (gcloud/Console/IaC), not via Kubernetes API objects. To remediate this finding, follow the guidance in the Manual Steps section using gcloud or your infrastructure-as-code tooling.
Automation
Automation
- Each line is a cluster:
intra_node_visibilityis the value of.networkConfig.enableIntraNodeVisibilityvpc_flow_logs_enabledreflects whether VPC Flow Logs are enabled on the cluster’s subnetwork
intra_node_visibilityisfalse(ornull), orvpc_flow_logs_enabledisfalseorunknown-subnet-or-shared-vpc
true, and then follow the benchmark remediation manually using gcloud or your IaC to enable:- Intra-node visibility on the cluster
- VPC Flow Logs on the associated subnetwork

