Fingerprinting is the process in which we actively attempt to identify software and hardware information about a server using collected information. For instance, in an HTTP web server log, we can log all incoming requests. These requests can have user agents of the browsers used by the web page users. A user agent is a form of identification that is often used by web developers to accommodate for incompatibilities when developing web software. This is a unique string per OS and per web browser. In the hands of an attacker who might have the ability to manipulate network traffic to his malicious computer, this information could be used to exploit vulnerabilities in the web browser software.