Fingerprinting de aplicaciones Web

1

Visto 5013 veces | Publicado el 06/04/2011 | www fingerprinting pentest hacking


A la hora de realizar cualquier auditoria de una página web es importante identificar qué tecnología se está utilizando, qué software, si existe algún tipo de gestor de contenidos (CMS) y, en definitiva, cuantos más datos acerca de la propia web mejor. Siempre ha resultado algo tedioso el poder reconocer bajo qué plataforma se encuentra instalada determinada página ya sea capturando el banner del servidor web, buscando algún directorio en concreto que facilite reconocer el CMS utilizado y todo tipo de pistas. Ahora, en cambio, ya existen diversas herramientas que facilitan el trabajo ya sea a modo de plugin de Firefox o mediante algún escáner tipo Whatweb.

En el caso de Whatweb (http://www.morningstarsecurity.com/research/whatweb), acaba de salir publicada la nueva versión 0.4.7 con importantes mejoras: más de 900 plugins para poder reconocer aplicaciones diferentes, es capaz incluso de identificar versiones distintas de una misma aplicación, direcciones de correo, errores SQL, etc. Whatweb tiene varios modos de funcionamiento si se quiere que sea más rápido o sigiloso y, por ejemplo, para reconocer qué versión de Wordpress se está utilizando, realiza hasta 15 pruebas diferentes buscando incluso el favicon.ico típico de cualquier instalación de este conocido gestor de contenidos.

Whatweb está programada en ruby y su instalación y funcionamiento es de lo más sencillo. A modo de ejemplo, este es el resultado después de lanzarlo contra diversas páginas muy conocidas que se han ocultado ya que de lo que se trata es de probar la herramienta y no de publicar datos de webs ajenas a Hacktimes.com que no corresponden:

1) ./whatweb http://www.hacktimes.com http://www.hacktimes.com [200] Meta-Author[hacktimes.com], HTTPServer[Apache], Google-Analytics[UA-204666-1], Apache, IP[69.89.25.158],Jquery, Title[Página Principal de Hacktimes.com | Hacktimes V2.0], Country[UNITED STATES][us] Efectivamente Hacktimes.com está bajo un servidor web Apache, tiene Google Analytics, está en un servidor de Estados Unidos, etc.

Hacktimes no es buen ejemplo ya que no utiliza ningún CMS conocido tipo Drupal, Joomla, Wordpress, etc y está en un servidor propio no en ningún servicio tipo Blogspot, Blogger y la información obtenida, aunque útil, no demuestra toda la potencia de Whatweb.
2) ./whatweb http://www.xxxxxxxxxxxx.com (página web de una consultora cualquiera) http://www.xxxxxxxxxxxx.com [200] X-UA-Compatible[IE=7,IE=EmulateIE7], HTTPServer[Microsoft-IIS/6.0], ASP.NET[2.0.50727], Adobe-Flash, Google-Analytics[UA-13230457-1,UA-13230457-4], UncommonHeaders[x-old-content-length], DublinCore, IP[xx.xxx.xx.xx], JQuery, X-Powered-By[ASP.NET], Microsoft-IIS[6.0], Title[xxxxxxxxxxxx], Country[EUROPEAN UNION][EU] Servidor web IIS versión 6.0, lo que indica un servidor MS Windows 2003 debajo y lógicamente ASP.NET.
3) ./whatweb http://www.xxxxxxxxxxxx.com (página de una empresa de seguridad) http://www.xxxxxxxxxxxx.com [200] HTTPServer[Apache], Adobe-Flash, Google-Analytics[UA-10574229-1], Apache, IP[xx.xxx.xx.xx], JQuery, PHP[5.2.17], X-Powered-By[PHP/5.2.17], Drupal, Cookies[SESS0f53045f68fa918c59c3fac467325e54], Title[xxxxxxxxxxxx], Country[UNITED STATES][US] Apache, PHP y Drupal, todo correcto.
4) ./whatweb http://www.xxxxxxxxxxxx.com (página de un conocido blog) http://www.xxxxxxxxxxxx.com [200] WordPress, MetaGenerator[WordPress 3.1.1], HTTPServer[nginx/0.8.54], x-pingback[,http://www.xxxxxxxxxxxx.com/xmlrpc.php], Adobe-Flash, Google-Analytics[UA-150131-1], PoweredBy[-dead-flies], UncommonHeaders[x-pingback], nginx[0.8.54], IP[xx.xxx.xx.xx], JQuery[1.4.4], W3-Total-Cache[0.9.1.3], OpenGraphProtocol[1062592397], Mobile-Website, X-Powered-By[W3 Total Cache/0.9.1.3], Title[xxxxxxxxxxxx], Country[SPAIN][ES] Servidor web nginx, Wordpress 3.1.1, etc.

Existen alternativas igualmente válidas como Wappalyzer (http://wappalyzer.com) cuya última versión 1.13.0, es de febrero de 2011. Wappalyzer es una extensión para Firefox que muestra visualmente las tecnologías usadas por una página web. En el momento de visitar cualquier página, en la barra de direcciones, aparecen identificados los programas utilizados en forma de icono. Como diferencia más destacable con whatweb es que wappalizer no reconoce las versiones de las diferentes aplicaciones tal y como se puede ver en las capturas de los ejemplos anteriores:


Fig 1. Wappalizer para Hacktimes.com


Fig 2. Wappalizer para la empresa consultora que utiliza IIS


Fig 3. Wappalizer de la empresa de seguridad con Drupal


Fig 4. Wappalizer del blog que usa la última versión de Wordpress

Otra opción que ya se está quedando algo obsoleta es wafp o Web Application Finger Printer (http://mytty.org/wafp/) que data de enero de 2010. Wafp, al igual que Whatweb, está desarrollada en ruby y cuenta con 600 versiones de aplicaciones web reconocidas.

También se pude recurrir a herramientas online como, por ejemplo, Sucuri Security: http://sitecheck.sucuri.net/scanner/. La información no es tan detallada como en las otras herramientas pero si se opta por no instalar nada, es una alternativa interesante.


Fig 5. Captura de pantalla del uso de Sucuri Security para Hacktimes.com


Más información:

Definición y explicación de lo que es un CMS:
http://es.wikipedia.org/wiki/Sistema_de_gestión_de_contenidos

Nuestro compañero José Selvi de Pentester.es ya comentó hace tiempo perfectamente lo que podía hacer Whatweb en su versión inicial 0.3:
http://www.pentester.es/2009/12/whatweb-fingerprinting-de-aplicaciones.html

Listado de todas las aplicaciones, CMS y demás que reconoce Wappalizer (185):
http://wappalyzer.com/about/#list

Plugin para Google Chrome (W3Techs Website Technology Information) similar al Wapplizer que identifica la tecnología y aplicaciones utilizadas en una determinada página web:
https://chrome.google.com/extensions/detail/ijfkmffnodjkcllhmbimamggiobmicmh?hl=en


abril 08 10:06 p.m.
MeTalSluG dijo:

Otra tool interesante en esta línea es Blind Elephant: https://community.qualys.com/community/blindelephant


Añadir comentario











Búsqueda

Síguenos


El staff de Hacktimes ruega a cualquier persona interesada en la distribución y/o publicación de estos artículos que lo haga sin alterar su contenido y cite a su autor y/o la fuente original. Muchas gracias.

Todos los artículos publicados se encuentran bajo la licencia Creative Commons