jueves, 8 de agosto de 2013

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

Algo que debemos tener en cuenta es saber que, por mucho que cada herramientas está un poco más enfocada para un tipo de función es bueno combinarlas entre ellas. De nada sirve tener muchas información de nuestro objetivo si luego no sabemos como buscar vulnerabilidades. Y lo mismo pasa a la hora de buscar vulnerabilidades, de nada sirve encontrar vulnerabilidades si luego no sabemos explotarlas. Comento esto por que a lo largo de este tema iremos viendo como encontrar vulnerabilidades y como saber encontrar la manera de explotarlas.

Posteriormente en el tema de explotación de vulnerabilidades nos centraremos más en como conseguir escalar privilegios, hacernos con el control de la máquina, etc. Pero de una manera mucho más concreta y sabiendo que casi 100% nuestro objetivo es vulnerable a ese ataque.

Puesto que esto es una primera toma de contacto con el pentesting y más concretamente con Backbox, no vamos a pararnos a explicar cada una de las herramientas que trae SO. Eso sí, nos centraremos en las que mejores resultados hemos obtenido a la hora de realizar una auditoría.

El siguiente turno le toca a OWASP.


Turno de OWASP

OWASP podríamos decir que es una herramienta que trabaja como proxy. ¿esto que quiere decir? Nosotros podemos utilizar OWASP para que intercepte todo el trafico de nuestro navegador, y para ello sólo hemos de configurar el navegador para que salga por un proxy.

Este proxy será la dirección local de tu máquina 127.0.0.1, y el puerto será el que se le haya asignado a OWASP, que por defecto es el 8081.

También podemos utilizar OWASP como cualquier otro escáner. Simplemente metiendo la dirección a la que pretendemos atacar, OWASP se encargará de hacer un búsqueda de todas las vulnerabilidades posibles.

Pero esto lo veremos después.
 
Img 1: Configuración proxy OWASP
La diferencia radica en nuestro propio criterio, es decir, el ataque va a ser el mismo, sin embargo podremos utilizarlo de la manera que nos sea más cómoda.

Si utilizamos OWASP como proxy, estaremos obligando al navegador a que todas las direcciones pasen previamente por OWASP. Esto puede ser un poco caótico si a la misma ves que estamos a tacando una web, también estamos visitando otras que no tiene nada que ver con el ataque. OWASP las recogerá y las analizará.

Eso sí, si esto ya lo sabemos previamente, tendremos el ataque mucho más controlado.

El otro método de ataque es mucho más directo aunque también es un arma de doble filo. Hablamos de un ataque que se realiza directamente sobre la web que nosotros le indiquemos. Esto incluye todo tipo de búsqueda de vulnerabildiades, recorrido de url, etc. Por tanto es un poco más llamativo para los FW, IDS/IPS, etc.

Img 2: Ataque directo OWASP

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.