NGINX Gateway Fabric
CVE-2026-50107
HIGH
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain Kubernetes credentials with NginxProxy CRD write rights
-
DeliveryCraft access log format with embedded NGINX directives
-
ExploitSubmit malicious NginxProxy CRD to Kubernetes API
-
ExecutionControl plane renders unsanitized value into config template
-
PersistData plane NGINX loads injected directives
-
ImpactRedirect, mirror, or capture proxied traffic
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Input neutralization, injection prevention
|
| Exploitation Conditions | Exploitation requires (1) a deployment of NGINX Gateway Fabric using NGINX Plus or NGINX Open Source as the data plane, (2) an authenticated Kubernetes identity holding RBAC permissions to create or modify NginxProxy Custom Resource Definitions (typically cluster-admin or a delegated operator role with verbs create/update/patch on nginxproxies.gateway.nginx.org), and (3) supply of a malicious string into the access log format setting of that CRD. Limiting factors: no anonymous or unauthenticated network path exists - the attacker must already have a Kubernetes API token with the relevant write verbs - and the bug is purely a control-plane CRD injection, so data plane clients alone cannot trigger it; End of Technical Support versions are explicitly out of scope of the advisory. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N) reflects a network-reachable, low-complexity attack requiring low privileges and no user interaction, with high confidentiality and integrity loss but no availability impact and no scope change to subsequent systems - consistent with an in-cluster control-plane abuse. PR:L is appropriate because the attacker must be an authenticated Kubernetes principal with RBAC rights to mutate NginxProxy CRDs, which is typically a cluster-operator or namespace-admin role rather than an ordinary tenant. There is no public exploit identified at time of analysis and the CVE is not listed on CISA KEV; EPSS data was not provided. Real-world risk is therefore moderate: the bug is reliable and easy to weaponize once the prerequisite RBAC is held, but the prerequisite itself meaningfully narrows the attacker population to insiders or attackers who have already pivoted into a privileged service account. |
| Exploit ScenarioDerived | An attacker who has obtained Kubernetes credentials with edit rights on NginxProxy CRDs - for example a compromised CI service account or a malicious namespace administrator - submits an NginxProxy resource whose accessLog.format field contains a crafted string that terminates the log_format directive and appends additional NGINX directives. When the Gateway Fabric control plane renders this into the data plane configuration, the injected directives (for example, additional server blocks, lua_package_path, or proxy_pass to attacker-controlled upstreams) are loaded by NGINX, enabling traffic interception, credential exfiltration via mirrored requests, or modification of routing behavior. No public exploit code is identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv3 – Jun 18, 2026
Configuration injection in F5 NGINX Gateway Fabric allows an authenticated Kubernetes user with permission to create or modify NginxProxy Custom Resource Definitions to inject arbitrary NGINX directives into generated configuration files via the unsanitized access log format setting. The flaw resides in the control plane configuration generator and affects deployments using NGINX Plus or NGINX Open Source as the data plane. There is no public exploit identified at time of analysis, and CVSS 4.0 rates the impact at 8.6 (High) driven by high confidentiality and integrity loss on the vulnerable system.
Earlier versions of this analysis (2)
Configuration injection in NGINX Gateway Fabric allows authenticated Kubernetes users with NginxProxy CRD permissions to inject arbitrary NGINX directives via the access log format field, which is rendered into config templates without escaping. CVSS 4.0 scores this 8.6 (High) due to network-reachable control plane with low privileges, and F5 has published advisory K000161785; no public exploit identified at time of analysis and the issue is not in CISA KEV.
Configuration injection in NGINX Gateway Fabric allows an authenticated Kubernetes user with rights over the NginxProxy Custom Resource Definition to inject arbitrary NGINX directives into the generated data-plane configuration. The flaw lives in the control plane's NGINX config generator, where the access log format field of the NginxProxy CRD is rendered verbatim into templates without sanitization. No public exploit identified at time of analysis and the CVE is not listed in CISA KEV.
RemediationAI
Patch availability per vendor advisory: upgrade NGINX Gateway Fabric to the fixed release identified in F5 advisory K000161785 (https://my.f5.com/manage/s/article/K000161785); exact fix versions are not enumerated in the input data and must be taken from the advisory. Until patched, restrict Kubernetes RBAC so that only trusted cluster operators can create or update NginxProxy CRDs (verbs create/update/patch on the nginxproxies resource in the gateway.nginx.org API group), since the vulnerability is gated entirely by that permission - note this trade-off limits self-service tuning by namespace owners. Additionally consider admission-control policies (Kyverno, OPA Gatekeeper, or ValidatingAdmissionPolicy) that reject NginxProxy resources whose access log format contains newline, semicolon, or NGINX directive keywords, accepting that overly strict regex may also block legitimate format strings. Audit existing NginxProxy CRDs for suspicious access log format values before applying upgrades.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
NGINX Gateway Fabric is F5's Kubernetes Gateway API implementation that translates Gateway, HTTPRoute, and proxy custom resources into NGINX configuration consumed by data plane pods. The NginxProxy CRD exposes operator-controlled tuning knobs including the access log format, whose string values are rendered directly into NGINX configuration templates by the control plane's config generator. Because the templating step omits escaping and sanitization, this is a textbook CWE-74 (Improper Neutralization of Special Elements in Output) injection - the attacker controls a template variable that becomes structurally meaningful NGINX directives once rendered. The affected component is the control plane only (cpe:2.3:a:f5:nginx_gateway_fabric); F5 explicitly notes the data plane itself is not directly exposed by the trigger, though the injected directives are ultimately loaded by data plane NGINX instances.
Know when Nginx Gateway Fabric gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Requires Kubernetes RBAC over NginxProxy CRDs (PR:H), network-reachable API (AV:N/AC:L), and control-plane-to-data-plane crossing justifies S:C with high C/I and low availability impact.
Primary rating from Vendor (f5).
CVSS VectorVendor: f5
Lifecycle Timeline
1DescriptionCVE.org
When NGINX Plus or NGINX Open Source is configured as the data plane for NGINX Gateway Fabric, an injection vulnerability exists in the NGINX configuration generator component of NGINX Gateway Fabric. User-supplied string values from the NginxProxy Custom Resource Definition (CRD) access log format setting are rendered directly into NGINX configuration templates without sanitization or escaping. An authenticated attacker with permission to create or modify these CRDs may craft values that inject arbitrary NGINX configuration directives. This is a control plane issue; there is no data plane exposure from the vulnerability trigger itself.
Note: Software versions which have reached End of Technical Support (EoTS) are not evaluated.
Articles & Coverage 1
Executive ViewAI
F5 NGINX Gateway Fabric contains a configuration injection vulnerability affecting authenticated Kubernetes users, enabling attackers to inject arbitrary NGINX directives through manipulated resource definitions. Organizations running this gateway control plane face potential exposure of sensitive data and unauthorized system configuration changes. Immediate action required to restrict Kubernetes permissions and monitor for remediation options.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict Kubernetes RBAC permissions-only grant NginxProxy CRD create/modify privileges to highly trusted service accounts with business justification; (2) Implement audit logging and alerting on all NginxProxy resource changes; (3) Enforce network segmentation to limit exposure of NGINX data plane configuration; (4) Monitor F5 security bulletins for patch release. These controls reduce attack surface but do not eliminate underlying vulnerability.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Affected Products (CPE)CVE.org
More in Nginx Gateway Fabric
View allDirective injection in NGINX Gateway Fabric lets an authenticated namespaced tenant escape the auth_basic "<realm>"; quo
Configuration injection in F5 NGINX Gateway Fabric lets an authenticated Kubernetes user who can create or modify NginxP
Configuration injection in NGINX Gateway Fabric allows authenticated Kubernetes users with CRD or Secret write permissio
Denial-of-service in F5 NGINX Gateway Fabric allows an authenticated Kubernetes user with rights to create or modify GRP
A namespaced authenticated attacker holding access to a Kubernetes service account can impersonate the NGINX Agent gRPC
NGINX proxy configurations forwarding traffic to upstream TLS servers can be exploited by network-positioned attackers t
NVD
CVE.org
EPSS
Vulnrichment
VulDB
GitHub PoC
Exploit-DB