A popularização de blogs e sites hoje é graças a ferramentas como Joomla, Drupal, WordPress entre outras, muitos desenvolvedores iniciantes ou pessoas que desejam criar o seu próprio site e blog buscam pelo google quais são as melhoras ferramentas e plugins, no final de dias ou semanas de testes, eles acabam encontrando-nas.

Mas que tal uma ferramenta que faça isso para você ? tendo a capacidade de analisar qual plataforma de publicação um site ou blog está utilizando, além de todos os seus plugins e features ?

Eis que eu lhes apresento o WhatWeb, ferramenta desenvolvida em Ruby em cima do Linux que tem como  objetivo escanear um website ou blog por completo, graças aos seus mais de 70 plugins já desenvolvidos, ele é capaz de dizer do que é feito um blog ou website.

Exemplo de utilização do WhatWeb:

Olhem a lista de fetaures desse carinha:

  • Added x plugins from Brendan Coles. They are: ClipShare, PhpMesFilms, wpQuiz, phpQuestionnaire, RevSense, linkSpheric, WebspotBlogging, XchangeBoard, SazCart, AirvaeCommerce, Cartweaver, BosClassifieds, zFeeder, CMScout, Ultrastats, Connectix-Boards
  • Added Escenic CMS plugin from Erik Inge Bolsø
  • Added Ruby on Rails and Magento plugins by Andrew Horton
  • Updated Mambo plugin with changes from Andrew Horton and Aung Khant
  • Updated phpBB plugin
  • Changed $ANEMONE_SKIP_REGEX=Regexp.union line to be compatible with Ruby 1.8.6. Thanks to Michal Ambroz
  • Added plugin reporting support for :model=>, :firmware=>, :modules=>
  • Modified Joomla plugin to use :modules instead of :string, changed certainty of a regexp
  • Modified PHP-Nuke plugin to use :modules
  • Modified XML logging to record modules separately
  • Added –wait SECONDS between connections. Combine with -t 1 if preferred.
  • Added meta-refresh redirect support. eg. <meta http-equiv=”refresh” content=”0;url=../default/mail/index.html”>. Only for non-spidering
  • Added {:version=>/regexp/, :version_regexp_offset} to remove cargo cult programming. eg.
    {:version=>/<meta name=”Generator” (content|CONTENT)=”(ASPNUKE|ASP-Nuke) ([^->”]+)/, :version_regexp_offset=>2, :name=>”meta generator tag” }
  • Updated plugins to use :version=>/regexp/: Advanced-Guestbook, ASP-Nuke, Concrete5, Coppermine, FormMail, InvisionPowerBoard, FormMail, MikroTik, MovableType, SearchFitShoppingCart, SquirrelMail, VBulletin, VP-ASP, VSNSLemon, WordPress
  • Replaced :probability with :certainty in my-plugins/plugin-template.rb.txt. Thanks Erik Inge Bolsø
  • Added support for em-resolv-replace which speeds up whatweb many times.
  • whatweb.xsl added by Brendan Coles
  • Added reporting of version detection with matches to the Plugin Info, eg. whatweb -I
  • Changed whatweb -I behaviour to search plugins for keywords. eg. ‘./whatweb -I nuke’ brings up ASP-Nuke, PHPNuke, DotNetNuke, etc.
  • Bugfix: Changed webpage data for when working with files, not URIs. Now it passes empty hashes, etc instead of nil which caused plugins to report errors.
  • Added JSON logging. Must have the json ruby gem installed or be using Ruby 1.9
  • Added error logging.
  • Added XML header and footer to XML logs
  • Bug fix: Escaping the XML log properly for &, <, >, “
  • Bug fix: References to :probability instead of :certainty in some logging
  • Changed error message for non resolving hostnames from “undefined method `closed?’ for nil:NilClass” to “Cannot resolve hostname”
  • Added ascii whatweb logo

Além disso tudo, você pode criar novos plugins para utilizar nele, este tutorial explica passo a passo como faze-lo. A imagem abaixo apresenta um exemplo de desenvolvimento de plugin para o WhatWeb.

Verbose Output

./whatweb -v www.morningstarsecurity.com
www.morningstarsecurity.com/ [200]
http://www.morningstarsecurity.com [200] WordPress[3.0.1], Google-API[ajax/libs/jquery/1.3.2/jquery.min.js ],
Google-Analytics[GA][791888], HTTPServer[Apache], UncommonHeaders[x-pingback], JQuery[1.4.2], Title[MorningSt
ar Security], MetaGenerator[WordPress 3.0.1], RSSFeed[http://www.morningstarsecurity.com/wp-content/themes/py
rmont-v2-white/style.css], MD5[2b47722f6e9ad3add669f5a4d2267642], Tag-Hash[bce4fdbac307d13d570d3a0d2d45b078],
Header-Hash[dba021c0aa225c8eede02c7dcc45b0d8], Footer-Hash[bd8866bbab7e53b19e03131a041d451a]
Footer-Hash                    => hash
Google-API                     => google javascript API (version: ajax/libs/jquery/1.3.2/jquery.min.js )
Google-Analytics               => pageTracker = ...UA-123-1231
HTTPServer                     => server string
Header-Hash                    => hash
JQuery                         => script (version: 1.4.2)
MD5                            => md5 hash of html
MetaGenerator                  => meta generator tag
RSSFeed                        => rss link type, rss link
Tag-Hash                       => tag pattern hash
Title                          => page title
UncommonHeaders                => headers
WordPress                      => wp-content (certainty: 75), meta generator tag (version: 3.0.1)

O WhatWeb é freeware e eu o testei em uma máquina Linux rodando o RedHat, as análises apresentadas por ele foram muito interessantes e em minha opinião, os desenvolvedores copiaram parte da ideia do metasploit para desenvolve-lo, o que foi legal. O download desta excelente ferramenta pode ser feito no Link.