VMInstance with unencrypted Elastic search (TCP:9200) is exposed to a small network

Databases store data that may be sensitive, protected by law, subject to regulatory requirements or compliance standards. It is highly recommended that access to data will be restricted to only the applications, services and endpoints that requires access. This rule detects network settings that may expose an instance or a database Cassandra to a too permissive network access.

Risk Level: Medium
Cloud Entity: Virtual Machine Instances
CloudGuard Rule ID: D9.GCP.NET.AG2.3.VMInstance.9200.TCP
Covered by Spectral: No
Category: Compute


VMInstance where nics contain-any [inboundRules contain [ destinationPort<=9200 and destinationPortTo >=9200 and protocol in ('TCP','ALL')]] should not have nics contain-any [inboundRules allowedPublicHostsForPort(9200) > 8 and inboundRules allowedPublicHostsForPort(9200) <= 32]


Configure your database to only allow access from internal networks and limited access scope.
If public interface exists, remove it and limit the access scope within the network only to applications or instances that requires access.
See https://cloud.google.com/compute/docs/networking for further reading about GCP networking and Firewall rules.

Virtual Machine Instances

Compute Engine instances can run the public images for Linux and Windows Server that Google provides as well as private custom images that you can create or import from your existing systems. You can also deploy Docker containers, which are automatically launched on instances running the Container-Optimized OS public image.

You can choose the machine properties of your instances, such as the number of virtual CPUs and the amount of memory, by using a set of predefined machine types or by creating your own custom machine types.

Compliance Frameworks

  • GCP CloudGuard Best Practices
  • GCP CloudGuard Network Security
  • GCP GDPR Readiness
  • GCP LGPD regulation