19.09.2017 Views

the-web-application-hackers-handbook

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

826 Chapter 21 n A Web Application Hacker’s Methodology<br />

meaning within HTTP requests. By default, Burp Intruder performs <strong>the</strong><br />

necessary encoding of <strong>the</strong>se characters, so ensure that this option has not<br />

been disabled. (To restore all options to <strong>the</strong>ir defaults following earlier<br />

customization, select Burp ‚ Restore Defaults.)<br />

7.1.5 In <strong>the</strong> Grep function of Burp Intruder, configure a suitable set of strings<br />

to flag some common error messages within responses. For example:<br />

error<br />

exception<br />

illegal<br />

invalid<br />

fail<br />

stack<br />

access<br />

directory<br />

file<br />

not found<br />

varchar<br />

ODBC<br />

SQL<br />

SELECT<br />

111111<br />

Note that <strong>the</strong> string 111111 is included to test for successful script injection<br />

attacks. The payloads in step 7.1.3 involve writing this value into<br />

<strong>the</strong> server’s response.<br />

7.1.6 Also select <strong>the</strong> Payload Grep option to flag responses that contain <strong>the</strong><br />

payload itself, indicating a potential XSS or header injection vulnerability.<br />

7.1.7 Set up a <strong>web</strong> server or netcat listener on <strong>the</strong> host you specified in <strong>the</strong><br />

first file inclusion payload. This helps you monitor for connection<br />

attempts received from <strong>the</strong> server resulting from a successful remote<br />

file inclusion attack.<br />

7.1.8 Launch <strong>the</strong> attack. When it has completed, review <strong>the</strong> results for anomalous<br />

responses indicating <strong>the</strong> presence of vulnerabilities. Check for<br />

divergences in <strong>the</strong> HTTP status code, <strong>the</strong> response length, <strong>the</strong> response<br />

time, <strong>the</strong> appearance of your configured expressions, and <strong>the</strong> appearance<br />

of <strong>the</strong> payload itself. You can click each column heading in <strong>the</strong> results<br />

table to sort <strong>the</strong> results by <strong>the</strong> values in that column (and Shift-click<br />

to reverse-sort <strong>the</strong> results). This enables you to quickly identify any<br />

anomalies that stand out from <strong>the</strong> o<strong>the</strong>r results.<br />

7.1.9 For each potential vulnerability indicated by <strong>the</strong> results of your fuzz testing,<br />

refer to <strong>the</strong> following sections of this methodology. They describe<br />

<strong>the</strong> detailed steps you should take in relation to each category of problem<br />

to verify <strong>the</strong> existence of a vulnerability and successfully exploit it.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!