Informe_Metaesploit

19
Riobamba-Ecuador 2014 ATAQUE DE PENETRACIÓN CON METASPLOIT FRAMEWORK Seguridad de Redes FIE-EIE-TEL ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

description

Informe_MetaesploitEl documento presenta una breve descripción de como ejecutar un ataque.

Transcript of Informe_Metaesploit

Page 1: Informe_Metaesploit

R i o b a m b a - E c u a d o r

2014

ATAQUE DE PENETRACIÓN CON METASPLOIT

FRAMEWORK Seguridad de Redes

FIE-EIE-TEL

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

Page 2: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

1

MATERIA: Seguridad de Redes

DOCENTE: David Garcés, Ing.

ESTUDIANTE: Adrian Siguenza

Achic León

Freddy Aguilar

Carlos Chamba

FECHA: 2014-12-01

TEMA: Ataque de penetración con Metasploit Framework.

Indice

Introducción .......................................................................................................................................... 1

Objetivo……………………………………………………………………………………………………………………………………2

Marco Teórico...........................................................................................................................................................2

Prueba de

concepto……………………………………………………………………………………….………………………………9

Conclusión…………………………………………………………………………………………………………………..18

Bibliografía ...........................................................................................................................................18

Introducción

El manejo de información ha tomado un interés crucial en cuanto a seguridad se

refiere, ya que nos encontramos expuestos a la sustracción de nuestra información

o suplantación de identidad, por parte de los delincuentes de la red.

En el siguiente trabajo de investigación se realizará un escaneo de red, y mediante

un testeo de las vulnerabilidades existentes en el sistema operativo Windows

ingresaremos a la red a través del puerto samba, ya que por defecto siempre se

encuentra habilitado dentro de los equipos que utilizan dicho sistema operativo,

para lograr nuestro objetivo se usará la herramienta Metasploit Framework.

Se realizaran pruebas en una red doméstica y la primera fue con un host con

sistema operativo Windows XP.

Page 3: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

2

Al finalizar las pruebas se espera tener el control total de un host con sistema

operativo Windows XP que se encuentre en la misma red implementada para las

pruebas.

Objetivo:

Penetrar un Sistema Operativo Windows XP, mediante el puerto 139 (samba).

Marco Teórico:

PRUEBA DE PENETRACIÓN

Las pruebas de penetración , a menudo llamado " pentesting " , " pruebas de

penetración " , o " pruebas de seguridad " , es la práctica de atacar a su propia

cuenta o sistemas de TI de sus clientes de la misma manera que un hacker podría

identificar agujeros de seguridad.

Por supuesto, esto se hace sin llegar a dañar la red. La persona que lleva a cabo una

prueba de penetración se llama un probador de penetración o pentester.

METASPLOIT

Según David Kennedy, Metasploit es un sistema de pruebas de intrusión como una

plataforma de desarrollo para la creación de herramientas de seguridad y exploits

(Kennedyet. al, 2011).

Este se divide en lo siguiente:

Exploits: donde encontramos todos los exploits disponibles en MSF y que

podemos utilizar.

Payloads: acción que se va a realizar si se logra explotar la vulnerabilidad que

seleccionamos.

Ejemplo: Windows/shell/reverse_tcp y con esto obtendríamos una Shell inversa.

Page 4: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

3

Auxiliary: son scripts con diferentes funciones.

Utilizando un scanner de puertos tcp, obtendríamos el estado de puertos y el

servicio que está corriendo bajo este mismo.

Metasploit: Es un proyecto open source de seguridad informática que

proporciona información acerca de vulnerabilidades de seguridad y ayuda en tests

de penetración y en el desarrollo de firmas para sistemas de detección de intrusos.

Su subproyecto más conocido es el Metasploit Framework, una herramienta para

desarrollar y ejecutar exploits contra una máquina remota.

ARQUITECTURA DE METASPLOIT

- Modulo auxiliary: Permite la interacción de herramientas externas como

pueden ser escaners de vulnerabilidades, sniffers, etc., con el framework de

Metasploit.

- Modulo encoders: Proporciona algoritmos para codificar y ofuscar los payloads

que utilizaremos tras haber tenido éxito el exploit.

Page 5: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

4

