Академический Документы
Профессиональный Документы
Культура Документы
ARMITAGE
Armitage organiza las capacidades de metasploit alrededor del proceso de hacking. Hay
características para descubrimiento, acceso, post-explotación, y maniobra.
En esta sección describiremos estas características a de forma superficial como
introducción. El resto del manual veremos todas estas capacidades con más detalle.
1.3.- Vocabulario
2. Primeros pasos
2.1 Requerimientos
Kali Linux viene con Metasploit Framework instalado. Esta es una buena opción si se
quiere poner en marcha con Armitage rápidamente.
2.2.1.- Instrucciones de instalación (hace ha de hacerse la primera vez!)
1. Abra un terminal
2. Inicie la base de datos: service postgresql start
3. Inicialice la base de datos: service metasploit start
4. Detenga el servicio de Metasploit: service metasploit stop
5. Instalar / Actualizar Armitage: apt-get update ; apt-get install
Armitage
6. Utilice Java 1.7 por defecto (32 bits Kali): update-java-alternatives –jre -
s java-1.7.0-openjdk-i386
7. Utilice Java 1.7 por defecto (64 bits Kali): update-java-alternatives –jre -
s java-1.7.0-openjdk-amd64
2.2.2.- Iniciar Armitage
1. Abrimos un terminal
2. Iniciamos la base de datos PostgreSQL: service postgres start
(Esto no ocurre automáticamente en Kali linux. En bugtraq a través del menú de
aplicaciones. )
3. cd /path/to/Armitage ( no necesario)
4. ./Armitage
Ejecutar todo como root , de lo contrario dará error.
2.2.3.- Cómo actualizar Metasploit
BackTrack Linux ya no es un entorno soportado por Armitage. Mejor utilizar Kali Linux
o Bugtraq
Si desea seguir utilizando BackTrack Linux, debe desinstalar el Metasploit Framework
e instale las últimas dependencias. Debido a cambios de dependencias en el marco, el
entorno de BackTrack Linux no va a funcionar si actualiza Metasploit.
Para desinstalar el Metasploit Framework:
cd / opt / Metasploit
. / uninstall
No obstante, la versión 5 si lo incluye
Backtrack Linux 5 incluye Metasploit y Armitage listos para usar.
Necesitas iniciar mysql para eso/etc/init./mysql start
host: 127.0.0.1
Port: 55553
User: msf
Pass: test
2.4.- Linux
1. Instale el Metasploit Framework y sus dependencias
2. Extraiga Armitage
3. Cambie a la carpeta que ha instalado en Armitage
4. Utilice. / Armitage para iniciar Armitage
2.5.- Windows
Windows no es un entorno soportado para ejecutar Armitage con Metasploit
Framework. Puede conectar Armitage en Windows a través de un servidor alojado en
Linux ( Virtualización)
2.6.- Manual de instalación
cd /path/to/metasploit/msf3
source ../scripts/setenv.sh
git pull
git checkout [commit id]
bundle install
3) Vuelva a instalar Metasploit usando el instalador proporcionado por
Rapid7. El instalador Metasploit incluye la última versión estable de
Metasploit. Por lo general, esta versión es muy estable.
Si usted se está preparando para usar Armitage y Metasploit en algún sitio importante
, no ejecute msfupdate . De esta forma se asegura que le funcionará. Como dice el
dicho, más vale lo malo conocido que lo bueno por conocer, o más vale pájaro en
mano que cientos volando.
En caso de duda, ir con la opción (2) o (3).
La interfaz de usuario Armitage tiene tres paneles principales: módulos, objetivos, y las
fichas. Puede hacer clic en el área entre estos paneles para cambiar el tamaño a tu
gusto.
3.2 Módulos
Si disponemos de una gran cantidad de hosts, con la vista gráfica se hace difícil trabajar
sobre ellos. Para esta situación Armitage tiene una vista de tabla. Ir a Armitage -
> Definir vista Target -> Vista de tabla para cambiar a este modo. Armitage se
acordará de su preferencia.
Haga clic en cualquiera de las cabeceras de la tabla para ordenar los anfitriones. Resalte
una fila y haga clic en él para abrir un menú con opciones para ese host.
3.5.- Fichas.
Armitage abre cada dialogo , consola y tabla en una pestaña debajo del módulo y carga
los paneles de lo que se está ejecutando. Clic en la x de cada pestaña y podrá cerrarla.
Puedes así mismo hacer clic con el botón derecho y así desplegar una ventana de
diálogo que te permitirá capturar la ventana, cerrarlas todas con el mismo nombre.
3.6 Consolas
Utilice Ctr + para hacer que el tamaño de la fuente más grande de la consola, Ctrl –
para hacerla más pequeña, yCtrl 0 (cero) para restablecerla. Este cambio es local y
sólo afecta a la consola actual.
Visita Armitage -> Preferencias para cambiar permanentemente la
fuente.
Presione Ctrl F para mostrar un panel que te permite buscar texto
dentro de la consola.
Utilice Ctrl A para seleccionar todo el texto en el búfer de la consola.
Armitage envía un para su uso o un conjuntos de PAYLOAD si hacemos clic en un
módulo o tecleamos el nombre en la consola.
Para abrir una consola vaya a View -> Console o presione Ctrl+N.
En MacOS X y Windows, debe hacer clic en el cuadro de edición en la parte
inferior de la consola para escribir. Linux no tiene este problema.
Armitage registra toda la consola, shell, y la salida de registro de los eventos para
podemos visualizar como textos. . Armitage organiza estos registros por fecha y
host. Los podemos encontrar en el directorio de Armitage.
Para verlos vamos a View -> Reporting -> Acitivity Logs y abrimos el directorio.
Armitage también guarda copias de las capturas y de las fotos tomadas a través la
cámara web en esta carpeta.
Cambie el Armitage.log_everything.boolean clave de preferencia a falso para
desactivar esta función.
Edite el Armitage.log_data_here.folder para establecer la carpeta donde Armitage
debe registrar todo lo que deseemos.
Para obtener estos datos, vaya View -> Reporting -> Export Data . Esta opción
exporta los datos de Metasploit y crear archivos XML fácilmente analizable y archivos
con formato (TSV).
4. Administración del Host
Con esta función, Armitage le permite crear vistas en la base de datos de hosts y
cambiar rápidamente entre ellos. Use Workspaces -> Manage para administrar sus
espacios de trabajo dinámicos. Aquí usted puede agregar, editar y eliminar espacios de
trabajo que se creen.
Para crear un nuevo espacio de trabajo dinámico, pulse Add. .. Al pulsarlo nos
aparecerá el siguiente diálogo:
Le damos al espacio de trabajo dinámico un nombre. No importa cómo lo llames. Esta
descripción es personal
Si desea limitar su espacio de trabajo a los hosts de una red determinada, escriba una
descripción de la red en el campo Hosts. Una descripción de la red podría
ser:10.10.0.0/16 para mostrar hosts entre 10.10.0.0–10.10.255.255. ç
Para redes múltiples las separaremos con una , (coma ) y un espacio.
Rellene el campo Ports para incluir hosts con ciertos servicios. Para grupos de puertos,
los pondremos separados mediante una coma y un espacio
Utilice el campo OS para especificar el sistema operativo del equipo . Puede escribir
un nombre parcial, como Windows. Armitage sólo incluirá las máquinas cuyos nombre
del sistema operativo incluye el nombre parcial.
Este valor no distingue entre mayúsculas y minúsculas. Sistemas operativos múltiples
irán separados con una coma y un espacio.
Utilice el campo Labels ( etiquetas ) para mostrar los hosts con las etiquetas que
hemos definido . Armitage trata cada palabra en una etiqueta independiente. Puede
especificar cualquiera de estas etiquetas aquí. Por ejemplo, si el host 10.10.10.3 tiene la
etiqueta corp dc , un espacio de trabajo definido para mostrar dc o etiquetas corp
incluirá este host. Separe cada etiqueta con una coma y un espacio.
Seleccione Hosts with sesions sólo para incluir sólo los hosts con sesiones abiertas
en este espacio de trabajo dinámico.
Puede especificar cualquier combinación de estos elementos cuando se crea el espacio
de trabajo dinámico.
Cada área de trabajo tendrá un elemento del menú Workplaces. Utilice estos elementos
de menú para cambiar entre espacios de trabajo. También puede utilizar desde Ctrl
+1 a Ctrl 9 para cambiar entre sus primeros nueve áreas de trabajo. ( similar a las
consolas en linux).
Use Workspaces -> Show All or Ctrl+Backspace para mostrar todo o para
mostrar toda la base de datos.
Armitage sólo mostrará 512 hosts en un momento dado, no importa cuántos
hosts están en la base de datos. Si usted tiene miles de hosts, utilice esta
función para segmentar a sus anfitriones en conjuntos de objetivos útiles.
Metasploit registra todo lo que haces en una base de datos. Con el tiempo su base de
datos se podrá llenar y ser pesada. Si tiene problema con el rendimiento , intente
limpiar su base de datos. Para ello, vaya a Hosts -> Clear Database.
5. Explotación
Saber que exploit has de usar, al final como todo te lo dará la experiencia. Algunos
exploits en Metaexploit implementan una función de chequeo. Esta función verificará
con el host si es válido el exploit. Armitage, puede usar esta función para chequearlos y
elegir aquellos que probablemente servirán de entre todos. Por ejemplo, cargará
aquellos exploits de escucha del puerto 80 en caso que existan , después de usar la
opción Find Attacks. Clic sobre el menú Check exploits… para probarlos en vez de
usar cada uno de ellos. Una vez que han sido probados, presionaremos Ctrl F y
buscaremos los vulnerables. Que hará esto?, nos permitirá elegir el exploit correcto.
Nunca olvides “The quieter you become ,the more you can hear”.
Seleccionar el host y los Services es otra forma de encontrar el exploit. Si has obtenido
resultados con Nmap, mira que información te está dando y adivina que tipo de SO es.
Usa el módulo de navegación para seleccionar el exploit. Un módulo puede ayudarte a
encontrar la información requerida por otro exploit. Por ejemplo Apache Tomcat .
Eltomcat_mgr_login module buscará el usuario y contraseña que puedas usar.
Una vez realizado esto tu puedes lanzar el tomcat_mgr_deploy exploit para
conseguir una consola en host.
5.3 Ejecutando los Exploits
Esta pantalla , te permite configurar opciones para cada módulo y elegir como usarlo ,
por ejemplo usar una “conexión trasera” en el proceso.
Armitage presente varias opciones en esta pantalla. Haz doble clic sobre los distintos
valores y los podrás editar. Si una opción requiere un archivo, haz doble clic , se te
abrirá un cuadro de diálogo donde podrás elegir el archivo a cargar. También puedes
ver Show advanced options y ver las opciones avanzadas para ese exploit. Si no
entiendes mucho, mejor déjalos por defecto.
Si ves algo con un símbolo ✚ , significa que puedes hacer doble clic sobre él y se
desplegará un cuadro de ayuda que te ayudará a interpretar los distintos valores. Esto
es aplicable a modulo del exploit y a sus preferencias.
Algunos intentos de penetración pueden cargarse dentro de un archivo de texto, lo que
hará más fácil el trabajo. Armitage puede usar este tipo de filas. Doble clic
sobre RHOST✚ y selecciona los archivos a cargar. El archivo debe contener una IP por
línea. Es una forma fácil de lanzar ataques a todos los host.
Para exploits remoto, Armitage elige para ti el payload. Generalmente , Armitage
utilizará Meterpreter para objetivos Windows y un payload tipo shell para los objetivos
de UNIX.
Clic Launch para ejecutar el exploit . Si fuera efectivo, Armitage, pondrá el host en
rojo y con una nube blando alrededor del mismo. Metasploit también te mostrará un
mensaje para informarte que está el equipo comprometido.
Si el uso de exploit de forma manual fallara, siempre se puede usar la opción Hail Mary.
Attacks ->Hail Mary lanzará esta opción . La característica Hail Mary de Armitage feature es
un pequeño db_autopwn. Encuentra exploits relevantes que se pueden cargar , los filtra y
después los lanza en un optimizado orden.
Esta característica no encontrará posiblemente una shell , pero es una buena opción si no
sabemos que otros exploits podemos utilizar.
5.5 Exploits desde el lado del Cliente
Los exploits son una herramienta potente, pero no debemos olvidar lo más básico. Si
dicho payload lo podemos cargar dentro de un programa, entonces lo que necesitamos
es un ejecutable. Armitage, puede generar cualquier ejecutable de la base de payloads
de Metasploits. Elegimos entonces el payload en el módulo de navegación , doble clic en
él , seleccionamos el tipo de salida y fijamos las opciones. Una vez lanzado, un cuadro
de diálogo, nos preguntará donde queremos salvarlo.
6. Post Exploitation
Una vez que se ha comprometido un host, Armitage hace que sea fácil el uso del agente
Meterpreter 5. Aquellos Hosts que se ejecutan por medio de un payload mostrarán un
número por cada sesión que se ha abierto. En el ejemplo ” Meterpreter 5″.
Si tenemos una consola de acceso al host, se mostrará el número para cada sesión
abierto.
Haga clic derecho en el host para acceder a este menú. Si tenemos una sesión de shell
de Windows, podemos ir a Shell N -> Meterpreter… … actualizar la sesión para una
sesión Meterpreter. Si tenemos una shell de UNIX, vaya a Shell N -> Upload para
cargar un archivo usando el comando printf UNIX.
También puede presionar Ctrl + I para seleccionar una sesión para interactuar.
Otra forma de escalar privilegios es acceder y coger un token. Cuando un usuario inicia
sesión en un host de Windows, se genera una señal y actúa como una cookie temporal
para ahorrar al usuario la molestia de volver a escribir la contraseña cuando intentan
acceder a diferentes recursos. Estos Tokens, persisten hasta que el equipo se reinicia.
Deberías coger dicho Token, si quieres asumir los privilegios de ese usuario.
Para ver que Tokens están disponibles, ve a Meterpreter N -> Access-> Steal
Token. Armitage te mostrará una lista de Tokens disponibles. Clic Steal Token para
robar uno.
Si lo que quieres es devolverlo, presiona Revert to Self. El botón Get UID muestra el
estado del actual usuario.
6.4 Paso de sesión-
Meterpreter te proporciona muchas opciones para que explores el Host que has
comprometido. Uno de ellos es el navegador. Esta herramienta te permita cargar,
descargar y borrar archivos. Vaya a Meterpreter N -> Explore -> Browse
Files para acceder al navegador.
Clic derecho para descargar o borrar un archivo. Si lo que quiere es borrar un
directorio, primero debes cerciorarte que esté vacío, de lo contrario no podrás hacerlo.
Puedes descargar directorios o archivos individuales. Vaya a View -
> Downloads para acceder a los archivos que hayas descargado.
Si tienes privilegios de administrador o sistema, puedes modificar las marcas de
creación, modificación de los archivos. Esta característica trabaja como un
portapapeles. Usa Get MACE Values para capturar / copiar las fechas y tiempo de
creación del archivo seleccionado; haz Clic derecho sobre otro archivo y utiliza
entonces Set MACE Valuespara actualizar los valores de dicho archivo. El segundo
archivo tomará los valores del anterior.
6.7 VNC
Para capturar una pantalla usa Meterpreter N -> Explore -> Screenshot. Está
también la opción de Webcam Shot. Esta opción tomará fotogramas a través de la
webcam del usuario.
Clic derecho sobre screenshot o webcam shot image para cambiar el zoom. Esta
preferencia de zoom se mantendrá, incluso si actualiza la imagen. Haga clic en
Actualizar para actualizar la pantalla o tomar otro marco de la webcam. Haga clic
en Watch (10s) para tomar automáticamente una imagen cada diez segundos
6.9 Gestión de Procesos y contraseña de acceso
Vaya Meterpreter N -> Explore -> Show Processes para ver una lista de procesos
disponibles en el host de la víctima. Usa Kill para finalizar el proceso seleccionado.
Meterpreter se ejecuta en memoria . Es posible trasladar Meterpreter de un proceso
hasta otro. Esto se denomina migración. Marca un proceso y dale clic a Migrate para
migrar un proceso a otro. De esta forma tu sesión tendrá los permisos de ese proceso.
Mientras se está ejecutando, es posible ver las pulsaciones de ese proceso o programa.
Selecciona el programa o proceso y haz clic en Log Keystrokes para iniciar el módulo
que hace migrar a meterpreter y comience a capturar las pulsaciones del teclado de
dicho proceso ( imagina por ejemplo el proceso iexplorer ). Si selecionas por
ejemploexplorer.exe, podrás visualizar el todas la techas que el usuario pulsa en su
escritorio.
Si decides migrar un proceso con el fin de ver su log de registro, debes duplicar primero
su sesión. Si el proceso de Meterpreter activo se cierra, su sesión desaparecerá.
7. Maniobras
7.1 Pivotar.
Metasploit puede lanzar ataques desde un host comprometido a otros de la misma red.
Esta capacidad se llama “pivotar”
Para crear un pivote, vaya a Meterpreter N -> Pivoting -> Setup…. Se mostrará un
diálogo y te preguntará sobre cual subred quieres pivotar y sobre qué sesión.
Una vez que lo has seleccionado, Armitage, dibujará una línea verde desde el host
pivote hasta los otros seleccionados. Esta línea de mostrará más verde cuando dicho
pivote esté en uso.
Para usar host que se utiliza como pivote a través de una conexión inversa, ponga la
opciónLHOST en el cuadro de diálogo de la IP del host pivotado.
7.2 Scaneo y Herramientas Externas
Una vez que has accedido al host, es recomendable explorar y ver que más cosas hay en
la red. Si se ha configurado como pivotante, Metasploit creará una conexión túnel TCP
por medio del host pivotante. Dichas conexiones deben provenir de Metasploit.
Para encontrar host en la misma red que el host comprometido, clic derecho sobre el
host comprometido y vaya a Meterpreter N -> ARP Scan o Ping Sweep. Esto te
mostrará cuales host están disponibles. Resalte los anfitriones que aparecen, haga clic y
seleccione Scan para escanear estos hosts utilizando la función de MSF Scan de
Armitage.Estas exploraciones se realizarán desde el host pivotado. Considerar que
desde este equipo todo será más fácil ya que pertenece a la red.
En contrapartida, no pueden utilizarse herramientas externas como Nmap, etc. Sin
embargo se pueden lanzar herramientas externas a través de un proxy SOCKS . Vaya
aArmitage -> SOCKS Proxy.. para iniciar el servidor proxy SOCKS.
El servidor proxy SOCKS4 es una de las características más útiles en
Metasploit. Inicie esta opción y podrá configurar su navegador web para
conectarse a sitios web a través de Metasploit. Esto le permitirá navegar por
los sitios internos de una red como si estuvieras en local. También puede
configurar proxychains en Linux para utilizar casi cualquier programa a través
de un pivote proxy.
7.3 Password Hashes
Armitage, creará un menú de logeo ( login menu) en cada uno de los host con servicios
reconocidos. Clic derecho sobre el host navegue hasta Login -> service. Esto abrirá
un cuadro de diálogo donde podremos poner el usuario y contraseña de las contraseñas
conseguidas desde Metasploit.
Algunos servicios ( por ejemplo, telnet y ssh ) se habilitarán cuando el acceso sea
satisfactorio. Otros no.
Puedes usar la opcion Try all credentials . Con ella , Metasploit intentará el acceso
para cada una de las credenciales conocidas. Metasploit añadirá a su base de datos
aquellas que hayan resultado satisfactorias.
La mejor manera de acceder a una red es a través de credenciales
válidas. Recuerde que una exitosa combinación de nombre de usuario /
contraseña de un servicio puede darle acceso a otro host que no se podía
explotar.
7.6 Acceso por contraseña. Fuerza Bruta.
Metasploit puede intentar adivinar el usuario y contraseña para cada servicio.. Esta
capacidad es fácil de usar a través del navegador del módulo.
Puedes usar Armitage para conectar una instancia existente en Metasploit en otro host.
Trabajar con una instancia remota de Metasploit, es similar a hacerlo de forma loca.
Algunas características de Armitage, requieren que se tenga acceso de escritura y
lectura a los archivos locales. El Servicio de Servidor de Armitage añade estas
características y lo hace posible a los clientes de Armitage usar Metasploit de forma
remota.
La conexión remota de Metasploit, requiere iniciar el servicio RPC de
Metasploit así como servidor de equipo de Armitage.
8.2.- Configuración de Metasploit multi usuario.
El paquete de Armitage, viene con un script para el servicio de multi usuario que se
puede usar para iniciar el demonio RPC de Metasploit y el servidor del equipo de
Armitage con un solo comando
cd /path/to/Armitage
./teamserver [external IP address] [password].
View -> Event Log, abre un log compartido. Podemos escribir dentro de este log y así
comunicarnos si queremos utilizar un canal IRC o de chat. En una prueba de
penetración este registro de eventos nos puede ayudar a reconstruir los principales
acontecimientos acontecidos en el sistema.
Varios usuarios, pueden usar una sesión de Meterpreter al mismo tiempo. Cada usuario
puede tener abierta una o más consolas, explorer, o tomar capturas del host
comprometido.
9. Scripts en Armitage
9.1 Cortana
También se pueden usar scripts de Cortana, para extender los de Armitage y añadirle
así nuevas características.
Para cargar un script dentro de Armitage, vaya a Armitage -> Scripts. Clic
sobre Loady elija el script que desea cargar. Los Scripts cargados de esta forma estarán
disponibles cada vez que se inicia Armitage
La salida generada por los programas y comandos de Cortana están disponibles en la
consola Cortana. Vaya a View -> Script Console.
9.4 Recursos.
Cortana es un recurso muy completo para el desarrollo de Armitage. Si se desea
aprender más, aquí tiene varias direcciones de interés.