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.

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

HTTP Fingerprinting<br />

In principle, any item of information returned by <strong>the</strong> server may be customized<br />

or even deliberately falsified, and banners like <strong>the</strong> Server header are no exception.<br />

Most <strong>application</strong> server software allows <strong>the</strong> administrator to configure <strong>the</strong><br />

banner returned in <strong>the</strong> Server HTTP header. Despite measures such as this, it is<br />

usually possible for a determined attacker to use o<strong>the</strong>r aspects of <strong>the</strong> <strong>web</strong> server’s<br />

behavior to determine <strong>the</strong> software in use, or at least narrow down <strong>the</strong> range of<br />

possibilities. The HTTP specification contains a lot of detail that is optional or left<br />

to an implementer’s discretion. Also, many <strong>web</strong> servers deviate from or extend<br />

<strong>the</strong> specification in various ways. As a result, a <strong>web</strong> server can be fingerprinted<br />

in numerous subtle ways, o<strong>the</strong>r than via its Server banner. Httprecon is a handy<br />

tool that performs a number of tests in an attempt to fingerprint a <strong>web</strong> server’s<br />

software. Figure 4-11 shows Httprecon running against <strong>the</strong> EIS <strong>application</strong> and<br />

reporting various possible <strong>web</strong> servers with different degrees of confidence.<br />

Figure 4-11: Httprecon fingerprinting <strong>the</strong> EIS <strong>application</strong><br />

File Extensions<br />

File extensions used within URLs often disclose <strong>the</strong> platform or programming<br />

language used to implement <strong>the</strong> relevant functionality. For example:<br />

n asp — Microsoft Active Server Pages<br />

n aspx — Microsoft ASP.NET

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

Saved successfully!

Ooh no, something went wrong!