19.09.2017 Views

the-web-application-hackers-handbook

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

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

n jsp — Java Server Pages<br />

n cfm — Cold Fusion<br />

n php — The PHP language<br />

n d2w — WebSphere<br />

n pl — The Perl language<br />

n py — The Python language<br />

n dll — Usually compiled native code (C or C++)<br />

n nsf or ntf — Lotus Domino<br />

Even if an <strong>application</strong> does not employ a particular file extension in its published<br />

content, it is usually possible to verify whe<strong>the</strong>r <strong>the</strong> technology supporting that<br />

extension is implemented on <strong>the</strong> server. For example, if ASP.NET is installed,<br />

requesting a nonexistent .aspx file returns a customized error page generated<br />

by <strong>the</strong> ASP.NET framework, as shown in Figure 4-12. Requesting a nonexistent<br />

file with a different extension returns a generic error message generated by <strong>the</strong><br />

<strong>web</strong> server, as shown in Figure 4-13.<br />

Figure 4-12: A customized error page indicating that <strong>the</strong> ASP.NET platform is present on<br />

<strong>the</strong> server<br />

Using <strong>the</strong> automated content discovery techniques already described, it<br />

is possible to request a large number of common file extensions and quickly<br />

confirm whe<strong>the</strong>r any of <strong>the</strong> associated technologies are implemented on <strong>the</strong><br />

server.<br />

The divergent behavior described arises because many <strong>web</strong> servers map<br />

specific file extensions to particular server-side components. Each different<br />

component may handle errors (including requests for nonexistent content) differently.<br />

Figure 4-14 shows <strong>the</strong> various extensions that are mapped to different<br />

handler DLLs in a default installation of IIS 5.0.

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

Saved successfully!

Ooh no, something went wrong!