{"answers":{"affected":"9 open source packages ship an affected version, including github.com/kong/kubernetes-ingress-controller, github.com/kong/kubernetes-ingress-controller/v2 and github.com/kong/kubernetes-ingress-controller/v3.","exploited":"There is no known exploitation of GHSA-3278-c88v-xrh4 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"GHSA-3278-c88v-xrh4 is a vulnerability in github.com/kong/kubernetes-ingress-controller, published on 19 May 2026. It can only be exploited from the same machine or local network, with no action from the victim."},"fix_prompt":"Check this codebase for GHSA-3278-c88v-xrh4 and fix it if it is affected.\n\nWhat it is: GHSA-3278-c88v-xrh4 is a vulnerability in github.com/kong/kubernetes-ingress-controller, published on 19 May 2026. It can only be exploited from the same machine or local network, with no action from the victim.\nExploitation: There is no known exploitation of GHSA-3278-c88v-xrh4 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- github.com/kong/kubernetes-ingress-controller (Go): affected all versions; no fix listed\n- github.com/kong/kubernetes-ingress-controller (Go): affected all versions up to 1.3.4; no fix listed\n- github.com/kong/kubernetes-ingress-controller (Go): affected all versions up to 1.3.4; no fix listed\n- github.com/kong/kubernetes-ingress-controller/v2 (Go): affected all versions; no fix listed\n- github.com/kong/kubernetes-ingress-controller/v2 (Go): affected all versions up to 2.12.8; no fix listed\n- github.com/kong/kubernetes-ingress-controller/v2 (Go): affected all versions up to 2.12.8; no fix listed\n- github.com/kong/kubernetes-ingress-controller/v3 (Go): affected all versions; fixed in 3.5.7\n- github.com/kong/kubernetes-ingress-controller/v3 (Go): affected all versions; fixed in 3.5.7\n- github.com/kong/kubernetes-ingress-controller/v3 (Go): affected all versions; fixed in 3.5.7\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/GHSA-3278-c88v-xrh4/ (Markdown: https://insights.sbomify.com/GHSA-3278-c88v-xrh4/index.md)","id":"GHSA-3278-c88v-xrh4","markdown":"https://insights.sbomify.com/GHSA-3278-c88v-xrh4/index.md","name":"GHSA-3278-c88v-xrh4","record":{"aliases":["GO-2026-5010"],"analysis":{"component_type":"container_or_infrastructure","fix_type":"patch","impacts":["data_read"],"network_reachable":"adjacent_or_local","non_default_config":true,"product_category":"Kubernetes ingress controller","requires_auth":"none","summary":"Unauthenticated attackers on the cluster network can read sensitive plugin credentials from the Kong Ingress Controller diagnostics endpoint if diagnostics are enabled.","user_interaction":"not_required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"## Summary\n\nA vulnerability in the Kong Ingress Controller (KIC) allows for the unauthorized exposure of sensitive plugin credentials through the diagnostics interface. Even when configured to redact sensitive information (using `--dump-sensitive-config=false`), KIC fails to sanitize the `Plugins` field in diagnostic configuration dumps. This causes secrets referenced via `configFrom.secretKeyRef` to be resolved and displayed in plaintext.\n\nBecause the diagnostics HTTP endpoints require no authentication, any process within the cluster network capable of reaching the KIC pod can exfiltrate sensitive data, including API keys, bearer tokens, and database passwords.\n\n## Am I affected?\n\nYou are affected if all of the following hold:\n1. You are using Kong Ingress Controller with **diagnostics enabled** (`--dump-config=true`).\n2. You have **not explicitly enabled** sensitive dumping (`--dump-sensitive-config=false`), creating an expectation of redaction.\n3. You use `KongPlugin` or `KongClusterPlugin` resources that reference Kubernetes Secrets via **`configFrom.secretKeyRef`**.\n4. The KIC diagnostics port (default `10256`) is reachable by other workloads or users within your cluster.\n\nYou are not affected if:\n- The `--dump-config` flag is set to `false` (default behavior).\n- You do not use secret-backed configurations in your Kong plugins.\n- Access to the KIC pod's diagnostic port is strictly blocked by NetworkPolicies.\n\n## Mitigation\n\n1. **Disable Diagnostics**: If not actively debugging, disable the diagnostic server by setting `--dump-config=false`.\n2. **Network Isolation**: Implement a `NetworkPolicy` to restrict access to the KIC diagnostics port (default `10256`), ensuring only authorized administrative pods or IPs can reach it.\n3. **Restrict Port-Forwarding**: Limit `kubectl port-forward` RBAC permissions to prevent unauthorized users from accessing the pod's local ports.\n\n## Fix\n\nThe fix introduces proper sanitization for the `Plugins` field within the configuration state. When sensitive dumping is disabled, the controller now replaces all plugin configuration values with a redaction placeholder before they are served via the diagnostics endpoints. Additionally, it is recommended to ensure your deployment environment follows the principle of least privilege regarding network access to controller components.\n\nUsers should upgrade to the latest patched version of Kong Ingress Controller to ensure diagnostic dumps are correctly redacted.","ecosystems":["Go"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":true,"headline":"A vulnerability in the Kong Ingress Controller (KIC) allows for the unauthorized exposure of sensitive plugin credentials through","id":"GHSA-3278-c88v-xrh4","indexable":true,"kev":null,"kind":"advisory","links":{"ecosystem":"Go","product":null,"products":[],"type":"information_disclosure","year":"2026"},"n_packages":9,"n_references":null,"packages":[{"ecosystem":"Go","fixed":[],"introduced":["0"],"last_affected":[],"package":"github.com/kong/kubernetes-ingress-controller","purl":"pkg:golang/github.com/kong/kubernetes-ingress-controller","source":"GO-2026-5010"},{"ecosystem":"Go","fixed":[],"introduced":["0"],"last_affected":["1.3.4"],"package":"github.com/kong/kubernetes-ingress-controller","purl":null,"source":"GHSA-3278-c88v-xrh4"},{"ecosystem":"Go","fixed":[],"introduced":["0"],"last_affected":["1.3.4"],"package":"github.com/kong/kubernetes-ingress-controller","purl":"pkg:golang/github.com/kong/kubernetes-ingress-controller","source":"GHSA-3278-c88v-xrh4"},{"ecosystem":"Go","fixed":[],"introduced":["0"],"last_affected":[],"package":"github.com/kong/kubernetes-ingress-controller/v2","purl":"pkg:golang/github.com/kong/kubernetes-ingress-controller/v2","source":"GO-2026-5010"},{"ecosystem":"Go","fixed":[],"introduced":["0"],"last_affected":["2.12.8"],"package":"github.com/kong/kubernetes-ingress-controller/v2","purl":null,"source":"GHSA-3278-c88v-xrh4"},{"ecosystem":"Go","fixed":[],"introduced":["0"],"last_affected":["2.12.8"],"package":"github.com/kong/kubernetes-ingress-controller/v2","purl":"pkg:golang/github.com/kong/kubernetes-ingress-controller/v2","source":"GHSA-3278-c88v-xrh4"},{"ecosystem":"Go","fixed":["3.5.7"],"introduced":["0"],"last_affected":[],"package":"github.com/kong/kubernetes-ingress-controller/v3","purl":null,"source":"GHSA-3278-c88v-xrh4"},{"ecosystem":"Go","fixed":["3.5.7"],"introduced":["0"],"last_affected":[],"package":"github.com/kong/kubernetes-ingress-controller/v3","purl":"pkg:golang/github.com/kong/kubernetes-ingress-controller/v3","source":"GHSA-3278-c88v-xrh4"},{"ecosystem":"Go","fixed":["3.5.7"],"introduced":["0"],"last_affected":[],"package":"github.com/kong/kubernetes-ingress-controller/v3","purl":"pkg:golang/github.com/kong/kubernetes-ingress-controller/v3","source":"GO-2026-5010"}],"products":null,"published":"2026-05-19","related":[],"sources":[{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CC BY 4.0","name":"Go Vulnerability Database","prefix":"GO"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":"Unauthenticated attackers on the cluster network can read sensitive plugin credentials from the Kong Ingress Controller diagnostics endpoint if diagnostics are enabled.","url":"https://insights.sbomify.com/GHSA-3278-c88v-xrh4/"}