First published: Wed Nov 02 2011(Updated: )
It was reported [1] that an integer overflow was found in Apache in the ap_pregsub() function called from mod-setenvif. When a header field is mangled using SetEnvIf, the new environment variable data can be multiples of the size of the submitted header field. This would cause ap_pregsub() to overflow the length value in buffer size calculations, leading to the subsequent allocation call of a too-small buffer. Filling this buffer with user-supplied data will lead to a buffer overflow. Depending on the input data, this can lead to excessive allocation of server memory (resulting in killed processes due to out-of-memory conditions), invalid memory access when copying large amounts of data (which can lead to a termination of the httpd process), or possibly allowing the execution of arbitrary code. To trigger this flaw, mod_setenvif must be enabled (the default) and the attacker needs to be able to place a crafted .htaccess file on the server (which, in most cases, would require local access to the file system or some web interface that allows for writing arbitrary files to the local file system, such as for custom .htaccess files). There is currently no upstream fix, however to work around the problem, disable mod_setenvif. [1] <a href="http://www.halfdog.net/Security/2011/ApacheModSetEnvIfIntegerOverflow/">http://www.halfdog.net/Security/2011/ApacheModSetEnvIfIntegerOverflow/</a>
Credit: cve@mitre.org
Affected Software | Affected Version | How to fix |
---|---|---|
Apache HTTP server | =2.0.42 | |
Apache HTTP server | =2.0.64 | |
Apache HTTP server | =2.0.58 | |
Apache HTTP server | =2.0.47 | |
Apache HTTP server | =2.0.56 | |
Apache HTTP server | =2.0.50 | |
Apache HTTP server | =2.0.35 | |
Apache HTTP server | =2.0.37 | |
Apache HTTP server | =2.0.55 | |
Apache HTTP server | =2.0.44 | |
Apache HTTP server | =2.0.39 | |
Apache HTTP server | =2.0.52 | |
Apache HTTP server | =2.0.53 | |
Apache HTTP server | =2.0.57 | |
Apache HTTP server | =2.0.51 | |
Apache HTTP server | =2.0.28-beta | |
Apache HTTP server | =2.0.63 | |
Apache HTTP server | =2.0.41 | |
Apache HTTP server | =2.0.49 | |
Apache HTTP server | =2.0.9 | |
Apache HTTP server | =2.0.34-beta | |
Apache HTTP server | =2.0.61 | |
Apache HTTP server | =2.0.32 | |
Apache HTTP server | =2.0.38 | |
Apache HTTP server | =2.0.48 | |
Apache HTTP server | =2.0.45 | |
Apache HTTP server | =2.0.40 | |
Apache HTTP server | =2.0.36 | |
Apache HTTP server | =2.0.46 | |
Apache HTTP server | =2.0.54 | |
Apache HTTP server | =2.0.43 | |
Apache HTTP server | =2.0.59 | |
Apache HTTP server | =2.0.28 | |
Apache HTTP server | =2.0 | |
Apache HTTP server | =2.0.32-beta | |
Apache HTTP server | =2.0.60 | |
Apache HTTP server | =2.2.11 | |
Apache HTTP server | =2.2.0 | |
Apache HTTP server | =2.2.10 | |
Apache HTTP server | =2.2.13 | |
Apache HTTP server | =2.2.2 | |
Apache HTTP server | =2.2.4 | |
Apache HTTP server | =2.2.16 | |
Apache HTTP server | =2.2.21 | |
Apache HTTP server | =2.2.8 | |
Apache HTTP server | =2.2.14 | |
Apache HTTP server | =2.2.6 | |
Apache HTTP server | =2.2.19 | |
Apache HTTP server | =2.2.9 | |
Apache HTTP server | =2.2.18 | |
Apache HTTP server | =2.2.12 | |
Apache HTTP server | =2.2.3 | |
Apache HTTP server | =2.2.15 | |
Apache HTTP server | =2.2.20 | |
Apache HTTP server | =2.2.1 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.