I have installed mod_security
with the OWASP rule set and it is now blocking my ability to call a web service using a WSDL. When my code tries to make the web service call, I see the below in the mod sec audit log (domains, IP's and file names have been obscured for protection). The wsdl file resides on my local server so my question is: Is there a way to allow just this WSDL or something of the sort? I really don't want to entirely disable mod_security.
Thank you!
--76a2f126-A--
[05/Aug/2014:02:57:12 +0000] U@BICH8AAAEAAAkVDPwAAAAH x.x.x.x 45488 x.x.x.x 443
--76a2f126-B--
GET /WebService.wsdl HTTP/1.1
Host: demo.example.com
Connection: close
--76a2f126-F--
HTTP/1.1 403 Forbidden
Content-Length: 333
Connection: close
Content-Type: text/html; charset=iso-8859-1
--76a2f126-E--
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /WebService.wsdl
on this server.</p>
<p>Additionally, a 404 Not Found
error was encountered while trying to use an ErrorDocument to handle the request.</p>
</body></html>
--76a2f126-H--
Message: Access denied with code 403 (phase 2). Operator EQ matched 0 at REQUEST_HEADERS. [file "/etc/httpd/modsecurity-crs/base_rules/modsecurity_crs_21_protocol_anomalies.conf"] [line "47"] [id "960015"] [rev "1"] [msg "Request Missing an Accept Header"] [severity "NOTICE"] [ver "OWASP_CRS/2.2.9"] [maturity "9"] [accuracy "9"] [tag "OWASP_CRS/PROTOCOL_VIOLATION/MISSING_HEADER_ACCEPT"] [tag "WASCTC/WASC-21"] [tag "OWASP_TOP_10/A7"] [tag "PCI/6.5.10"]
Stopwatch: 1407207432020557 41964 (- - -)
Stopwatch2: 1407207432020557 41964; combined=190, p1=116, p2=44, p3=0, p4=0, p5=30, sr=28, sw=0, l=0, gc=0
Response-Body-Transformed: Dechunked
Producer: ModSecurity for Apache/2.8.0 (http://www.modsecurity.org/); OWASP_CRS/2.2.9.
Server: Apache
Engine-Mode: "ENABLED"