- Modulo exploits: Aquí es donde se encuentran todos los exploits disponibles en

el framework para conseguir acceso a los diferentes SOs.

- Modulo payloads: Nos proporciona gran cantidad de códigos “maliciosos” que

podremos ejecutar una vez haya tenido éxito el exploit.

- Modulo post: Nos proporciona funcionalidades para la fase de post explotación.

- Modulo nops: Nos permite realizar u obtener operaciones nop.

COMANDOS DE MSFCONSOLE

MetaSploit permite ser ejecutado de diferentes formas, desde línea de comandos

con msfcli, en donde se aceptan cada uno de los comandos metasploit de forma

independiente, por interfaz web (deprecada en las últimas versiones y disponible

únicamente en versiones antiguas), o por medio de la consola unificada

de metasploit llamada msfconsole (se trata de un intérprete de comandos bastante

robusto que es el sustituto de la interfaz web), esta última es la más utilizada por

aquellos que utilizan metasploit para realizar sus pruebas de penetración.

Help: Tal como su nombre indica permite obtener ayuda en un contexto

determinado (exploit o module).

Back: Permite salir del contexto actual de ejecución (exploit o module)

Check: Aunque no todos los exploits lo soportan, permite ver si un objetivo

determinado es vulnerable al exploit que se encuentra actualmente seleccionado

en la consola.

Connect: Al igual que realizamos una conexión por medio de telnet o netcat, este

comando nos permite conectarnos a un host remoto y enviar ficheros si es lo que

deseamos, también soporta SSL si se le indica la opción -s

msf> connect 192.168.1.34 23

Page 6: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

5

Exploit: Comando utilizado para realizar la ejecución del exploit cargado en el

contexto de la consola.

Run: Comando utilizado para realizar la ejecución del módulo/auxiliary cargado

en el contexto de la consola.

Irb: Permite ejecutar el interprete de Ruby para metasploit, de este modo se

pueden ingresar comandos y crear scripts al vuelo, esta característica es muy

interesante para conocer la estructura interna del framework.

Jobs: Se trata de módulos que se encuentran en ejecución en “background” este

comando permite listar y terminar comandos existentes.

Load: Permite cargar un plugin desde el directorio de plugins ubicado en la ruta de

instalación, recibe como parámetro el nombre del plugin.

Unload: Descarga un plugin cargado, recibe como parámetro el nombre

del plugin a descargar.

Loadpath: Trata de cargar un directorio donde se encuentran ubicados

módulos, plugins o exploits externos al framework, de esta forma podemos tener

exploits, payloads, etc. en un directorio independiente.

Resource: Carga un fichero de script que es posteriormente utilizado por

algún exploit o modulo que depende de él.

Route: Permite establecer las tablas de enrutamiento de las sesiones de Metasploit

generadas. Funciona similar al comando route de Linux, permite

adicionar subredes, mascaras de red y gateways.

Info: Despliega información adicional de un módulo o exploit seleccionado

Page 7: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

6

anteriormente en la consola, incluyendo todas las opciones, objetivos y otra

información.

Set: Permite establecer opciones del modulo o exploit seleccionado con el fin de

suministrar los datos necesarios para su correcta ejecución.

Unset: Elimina el valor actual de una variable del exploit o módulo en uso.

Sessions: Permite listar, interactuar y terminar sesiones generadas por módulos

o exploits, estas sesiones pueden ser consolas a máquinas remotas VNC, etc. con la

opción -l se pueden listar las sesiones generadas, -i <number> permite iniciar la

interacción con el número de consola establecido.

Search: permite ejecutar una búsqueda basada en expresiones regulares con un

texto que pueda coincidir con el nombre de un módulo o exploit.

Show: Permite mostrar las diferentes opciones para módulos, exploits y payloads.

msf> show auxiliary

msf> show exploits

msf> show payloads

msf> show options

msf> show targets

msf> show advanced

msf> show encoders

msf> show nops

msf> show evasion

Setg: Permite definir variables globales que serán empleadas por todos los

módulos o exploits cargados, de esta forma es posible definir variables bastante

comunes como LHOST, RHOST, LPORT, RPORT, etc. en una única interacción con la

consola sin escribir lo mismo una y otra vez.

Page 8: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

7

