ModSecurity discloses upload-bypass and crash flaws, one unpatched
One flaw has no listed fix; the pointer bug is reachable only if SecParseXmlIntoArgs is On or OnlyArgs.
Uninitialized pointer write in ModSecurity XML parsing
ModSecurity 3.0.15 until 3.0.17 can leave an XML parsing pointer uninitialized when SecParseXmlIntoArgs is On or OnlyArgs. One crafted unauthenticated HTTP request can make a worker write a constant value to an attacker-controlled address. That memory corruption can terminate the worker and may disclose memory or redirect execution. Earlier 3.0.x releases and ModSecurity 2.x do not use this path.
What to do: Upgrade ModSecurity to 3.0.17.
| Product | Affected | Fixed in |
|---|---|---|
| ModSecurity | From 3.0.15 until 3.0.17 | 3.0.17 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
ModSecurity is an open source, cross platform web application firewall (WAF) engine for Apache, IIS and Nginx. From 3.0.15 until 3.0.17, XML request body processing with SecParseXmlIntoArgs set to On or OnlyArgs can leave XMLNodes::parsing_ctx_arg uninitialized in the SAX end-element callback. A single crafted unauthenticated HTTP request can make a worker dereference the pointer, resulting in a constant-value write to an attacker-controlled address. The resulting memory corruption can terminate the worker and may disclose memory or redirect execution. Earlier 3.0.x releases and ModSecurity 2.x do not use the affected path. This issue is fixed in version 3.0.17.
One flaw has no listed fix; the pointer bug is reachable only if SecParseXmlIntoArgs is On or OnlyArgs.
Two high-severity flaws in ModSecurity let attackers bypass upload filters or crash server workers with crafted HTTP requests.
Today 1.6K readers · 2.4K views · 775 reads · all time 189K views