CVE-2017-7529
High · 7.5CVSS
7.5
EPSS
62.6%
Published
Jul 13, 2017
CISA due date
—
Cloudanix analysis
A problem in the web server software can let attackers see pieces of the server's memory that may contain private details.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Network Service
- Class
- Information Disclosure
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Integer overflow in the nginx range filter module causes the server to return memory contents beyond the intended response boundaries when processing specially crafted Range headers.
Why it matters to the business
Attackers may obtain sensitive server memory contents including configuration data or user information, increasing risk of data exposure and downstream compromise; high EPSS score indicates active exploit interest despite lack of KEV listing.
How an attack unfolds
An attacker sends an HTTP request containing a malicious Range header crafted to trigger the integer overflow in the range filter, causing nginx to leak adjacent memory in the HTTP response body.
How to fix it
Upgrade nginx to a version after 1.13.2; for Bitnami MediaWiki installations, upgrade to version 1.35.2 which includes the patched nginx component.
How to confirm the fix worked
Confirm nginx version exceeds 1.13.2 via server banner or configuration checks; replay known malicious Range header test cases and verify responses contain only expected content without extraneous memory data.
Typical attack path
- Identify nginx server running vulnerable version between 0.5.6 and 1.13.2
- Craft HTTP GET request with specially malformed Range header values
- Send request and inspect response for leaked memory contents
- Parse leaked data for sensitive information to enable further attacks
How to detect it
Search web server access logs for HTTP requests containing Range headers with unusually large, negative, or overlapping byte ranges; examine responses for content-length values inconsistent with requested ranges.
- Range: bytes=0-,1-
- HTTP responses with content containing non-HTML binary fragments after normal page data
- nginx access logs showing Range headers with values exceeding 2^31
What your security team should do
- Prioritize upgrade of all affected nginx instances within 30 days given stable high EPSS
- Implement web application firewall rules to block suspicious Range headers
- Review and harden response headers to minimize information leakage
The record
Nginx versions since 0.5.6 up to and including 1.13.2 are vulnerable to integer overflow vulnerability in nginx range filter module resulting into leak of potentially sensitive information triggered by specially crafted request.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.10 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.11 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.12 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.13 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.14 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.15 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.16 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.17 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.18 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.19 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.20 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.21 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.22 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.4 | nginx | 0 | 1.10.3-r0 |
| Alpine:v3.5 | nginx | 0 | 1.10.3-r1 |
| Alpine:v3.6 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.7 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.8 | nginx | 0 | 1.12.1-r0 |
| Alpine:v3.9 | nginx | 0 | 1.12.1-r0 |
| Debian:11 | nginx | 0 | 1.13.3-1 |
| Debian:12 | nginx | 0 | 1.13.3-1 |
| Debian:13 | nginx | 0 | 1.13.3-1 |
| Debian:7 | nginx | 0 | 1.2.1-2.2+wheezy4+deb7u1 |
| Debian:8 | nginx | 0 | 1.6.2-5+deb8u5 |
| Debian:9 | nginx | 0 | 1.10.3-1+deb9u1 |
| Mageia:5 | nginx | 0 | 1.6.2-5.3.mga5 |
| Mageia:6 | nginx | 0 | 1.10.3-1.1.mga6 |
| Red Hat:rhel_software_collections:2::el6 | rh-nginx110-nginx | 0 | 1:1.10.2-8.el6 |
| Red Hat:rhel_software_collections:2::el6 | rh-nginx110-nginx-debuginfo | 0 | 1:1.10.2-8.el6 |
| Red Hat:rhel_software_collections:2::el6 | rh-nginx110-nginx-mod-http-image-filter | 0 | 1:1.10.2-8.el6 |
| Red Hat:rhel_software_collections:2::el6 | rh-nginx110-nginx-mod-http-perl | 0 | 1:1.10.2-8.el6 |
| Red Hat:rhel_software_collections:2::el6 | rh-nginx110-nginx-mod-http-xslt-filter | 0 | 1:1.10.2-8.el6 |
| Red Hat:rhel_software_collections:2::el6 | rh-nginx110-nginx-mod-mail | 0 | 1:1.10.2-8.el6 |
| Red Hat:rhel_software_collections:2::el6 | rh-nginx110-nginx-mod-stream | 0 | 1:1.10.2-8.el6 |
| Red Hat:rhel_software_collections:2::el7 | rh-nginx110-nginx | 0 | 1:1.10.2-8.el7 |
| Red Hat:rhel_software_collections:2::el7 | rh-nginx110-nginx-debuginfo | 0 | 1:1.10.2-8.el7 |
| Red Hat:rhel_software_collections:2::el7 | rh-nginx110-nginx-mod-http-image-filter | 0 | 1:1.10.2-8.el7 |
| Red Hat:rhel_software_collections:2::el7 | rh-nginx110-nginx-mod-http-perl | 0 | 1:1.10.2-8.el7 |
| Red Hat:rhel_software_collections:2::el7 | rh-nginx110-nginx-mod-http-xslt-filter | 0 | 1:1.10.2-8.el7 |
| Red Hat:rhel_software_collections:2::el7 | rh-nginx110-nginx-mod-mail | 0 | 1:1.10.2-8.el7 |
| Red Hat:rhel_software_collections:2::el7 | rh-nginx110-nginx-mod-stream | 0 | 1:1.10.2-8.el7 |
| SUSE:Lifecycle Management Server 1.3 | nginx-1.0 | 0 | 1.0.15-0.35.3.1 |
| SUSE:Package Hub 12 | nginx | 0 | 1.13.9-12.1 |
| SUSE:Studio Onsite 1.3 | nginx-1.0 | 0 | 1.0.15-0.35.3.1 |
| SUSE:WebYast 1.3 | nginx-1.0 | 0 | 1.0.15-0.35.3.1 |
| Ubuntu:14.04:LTS | nginx | 0 | 1.4.6-1ubuntu3.8 |
| Ubuntu:16.04:LTS | nginx | 0 | 1.10.3-0ubuntu0.16.04.2 |
| openSUSE:Tumbleweed | nginx | 0 | 1.21.3-1.4 |
Related vulnerabilities
- CVE-2016-1247 The nginx package before 1.6.2-5+deb8u3 on Debian jessie, the nginx packages before… Also affects nginx
- CVE-2016-4450 os/unix/ngx_files.c in nginx before 1.10.1 and 1.11.x before 1.11.1 allows remote… Also affects nginx
- CVE-2016-0742 The resolver in nginx before 1.8.1 and 1.9.x before 1.9.10 allows remote attackers to… Also affects nginx
- CVE-2014-3616 nginx 0.5.6 through 1.7.4, when using the same shared ssl_session_cache or… Also affects nginx
- CVE-2013-4547 nginx 0.8.41 through 1.4.3 and 1.5.x before 1.5.7 allows remote attackers to bypass… Also affects nginx
- CVE-2013-2070 http/modules/ngx_http_proxy_module.c in nginx 1.1.4 through 1.2.8 and 1.3.0 through… Also affects nginx
- CVE-2012-1180 Use-after-free vulnerability in nginx before 1.0.14 and 1.1.x before 1.1.17 allows remote… Also affects nginx
- CVE-2009-4487 nginx 0.7.64 writes data to a log file without sanitizing non-printable characters, which… Also affects nginx