wig is a Python tool that identifies a websites CMS by searching for fingerprints of static files and extracting version numbers from known files.
OS identification is done by using the value of the ‘server’ and ‘X-Powered-By’ in the response header. These values are compared to a database of which package versions are include with different operating systems.
The version detection is based on md5 checksums of statics files, regex and string matching. OS detection is based on headers and packages listed in the ‘server’ header. There’s a quite large database of package versions included in common linux distros.
The author uses scripts to automatically update the md5 checksums for new versions of open source CMS the the tool is capable to detecting. This one of the main advantages over BlindElephant and WhatWeb.
There are some other tools similar to this such as:
And web services like http://builtwith.com/
There are currently three profiles for wig:
- Only send one request: wig only sends a request for ‘/’. All fingerprints matching this url are tested.
- Only send one request per plugin: The url used in most fingerprints is used
- All fingerprints: All fingerprints are tested
You can download wig here (or just clone it from the Github repo):
Or read more here.