Description
NGINX Plus and NGINX Open Source have a vulnerability in the ngx_http_rewrite_module module. This vulnerability exists when the rewrite directive is followed by a rewrite, if, or set directive and an unnamed Perl-Compatible Regular Expression (PCRE) capture (for example, $1, $2) with a replacement string that includes a question mark (?). An unauthenticated attacker along with conditions beyond its 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, for systems with Address Space Layout Randomization (ASLR ) disabled, code execution is possible. Note: Software versions which have reached End of Technical Support (EoTS) are not evaluated.
Problem types
CWE-122 Heap-based Buffer Overflow.
Product status
R37 (custom) before *
R36 (custom) before R36 P4
R32 (custom) before R32 P6
1.31.0 (semver) before *
0.6.27 (semver) before 1.30.1
Credits
F5 acknowledges Zhenpeng (Leo) Lin of depthfirst for bringing this issue to our attention and following the highest standards of coordinated disclosure.
References
github.com/DepthFirstDisclosures/Nginx-Rift
my.f5.com/manage/s/article/K000161019