Back to Checks
E2E Networks VPC peering does not use external peers
network_vpc_peering_external_peer_disabled
Service: networkSeverity: high
OfficialBuilt-inVerified
Categories:trust-boundaries
Resource Type:NotDefined
E2E Networks VPC peering connections should be established only with internal networks and must not extend trust to external peers outside the account.
Risk
VPC peering with external peers expands trust boundaries and can expose private networks to third parties, enabling lateral movement across accounts.
Run this check with Prowler
Run in Prowler CloudRun
prowler e2enetworks --checks network_vpc_peering_external_peer_disabledRecommendation
Remove VPC peering tunnels that connect to external peers to keep private networks within trusted boundaries.
Check Code
from prowler.lib.check.models import Check, CheckReportE2eNetworks
from prowler.providers.e2enetworks.services.network.network_client import network_client
class network_vpc_peering_external_peer_disabled(Check):
"""Check if E2E Networks VPC peering does not use external peers."""
def execute(self) -> list[CheckReportE2eNetworks]:
findings = []
for tunnel in network_client.vpc_tunnels:
report = CheckReportE2eNetworks(metadata=self.metadata(), resource=tunnel)
report.status = "PASS"
report.status_extended = (
f"VPC peering {tunnel.name} does not use an external peer VPC."
)
if tunnel.is_peer_vpc_external:
report.status = "FAIL"
report.status_extended = (
f"VPC peering {tunnel.name} uses an external peer VPC."
)
findings.append(report)
return findings