{"description":"Trending threats, MITRE ATT\u0026CK coverage, and detection metadata. Fed continuously.","favicon":"https://feed.craftedsignal.io/favicon-32x32.png","feed_url":"https://feed.craftedsignal.io/tags/gateway-fabric/feed.json","home_page_url":"https://feed.craftedsignal.io/","icon":"https://feed.craftedsignal.io/apple-touch-icon.png","items":[{"_cs_actors":[],"_cs_cpes":["cpe:2.3:a:nginx:gateway_fabric:*:*:*:*:*:*:*:*"],"_cs_cves":[{"cvss":8.8,"id":"CVE-2026-91184"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["NGINX Gateway Fabric"],"_cs_severities":["high"],"_cs_tags":["configuration-injection","kubernetes","gateway-fabric","cve"],"_cs_type":"advisory","_cs_vendors":["NGINX"],"content_html":"\u003cp\u003eNGINX Gateway Fabric is affected by a configuration injection vulnerability, tracked as CVE-2026-91184, involving the improper handling of the \u003ccode\u003espec.basic.realm\u003c/code\u003e and \u003ccode\u003espec.jwt.realm\u003c/code\u003e fields within the AuthenticationFilter Custom Resource Definition (CRD). When these fields are processed, the Gateway Fabric renders the input verbatim and without validation into the shared \u003ccode\u003enginx.conf\u003c/code\u003e file used by the data plane. An attacker with the ability to define or modify an AuthenticationFilter CRD associated with an HTTPRoute or GRPCRoute on a shared Gateway can supply a malicious string. This string can close the existing \u003ccode\u003eauth_basic\u003c/code\u003e directive and the enclosing \u003ccode\u003elocation\u003c/code\u003e block, enabling the injection of arbitrary NGINX configuration directives. This represents a significant control-plane security risk in multi-tenant Kubernetes environments.\u003c/p\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eAn authenticated attacker capable of modifying AuthenticationFilter resources can compromise the shared gateway's data-plane configuration. This success could result in severe cross-tenant impact, including the unauthorized reading of co-located tenant secrets, Server-Side Request Forgery (SSRF) via the \u003ccode\u003eproxy_pass\u003c/code\u003e directive, theft of pod ServiceAccount tokens, and the hijacking of traffic destined for other tenants. The vulnerability is restricted to the control plane and does not involve direct data-plane exposure, but the configuration injection grants the attacker influence over the entire gateway's routing and security posture.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMonitor Kubernetes API audit logs for suspicious modifications to \u003ccode\u003eAuthenticationFilter\u003c/code\u003e custom resources, specifically looking for unusual characters or NGINX directive keywords within the \u003ccode\u003erealm\u003c/code\u003e field.\u003c/li\u003e\n\u003cli\u003eImplement and enforce Kubernetes Admission Controllers (e.g., OPA Gatekeeper or Kyverno) to validate \u003ccode\u003eAuthenticationFilter\u003c/code\u003e specs and reject input containing characters such as double quotes, curly braces, or semicolon characters in the \u003ccode\u003erealm\u003c/code\u003e fields.\u003c/li\u003e\n\u003cli\u003ePatch NGINX Gateway Fabric to the version that implements strict input validation and escaping for CRD fields.\u003c/li\u003e\n\u003c/ul\u003e\n","date_modified":"2026-10-14T16:38:30Z","date_published":"2026-10-14T16:38:30Z","id":"https://feed.craftedsignal.io/briefs/2026-10-nginx-gateway-fabric-cve-2026-91184/","summary":"NGINX Gateway Fabric contains a configuration injection vulnerability in the AuthenticationFilter Custom Resource Definition that allows authenticated attackers to escape directive contexts and manipulate the shared NGINX data-plane configuration.","title":"Configuration Injection in NGINX Gateway Fabric via AuthenticationFilter CRD","url":"https://feed.craftedsignal.io/briefs/2026-10-nginx-gateway-fabric-cve-2026-91184/"}],"language":"en","title":"CraftedSignal Threat Feed - Gateway-Fabric","version":"https://jsonfeed.org/version/1.1"}