Save: Permite almacenar de forma permanente las variables globales establecidas

con el comando setg y las variables específicas de cada exploit en uso.

Use: Permite establecer el exploit o modulo a usar en la consola de metasploit.

SAMBA

Es una implementación libre del protocolo de archivos compartidos de Microsoft

Windows (antiguamente llamado SMB, renombrado recientemente a CIFS) para

sistemas de tipo UNIX.

De esta forma, es posible que computadoras con GNU/Linux,Mac OS X o Unix en

general se vean como servidores o actúen como clientes en redes de Windows.

Samba también permite validar usuarios haciendo de Controlador Principal de

Dominio (PDC), como miembro de dominio e incluso como un dominioActive

Directory para redes basadas en Windows; aparte de ser capaz de servir colas de

impresión, directorios compartidos y autentificar con su propio archivo de

usuarios.

Entre los sistemas tipo Unix en los que se puede ejecutar Samba, están las

distribuciones GNU/Linux, Solaris y las diferentes variantes BSD entre las que

podemos encontrar el Mac OS X Server de Apple.

HASHDUMP

Comando hashdump, para poder hablar de él, antes se debe explicar el método de

autenticación de Windows, NT Lan Manager, este es vulnerable a diversos ataques,

ya que no es necesario descifrar su contraseña, sino que es posible iniciar sesión

capturando el hash, así que "da igual que la contraseña sea de 10 caracteres o de

50, como den con el hash estas perdido", porque pueden realizar una

inpersonalización de usuarios.

Page 9: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

8

Normalmente en las grandes compañías todos los PC tienen las mismas

contraseñas, con lo cual es posible realizar una inpersonalización de usuarios y

escalar privilegios.

SNIFFER

Básicamente, un sniffer de red es un programa que puede ver toda la información

pasando por una red a la cual esta conectado. Según los flujos de datos van y

vienen por la red, el programa hace una vigilancia de ello, o “captura”

los paquetes que atraviesan los dispositivos de red.

Como ya hemos comentado en otros artículos, un paquete es una parte de un

mensaje que ha sido partido para poder ir de un sitio a otro. Normalmente, un

ordenador solo hace caso de paquetes con direcciones destinadas a el, e ignora el

resto del tráfico de la red.

Sin embargo, cuando un sniffer de red es configurado en un equipo u ordenador, el

interfaz de red es puesto en modo promiscuo para el sniffer. Esto significa que está

vigilando todo lo que atraviesa ese interfaz.

La cantidad de tráfico depende mucho en la localización delordenador en la red.

Un sistema cliente en una parte aislada de la red, solo ver un pequeño segmento

del tráfico de red, mientras que el servidor de dominio principal ve prácticamente

todo. Un sniffer de red puede ser configurado en dos modos:

Filtrado (captura todos los paquetes) y no filtrado (captura solo aquellos paquetes

contendiendo elementos de datos específicos).

Los paquetes que contienen datos que se filtran, son copiados al disco duro según

pasan. Estas copias pueden ser analizadas con tranquilidad después para

encontrar una información específica.

Page 10: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

9

PRUEBA DE CONCEPTO

1. Descripción del Escenario

Nuestra máquina virtual victima tiene abierto los puertos por defecto samba lo

cual nos facilita conseguir acceso a un PC utilizando Metasploit.

2. Análisis del Caso

Se trata de un servicio que tiene múltiples vulnerabilidades bajo sistemas

Windows y que frecuentemente es el punto de acceso de un pentester, en el

caso de GNU/Linux ocurre lo mismo, también es posible explotar

vulnerabilidades existentes en el servicio de Samba, especialmente cuando no

se encuentra correctamente parcheado.

3. Pre-Requisitos y Herramientas

Hardware

Una pc con el software necesario.

Software

Kali Linux como atacante

Una maquina virtual con un Windows XP como víctima

Page 11: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

10

Demostración:

Paso 1: Escaneo de la red: nmap –sP 192.168.1.0/26

Paso 2: Análisis del equipo que vamos a atacar, IP: nmap –sP 192.168.1.15/26

Page 12: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

11

Paso 3: Para entrar a Metasploit es necesario ingresar a la consola, para esto utilizaremos el

comando msfconsole, una vez a dentro digitamos otro comando: search samba que me

