Hi,
I tried to use ZAP (GUI mode) to find some XSS vulnerabilities i know exist in a web app (cgi perl) i setup with Apache on a workstation.
I used Chrome and surfed URLS in the web app through ZAP in order to build a site tree.
Then i specifically picked (selected) one cgi perl script that processes a web form and performed an Active Scan (Active Scan URL only) on it.
I set the attack setting to low, medium, high and insane to see if it discovers the reflected XSS.
The scanner ran fine in all cases, reported its findings but did NOT report the XSS that i know exists.
On the contrary if i use the Fuzzer and select the web param to fuzz on and then used the built in fuzzer list(s) the REFLECTED XSS is reported.
So the fuzzer does its thing and reports the XSS.
I then looked at all the POST requests in the active scan for that one URL and saw that it performed a bunch of injections but none of them was able to pick the XSS.
What i did not see in all these Active Scan POST requests are any specific XSS injections for eg: <script>alert('xss')</script> which were there in the fuzzer despite the
fact that my settings have the Injection Plugin Category Enabled and the following test names enabled as well:
Server Side Include
Cross Site Scripting (Persistent) - Prime
Cross Site Scripting (Persistent)
SQL Injection
CRLF Injection
Parameter Tampering
Cross Site Scripting (Persistent) - Spider
I wonder why when i run the Active Scanner it does use XSS specific inputs for the scan although the settings are ON for it.
Am i missing something here?
Thanks,
Usman