VDB
Sign up
LOW3.2

GHSA-24qp-4xx8-3jvj

Cilium East-west traffic not subject to egress policy enforcement for requests via Gateway API load balancers

Quick fix

GHSA-24qp-4xx8-3jvj — github.com/cilium/cilium: upgrade to the fixed version with the command below.

go get github.com/cilium/cilium@v1.16.8

Details

### Impact

For Cilium users who: - Use Gateway API for Ingress for some services **AND** - Use [LB-IPAM](https://docs.cilium.io/en/stable/network/lb-ipam/) or BGP for LB Service implementation **AND** - Use network policies to block egress traffic from workloads in a namespace to workloads in other namespaces

Egress traffic from workloads covered by such network policies to LoadBalancers configured by `Gateway` resources will incorrectly be allowed.

LoadBalancer resources not deployed via a Gateway API configuration are not affected by this issue.

### Patches

This issue was fixed by https://github.com/cilium/proxy/pull/1172.

This issue affects:

- Cilium v1.15 between v1.15.0 and v1.15.14 inclusive - Cilium v1.16 between v1.16.0 and v1.16.7 inclusive - Cilium v1.17 between v1.17.0 and v1.17.1 inclusive

This issue is fixed in:

- Cilium v1.15.15 - Cilium v1.16.8 - Cilium v1.17.2

### Workarounds

A Clusterwide Cilium Network Policy can be used to work around this issue for users who are unable to upgrade. An outline of such a policy is provided below:

``` apiVersion: "cilium.io/v2" kind: CiliumClusterwideNetworkPolicy metadata: name: "workaround" spec: endpointSelector: matchExpressions: - key: reserved:ingress operator: Exists ingress: - fromEntities: - world ```

- The policy opens up connectivity from all locations outside the cluster into the Cilium Ingress Gateway. - The policy establishes a default deny for all other traffic towards the Cilium Ingress Gateway, including all in-cluster sources. - It is possible to tailor the policy to more narrowly allow inbound traffic while creating a default deny posture for traffic between namespaces. Users should edit the policy to bring it in line with the security requirements particular to their environments.

### Acknowledgements

The Cilium community has worked together with members of the Isovalent team to prepare these mitigations. Special thanks to @jrajahalme for the fix.

### For more information

If you think you have found a vulnerability affecting Cilium, we strongly encourage you to report it to our security mailing list at [security@cilium.io](mailto:security@cilium.io). This is a private mailing list for the Cilium security team, and your report will be treated as top priority.

Are you affected?

Enter the version of the package you're using.

Affected packages

Go/github.com/cilium/cilium
Introduced in: 1.16.0Fixed in: 1.16.8
Fixgo get github.com/cilium/cilium@v1.16.8
Go/github.com/cilium/cilium
Introduced in: 1.17.0Fixed in: 1.17.2
Fixgo get github.com/cilium/cilium@v1.17.2
Go/github.com/cilium/cilium
Introduced in: 1.15.0Fixed in: 1.15.15
Fixgo get github.com/cilium/cilium@v1.15.15

References