martes, 6 de agosto de 2013

BackBox 3 - Iniciación al Pentesting (Parte 5)

Tema 2: Buscando vulnerabilidades

Introducción 

Una vez que ya tenemos bastante información del objetivo al que queremos atacar es hora de dar un paso más e intentar buscar algún tipo de vulnerabilidad que nos de acceso al sistema.

Como ya hemos comentado antes, no siempre las categorías que nos ofrecen las Distros de seguridad se corresponden con el proceso de un Ethical Hack, ya que muchas de las herramientas sirven para hacer más de una función.

En este tema utilizaremos alguna que otra herramienta que no se encuentra dentro de la sección de Búsqueda de Vulnerabilidades, pero que sin embargo nos servirá de igual manera.

Las herramientas que utilizaremos para buscar vulnerabilidades no son más que escaneres de vulnerabilidades. Programas que están diseñados para automatizar una serie de funciones y que están pensadas para ayudarnos a no tener que hacer búsquedas manuales de cada tipo de vulnerabilidad. De un determinado servicio.

El principal inconveniente de este tipo de búsqueda es que, la gran mayoría de las aplicaciones hacen falsos positivos. Eso significa, que aunque el programa encuentre una vulnerabilidad no siempre a de ser explotable.
Nmap como escaner de vulnerabilidades (NSE Vulnscan)


Casi se podría decir que nmap es la herramienta indispensable para cualquier hacker gracias a la cantidad de scritp que están desarrollados para ello, y que son configurables a nuestro gusto. De igual manera que utilizamos nmap para recolectar información lo haremos esta vez pero para buscar vulnerabilidades.

Esto es posible a un script desarrollado específicamente para realizar esta función. El script consiste en hacer una búsqueda de las vulnerabilidades ya encontradas en un repositorio de dichas vulnerabilidades. (Este repositorio es actualizable desde cada una de las páginas oficiales desde las que se reportan las vulnerabilidades).

Las bases de datos son:
  • cve.csv
  • osvdb.csv
  • scipvuldb.csv
  • secunia.csv
  • securityfocus.csv
  • securitytracker.csv

El script que está basado en nmap NSE (nmap scritpting engine) debemos de bajarlo e instalar lo. Por defecto no viene instalado con nmap.

La manera de instalar es copiando la carpeta completa de NSE Vulscan en la ruta donde se encuentran el resto de script para nmap. Por defecto: /usr/share/nmap/scripts

Página oficial de descarga: www.scip.ch/en/?labs.20130625

PoC: Prueba de concepto Nmap Vulnscan v1.0


El parámetro es bastante sencillo una vez que se tiene instalado el script.

Basta con poner los parámetros que solemos poner habitualmente haciendo referencia al script:

nmap -T4 -v -v -F --script vuln --script-args vulnscandb=securityfocus.csv www.sitioweb.com
Lo que estamos consiguiendo con estos parámetros es decir a nmap que queremos que lance un escaneo básico, mostrándonos los errores y los resultados. Indicándole además que queremos que utilice un script (vuln) y añadiendo la base de datos done queremos que haga sus búsquedas.

El resultado como comprobamos es bastante bueno, hemos obtenido un fallo de XSS (Cross Site Scripting)


Nmap nos está sirviendo para buscar vulnerabilidades, sin embargo eso no quiere decir que aya a realizar el ataque por nosotros. Eso sí, nos dará toda la información necesaria. Tanto es así, que nos muestra la url completa a la que debemos atacar para explotar dicha vulnerabilidad.

Aunque l explotación de vulnerabilidades las veremos en el siguiente tema, quiero mostrar como la vulnerabilidad de nmap es completamente explotable y no ha dado un falso positivo.