NGINX Plus and NGINX Open Source have a vulnerability in the ngx_http_rewrite_module module. This vulnerability exists when a rewrite directive uses a regex pattern with distinct, overlapping Perl-Compatible Regular Expression (PCRE) captures (for example, ^/((.*))$) and a replacement string that references multiple such captures (for example, $1$2) in a redirect or arguments context. An unauthenticated attacker along with conditions beyond their control can exploit this vulnerability by sending crafted HTTP requests. This may cause a heap buffer overflow in the NGINX worker process leading to a restart. Additionally, attackers can execute code on systems with Address Space Layout Randomization (ASLR) disabled or when the attacker can bypass ASLR.
Note: Software versions which have reached End of Technical Support (EoTS) are not evaluated.
A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Nginx_open_source | F5 | 0.1.17 (including) | 0.9.7 (including) |
| Nginx_open_source | F5 | 1.0.0 (including) | 1.30.1 (including) |
| Nginx_open_source | F5 | 1.31.0 (including) | 1.31.0 (including) |
| Nginx_plus | F5 | 37.0.0 (including) | 37.0.1.1 (excluding) |
| Nginx_plus | F5 | r32 (including) | r36 (including) |
| Red Hat Enterprise Linux 10 | RedHat | nginx-2:1.26.3-6.el10_2.4 | * |
| Red Hat Enterprise Linux 8 | RedHat | nginx:1.24-8100020260611094050.489197e6 | * |
| Red Hat Enterprise Linux 9 | RedHat | nginx:1.24-9080020260610161820.9 | * |
| Red Hat Enterprise Linux 9 | RedHat | nginx-2:1.20.1-28.el9_8.3 | * |
| Red Hat Enterprise Linux 9 | RedHat | nginx:1.26-9080020260609152155.9 | * |
| Red Hat Hardened Images | RedHat | nginx-main-1.30.2-1.hum1 | * |
| Nginx | Ubuntu | esm-infra-legacy/trusty | * |
| Nginx | Ubuntu | esm-infra-legacy/xenial | * |
| Nginx | Ubuntu | esm-infra/bionic | * |
| Nginx | Ubuntu | esm-infra/focal | * |
| Nginx | Ubuntu | jammy | * |
| Nginx | Ubuntu | noble | * |
| Nginx | Ubuntu | questing | * |
| Nginx | Ubuntu | resolute | * |
| Nginx | Ubuntu | upstream | * |