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.

Chapter 4 n Mapping <strong>the</strong> Application 97<br />

HACK STEPS<br />

1. Using lists of common debug parameter names (debug, test, hide, source,<br />

etc.) and common values (true, yes, on, 1, etc.), make a large number of<br />

requests to a known <strong>application</strong> page or function, iterating through all<br />

permutations of name and value. For POST requests, insert <strong>the</strong> added<br />

parameter to both <strong>the</strong> URL query string and <strong>the</strong> message body.<br />

Burp Intruder can be used to perform this test using multiple payload<br />

sets and <strong>the</strong> “cluster bomb” attack type (see Chapter 14 for more details).<br />

2. Monitor all responses received to identify any anomalies that may indicate<br />

that <strong>the</strong> added parameter has had an effect on <strong>the</strong> <strong>application</strong>’s processing.<br />

3. Depending on <strong>the</strong> time available, target a number of different pages or<br />

functions for hidden parameter discovery. Choose functions where it is<br />

most likely that developers have implemented debug logic, such as login,<br />

search, and file uploading and downloading.<br />

Analyzing <strong>the</strong> Application<br />

Enumerating as much of <strong>the</strong> <strong>application</strong>’s content as possible is only one element<br />

of <strong>the</strong> mapping process. Equally important is <strong>the</strong> task of analyzing <strong>the</strong><br />

<strong>application</strong>’s functionality, behavior, and technologies employed to identify <strong>the</strong><br />

key attack surfaces it exposes and to begin formulating an approach to probing<br />

<strong>the</strong> <strong>application</strong> for exploitable vulnerabilities.<br />

Here are some key areas to investigate:<br />

n The <strong>application</strong>’s core functionality — <strong>the</strong> actions that can be leveraged<br />

to perform when used as intended<br />

n O<strong>the</strong>r, more peripheral <strong>application</strong> behavior, including off-site links, error<br />

messages, administrative and logging functions, and <strong>the</strong> use of redirects<br />

n The core security mechanisms and how <strong>the</strong>y function — in particular,<br />

management of session state, access controls, and au<strong>the</strong>ntication mechanisms<br />

and supporting logic (user registration, password change, and<br />

account recovery)

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

Saved successfully!

Ooh no, something went wrong!