permite obtener el listado de posibles exploits.

Paso 4: Una vez ejecutados estos comando tendremos una descripción de exploit similar a esta

pantalla.

Page 13: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

12

Paso 5: Elegimos la vulnerabilidad a utilizar y la buscamos por el nombre, nos indicará cual es

el exploit que debemos utilizar así que lo seleccionamos y procedemos a la configuración.

Paso 6: Podemos ayudarnos del comando show options para saber las opciones que tenemos

con nuestro exploit, en este caso existen 2 opciones, la primera es RHOST que sirve para

seleccionar la ip objetivo y la segunda es RPORT, que nos permite seleccionar el puerto.

Page 14: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

13

Paso 6: Para nuestra demostración utilizaremos ip target (set rhost 192.168.15, set rhost

192.168.1.14), procederemos a ejecutar el exploit, ya que por defecto el RPORT (puerto) que

viene configurado en este es el puerto 139, así que se ejecutada directamente en la terminal

con el comando: exploit y podemos observar que hemos logrado abrir un sesión.

Paso 7: Usamos el comando dir y nos dará los directorios por los que podremos movernos

en la máquina vulnerada en nuestro caso obtendremos del sistema el listado de usuarios y

contraseñas: hashdump (El módulo post "hashdump 'volcará el contenido de la base de datos

SAM).

Page 15: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

14

Paso 8: Configuramos remotamente un sniffer que me permita obtener todo el tráfico que se

genera en mi maquina víctima.

ALGUNAS ACCIONES LUEGO DE LA PENETRACIÓN QUE PODEMOS REALIZAR:

Navegación en la maquina atacada.

Page 16: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

15

Captura y descarga de paquetes.

Análisis de paquetes capturados.

Page 17: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

16

Filtro y localización de usuario y contraseña capturada

Creación de una carpeta en la maquina atacada.

Page 18: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

17

Verificación de carpeta en la maquina atacada.

Método de protección.

El método de defensa más eficaz contra la ingeniería es la concienciación del

usuario, es necesario parchar todos los puertos que no se estén utilizando e

identificar la autensidad de petición, finalmente podemos usar:

serwindows/browser/ms10_046_shortcut_icon_dllloader (el fallo de los .lnk), el

cual vamos a explotar a través de Internet Explorer.

Como payload usaremos windows/shell_reverse_tcp para obtener el control del

equipo remoto mediante consola de comandos.

Patriot nos avisa de que ha detectado una ventana oculta del proceso cmd.exe y

una nueva conexión abierta por el proceso svchost.exe. Esto significa que en un

principio el ataque está funcionando, ya que si cmd.exe se está ejecutando quiere

decir que el payload se ha cargado.

Page 19: Informe_Metaesploit

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ESCUELA DE INGENIERIA ELECTRÓNICA

TELECOMUNICACIONES Y REDES

18

CONCLUSIÓN:

Como mencionamos al principio uno de nuestros objetivos era tomar el

control total de un host ubicado en nuestra red ya que mediante la

identificación de la versión del servicio se pudo encontrar

el exploit adecuado, Al utilizar la herramienta meterpreter no se encuentran

dificultades con el antivirus, ya que este trabaja a nivel de memoria.

BIBLIOGRAFIA:

http://highsec.es/2013/09/penetrar-un-servidor-unix-por-el-puerto-139/

http://es.wikipedia.org/wiki/Metasploit

http://en.wikipedia.org/wiki/Metasploit_Project

http://es.docs.kali.org/general-use-es/iniciando-el-metasploit-framework

http://www.estacion-informatica.com/2013/03/migrate-y-hashdump-en-

metasploit.html

http://hardc0dexploit.blogspot.com/2014/06/hablando-un-poco-de-metasploit-

y.html

http://books.google.com.ec/books?id=QcuMSdfC_0AC&pg=PR7&lpg=PR7&dq=pue

rto+samba+con+metasploit&source=bl&ots=Z5Qw_zL3wT&sig=XjzUKrBsJXgk3Fjh

ZBuHzM7PHGc&hl=es-419&sa=X&ei=QFd8VIWkCfGLsQTd-

4DoBQ&ved=0CFcQ6AEwCQ#v=onepage&q&f=false