CVE-2026-15176: 
NGINX vulnerability analysis and mitigation

Overview

CVE-2026-15176 is a heap-based buffer overflow vulnerability in F5's NGINX Plus and NGINX Open Source that can be triggered by unauthenticated attackers via crafted HTTP requests under specific configuration conditions. It affects NGINX Open Source versions 0.1.29 through 1.30.6 (exclusive) and 1.31.0 through 1.31.7 (exclusive), and NGINX Plus R33–R36, versions 37.0.0–37.0.5.1, and 37.1.0–37.1.0.1. The vulnerability was published on October 14, 2026, and is classified as Critical with a CVSS v4 base score of 9.2 and a CVSS v3.1 base score of 8.1 (High) (GitHub Advisory, F5 Advisory).

Technical details

The root cause is a heap-based buffer overflow (CWE-122) in the NGINX worker process, triggered when a server location block uses the alias directive in combination with rewrite and a set or return directive that references the $request_filename variable. The same overflow can also be triggered when $request_filename is used in an access log format directive. An unauthenticated remote attacker sends specially crafted HTTP requests that cause improper memory handling in the worker process; exploitation is network-based but requires high attack complexity, as conditions partially beyond the attacker's control must be met. No public proof-of-concept code has been identified at the time of disclosure (GitHub Advisory, F5 Advisory).

Impact

Successful exploitation can cause the NGINX worker process to crash, resulting in a denial-of-service (DoS) condition as the worker restarts. On systems where Address Space Layout Randomization (ASLR) is disabled or can be bypassed, an attacker may achieve arbitrary code execution with the privileges of the NGINX worker process, potentially leading to full system compromise, data exfiltration, or lateral movement within the network. This is a data plane issue only — there is no control plane exposure (GitHub Advisory, F5 Advisory).

Exploitability

As of the disclosure date, there is no public proof-of-concept exploit and no evidence of in-the-wild exploitation (Feedly). The EPSS score is 0.0, reflecting the current absence of observed exploitation activity. The vulnerability has not been added to the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires high attack complexity due to conditions partially outside the attacker's control, and code execution is further constrained by ASLR on most modern systems (GitHub Advisory).

Exploitation steps

  1. Reconnaissance: Identify internet-facing NGINX instances running vulnerable versions (Open Source < 1.30.6 or 1.31.0–1.31.7; Plus R33–R36 or 37.0.0–37.0.5.1 / 37.1.0–37.1.0.1) using tools like Shodan or Censys, and fingerprint the server version via HTTP response headers.
  2. Identify vulnerable configuration: Determine whether the target NGINX instance uses a location block with the alias directive combined with rewrite and a set or return directive referencing $request_filename, or uses $request_filename in an access log format — these are the prerequisite configurations for exploitation.
  3. Craft malicious HTTP request: Construct an HTTP request with a specially crafted URI or headers designed to trigger abnormal evaluation of the $request_filename variable, causing a heap buffer overflow in the worker process.
  4. Trigger DoS or code execution: Send the crafted request to the vulnerable endpoint. On ASLR-enabled systems, this will crash and restart the NGINX worker (DoS). On systems with ASLR disabled or where ASLR can be bypassed (e.g., via information leak), the overflow may be leveraged for arbitrary code execution as the NGINX worker user (GitHub Advisory, F5 Advisory).

Indicators of compromise

  • Logs: Repeated NGINX worker process crash/restart entries in system logs (e.g., systemd or syslog showing nginx worker process exited); unusual or malformed URI patterns in NGINX access logs targeting locations configured with alias and rewrite directives.
  • Process: Unexpected NGINX worker process restarts in rapid succession; child processes spawned by the NGINX worker (e.g., /bin/sh, curl, wget) if code execution is achieved.
  • Network: High volume of crafted HTTP requests from a single or rotating set of source IPs targeting specific NGINX location blocks; unexpected outbound connections from the NGINX server process to external IPs following a worker crash.

Mitigation and workarounds

F5 has released patched versions: NGINX Open Source 1.30.6 and 1.31.7, and NGINX Plus 37.0.5.1 (for R37.0.x) and 37.1.0.1 (for R37.1.x). As an interim measure, ensure ASLR is enabled on all systems running affected NGINX versions to reduce the risk of code execution (DoS via worker restart remains possible). Where operationally feasible, review and modify NGINX configurations to avoid combining the alias directive with rewrite rules and $request_filename variable references, or using $request_filename in access log format directives (F5 Advisory, GitHub Advisory).

Community reactions

Security news outlets including SecurityOnline and CyberSecurityNews covered the disclosure as part of a broader F5 patch release addressing multiple NGINX vulnerabilities (SecurityOnline, CyberSecurityNews). Community coverage noted that the patch also addressed other long-standing flaws, with some reports highlighting that the release fixed vulnerabilities dating back to 2009 (LinuxCompatible). No significant threat actor attribution or notable researcher commentary beyond initial disclosure coverage has been identified.

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

Debian

Fixed

bookworm

nginx

Affected

sid

nginx: 1.30.4-8

Fixed

trixie

nginx

Affected

Ubuntu

Unknown

bionic (esm-infra)

nginx

Unknown

devel

nginx

Unknown

focal (esm-infra)

nginx

Unknown

jammy

nginx

Unknown

noble

nginx

Unknown

resolute

nginx

Unknown

trusty (esm-infra-legacy)

nginx

Unknown

xenial (esm-infra-legacy)

nginx

Unknown

RHEL / CentOS

Affected

RHEL 8

nginx.src

Affected

RHEL 9

nginx.src

Affected

RHEL 10

nginx.src

Affected

Source: This report was generated using AI

Related NGINX vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-97205CRITICAL9.2
  • NGINX logoNGINX
  • nginx:1.24::nginx-mod-http-image-filter
NoYesOct 14, 2026
CVE-2026-93479CRITICAL9.2
  • NGINX logoNGINX
  • cpe:2.3:a:f5:nginx_open_source
NoYesOct 14, 2026
CVE-2026-15176CRITICAL9.2
  • NGINX logoNGINX
  • nginx:1.26::nginx-mod-http-xslt-filter
NoYesOct 14, 2026
CVE-2026-97629HIGH8.3
  • NGINX logoNGINX
  • nginx
NoYesOct 14, 2026
CVE-2026-95101MEDIUM6.9
  • NGINX logoNGINX
  • nginx
NoYesOct 14, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management