mediumVulnerability

GHSA-m23h-6mwm-39m8

## Summary A vulnerability in the Kong Ingress Controller (KIC) allows for the unauthorized exfiltration of TLS certificates and private keys across Kubernetes namespace boundaries. In "managed" mode (where the `GatewayClass` lacks an unmanaged annotation), the Gateway TLS translator skips critical status checks. This bypass allows the translator to fetch Secrets from any namespace KIC watches, even when a `ReferenceGrant` explicitly denies access or is missing. An actor with RBAC permissions to create or modify Gateways in a low-privileged namespace can reference a Secret in a high-privileged namespace, causing KIC to "leak" that Secret's sensitive private key material into the Kong dataplane configuration. ## Am I affected? You are affected if all of these hold: 1. You are using Kong Ingress Controller with the **Gateway API**. 2. Your `GatewayClass` is operating in **managed mode** (default behavior, no unmanaged annotation). 3. KIC is configured to **watch multiple namespaces** (multi-tenant environment). 4. Users have RBAC permissions to `create` or `update` `gateways.gateway.networking.k8s.io` in their own namespaces. You are not affected if any of this: - You only use KIC for `Ingress` resources (not Gateway API). - Your `GatewayClass` uses the `konghq.com/gateway-unmanaged` annotation. - KIC is restricted via RBAC or configuration to only watch a single namespace. - You have strictly limited Gateway creation/modification permissions to trusted cluster administrators only. ## Mitigation 1. **Add unmanaged gateway annotation**: add the `konghq.com/gateway-unmanaged` annotation to your `GatewayClass` ### Additional best practicies 1. **Restrict Gateway RBAC**: Limit the ability to create or modify Gateway resources to high-trust administrative users until a patch is applied. 2. **Namespace Isolation**: If possible, limit the namespaces KIC is permitted to watch using the `WATCH_NAMESPACE` environment variable or specific RBAC RoleBindings. ## Fix The

Properties

ghsa_id
GHSA-m23h-6mwm-39m8
severity
medium
summary
Kong Ingress Controller for Kubernetes (KIC): Cross-namespace TLS Secret Exfiltration in Gateways with GatewayClass missing `konghq.com/gatewayclass-unmanaged: 'true'` annotation
cve_id
GHSA-m23h-6mwm-39m8
is_ghsa_only
true
ghsa_published
2026-05-19T19:30:23Z
source_url
https://github.com/advisories/GHSA-m23h-6mwm-39m8
ghsa_updated
2026-05-19T19:30:26Z

Related Entities (8)

VULNERABLE_TO (3)

[Software]go/github.com/kong/kubernetes-ingress-controller/v3
[Software]go/github.com/kong/kubernetes-ingress-controller/v2
[Software]go/github.com/kong/kubernetes-ingress-controller

AFFECTS (3)

[Software]go/github.com/kong/kubernetes-ingress-controller/v2
[Software]go/github.com/kong/kubernetes-ingress-controller/v3
[Software]go/github.com/kong/kubernetes-ingress-controller

HAS_WEAKNESS (1)

[Weakness]Exposure of Sensitive Information to an Unauthorized Actor

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph

GHSA-m23h-6mwm-39m8 — Ninja Signal Threat Intelligence | Ninja Signal