I'm trying to detect what web server a particular website uses. For instance whether it's nginX, Apache, Tomcat and so on.
I usually use
Live HTTP Headers Firefox add-on. The problem is that sites sometimes hide their back-end. Isn't there a way to detect web servers when they're not present in HEADER?
A sample output from a website that didn't match to any of the
@Question Overflow's answer:
HTTP/1.1 200 OK Date: Mon, 29 Sep 2014 10:43:29 GMT Content-Type: text/html Transfer-Encoding: chunked X-Powered-By: VideoHosting Framework/1.0.1 Cache-Control: no-cache, must-revalidate, no-cache="Set-Cookie", private Content-Encoding: gzip Vary: Accept-Encoding Server: Videohost/1.0.1
I even tried to use
httprint on linux but it gives
ICMP request timeout on every website I tested.
The above HEADER is very similar to a website that I'm sure it uses nginX. If we remove those parts that are not present (
Pragma and so on) in the above HEADER, it gets so similar to nginX. I suppose
Server is at the end of the
response because they have customized it themeselves. And because of that nginX appended it to the end of the
HTTP/1.1 200 OK Server: nginx Date: Mon, 29 Sep 2014 12:51:37 GMT Content-Type: text/html Transfer-Encoding: chunked Connection: keep-alive Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Content-Encoding: gzip
OWASP should update its list with this one as well for nginX. ;-)