官术网_书友最值得收藏!

Burp Suite and XSS Validator

One problem with automated and semi-automated solutions for XSS is distinguishing signal from noise. To do that, a useful Burp plugin, XSS Validator, runs a PhantomJS-powered web server to receive the results of Burp queries and looks for a string injected into the alert() call embedded within the applied XSS snippets. It provides a clean way of culling the results of your XSS submissions to absolute confirmed vulnerabilities.

The easiest way to download the XSS Validator Burp extension is through the Bapp store. Just navigate to the store from the Extension tab within Burp Suite and select the extension from the marketplace (needless to say, it's free). You can also install the extension manually by following the instructions in the XSS Validator GitHub documentation.

In addition to installing the extension, during your actual testing, you'll need to run the server parsing incoming Burp requests. If you clone the XSS Validator git repo, you can navigate to the xss-validator directory and start the xss.js script. You can then bootstrap the server and set it to run as a detached background process in one easy line:

phantomjs xss.js &

With the XSS Validator server and Burp Suite running (boostrap_burp), navigate to the specific form input you'd like to test for XSS. As a way of demonstrating the tool on a proven testing ground, we're going to test a form input on the Web Scanner Test Site (webscantest.com) that's been designed to be susceptible to XSS:

After arriving on the page  with our Burp Proxy Intercept feature turned off so that we don't have to manually forward all the traffic on the way there  we enter something recognizable into the form fields we're testing:

Now we want to navigate back to our Burp Suite GUI and turn Intercept back on before we submit:

Now when we submit, you should see the browser favicon indicate a submission without anything changing on the form. If you go back to Burp, you'll see you've intercepted the form's POST request (note that if you have other tabs open, you might see that the Burp proxy has intercepted requests from those pages, and has to forward them):

We want to send this request over to the Burp intruder feature, where we can do more to manipulate the POST data. To do that, right-click on the request and click Send to Intruder:

Once you're at the Intruder window, go to the Positions tab where you can see the POST request parameters and cookie IDs already selected as Payload Positions. Let's go ahead and leave these defaults and move over to the Payloads tab to choose what we'll be filling these input with. In order to integrate with the XSS Validator extension, we need to make changes to these first three payload-related settings, as follows:

主站蜘蛛池模板: 康平县| 阳泉市| 仙游县| 堆龙德庆县| 吴江市| 涿州市| 鹿泉市| 宜君县| 鸡西市| 西畴县| 益阳市| 塔河县| 嘉黎县| 安仁县| 江川县| 德清县| 丹寨县| 东安县| 吴忠市| 沛县| 永登县| 浦东新区| 称多县| 台安县| 涡阳县| 巴中市| 洛浦县| 大足县| 临洮县| 东乡| 阿城市| 西安市| 宝鸡市| 陆良县| 吉木萨尔县| 仙居县| 怀集县| 东莞市| 安多县| 南岸区| 海伦市|