Interactuar con una Máquina Windows Comprometida utilizando Armitage

Body

Armitage es una interfaz gráfica para Metasploit Framework. La elección de utilizar ya sea la interfaz gráfica para Metasploit o la línea de comando, se basa en requerimientos, experiencia y preferencias. Sin embargo, es probable se utilicen ambos entornos para realizar diversos tipos de evaluaciones. Anotar lo siguiente, ya sea Metasploit Framework cuanto Armitage, utilizan la misma base de datos backend, por lo tanto, si ya se tiene iniciada la base de datos y se ha trabajado con ella, es probable se encuentren en Armitage esos datos también.

Luego de haber explotado exitosamente un sistema Windows, Armitage proporcionar diversas opciones para interactuar con el sistema de manera gráfica.

Una de las maneras fundamentales para interactuar con el sistema, es a través de una shell de comandos. Para ello hacer clic derecho en el host, para luego seleccionar la opción “Meterpreter -> Interact -> Command Shell”.

En el panel inferior se presenta una nueva pestaña de nombre “cmd.exe”, en la cual se pueden ejecutar comandos en la shell de Windows.

También se requiere tener la capacidad e interactuar con el sistema de archivos del sistema comprometido. Esto proporciona en primera instancia la capacidad de subir y descargar archivos. Se utiliza para este propósito la opción “Meterpreter -> Explore -> Browse Files”.

En el panel inferior se apertura una nueva pestaña de nombre “Files”, donde es factible visualizar varias columnas conteniendo información como el nombre de archivo, su tamaño, fecha de modificación y modos o permisos.

Otro procedimiento útil es tener la capacidad de obtener las pulsaciones del teclado realizadas por el ser humano al interactuar con el sistema Windows. Armitage proporciona esta funcionalidad utilizando la opción “Metepreter -> Explore Log Keystrokes .

Se presentará una nueva ventana en la cual es factible especificar algunos ajustes en caso sea requeridos. Para este escenario se utilizan las opciones por defecto. Simplemente se hace clic en el botón de nombre “Launch”.

En el panel inferior se presenta la ejecución del módulo pertinente de Metasploit Framework. Y en cuanto se interactúe con el sistema Windows, escribiendo algo a través del teclado, estas pulsaciones serán presentadas casi de inmediato.

En diversos escenarios también puede ser requerido obtener una captura de pantalla del sistema remoto. Esto es factible utilizando la opción “Meterpreter -> Explore -> Screenshot”.

En el panel inferior se presentará una imagen resultado de haber obtenido una captura de pantalla del sistema Windows remoto.

Armitage incluye diversas funcionalidades adicionales, se sugiere revisar las diversas opciones, iniciando por la opción “Meterpreter”.

Fuentes:

http://www.reydes.com/d/?q=Encontrar_Ataques_contra_un_Host_utilizando_…
http://www.reydes.com/d/?q=Explotar_un_Host_utilizando_Armitage
http://www.fastandeasyhacking.com/
https://github.com/rapid7/metasploit-framework

Volcar Contraseñas de un Sistema Windows utilizando Armitage

Body

Armitage es una herramienta gráfica para la gestión de ciber ataques para el proyecto Metasploit, la cual visualiza sistemas a evaluar y recomienda exploits o códigos de explotación. Es una notable herramienta libre y de fuente abierta para seguridad en redes, la cual destaca por sus contribuciones para colaboración de “equipos rojo”, permitiendo sesiones compartidas, datos y comunicación a través de una única instancia de Metasploit.

El presente escenario parte de una explotación satisfactoria en un sistema Windows utilizando Armitage.

Para poder volcar los hashes de las contraseñas, es necesario en primera instancia obtener los privilegios necesarios para hacer esto. Hacer clic derecho en el host, para luego en el menú desplegable seleccionar “Access -> Escalate Privileges”.

Se intenta obtener privilegios utilizando el módulo de post-explotación de nombre “system”. Primero es necesario listar los procesos en ejecución utilizando la opción “Explore -> Show Processes”.

En el panel inferior se presenta una nueva pestaña de nombre “Processes”. Seleccionar el proceso de nombre “lsass.exe”, para luego hacer clic en el botón de nombre “Migrate”. Se presenta una ventana la cual versa sobre el éxito de la migración.

Para volcar los hashes de las contraseñas del sistema Windows bajo control, utilizar la opción “Access -> Dump Hashes -> lsass method”.

En el panel inferior se presenta una nueva pestaña de nombre “Meterpreter1”, conteniendo el resultado de ejecutar el comando “hashdump” en Meterpreter.

Adicionalmente se tiene la opción de ejecutar módulos para tratar de obtener el texto plano desde los hashes de contraseñas (romper contraseñas), o también es factible utilizar otras herramientas como John The Riper o hashcat.

Fuente:

https://en.wikipedia.org/wiki/Armitage_(computing)
http://www.reydes.com/d/?q=Explotar_un_Host_utilizando_Armitage
https://www.openwall.com/john/
https://github.com/hashcat/hashcat

Explotar un Host utilizando Armitage

Body

Armitage es una herramienta de colaboración para “equipos rojos” (Red Team), la cual utiliza Metasploit Framework para visualizar los sistemas en evaluación, recomendar códigos de explotación o “exploits”, y exponer las características avanzadas para la explotación posterior o post-exploitación en el Framework.

Conociendo cuales ataques podrían potencialmente comprometer un host, se procede entonces a seleccionar una de estos. Hacer clic derecho en el host a explotar, para luego en el menú desplegable seleccionar “Attack -> irc -> unreal_ircd_3281_backdoor”.

En la nueva ventanae es posible configurar todas las opciones pertinentes para realizar la explotación, como “LHOST”, “RHOSTS”, “LPORT”, “RPORT”, así mismo “Targets”, siendo posible también configurar opciones avanzadas. Por defecto se definirán las opciones estándar. Para el presente escenario, únicamente se activa la casilla “Use a reverse connection” o Utilizar una conexión inversa.

Hacer clic en el botón “Launch” o Lanzar, esto lanza el código de explotación contra el host en evaluación. Ahora el ícono del host se torna en color rojizo y con algunos truenos, esto significa se explotó exitosamente el sistema. En el panel inferior se visualiza el procedimiento de explotación a nivel de la consola.

Al hacer clic derecho nuevamente sobre el sistema, el menú desplegable muestra la opción “Shell 1”.

Se selecciona la opción “Interact” o Interactuar, lo cual creará en la parte inferior una nueva pestaña de nombre “Shell1”. En esta shell es factible ejecutar diversos comandos a nivel del sistema operativo.

El ataque de nombre “Hail Mary” o “Ave María”, es una ataque ruidoso. Puede ser útil en una situación de laboratorio si se tiene una máquina virtual de ejemplo, y se está buscando por exploits para esta, pero para un sistema real o a través de Internet, esto podría ser detectado fácilmente, y sería típicamente un indicador de un carencia de experiencia y conocimiento por parte del profesional en pruebas de penetración. Razón por la cual no es generalmente utilizado por profesionales experimentados.

Fuentes:

http://www.fastandeasyhacking.com/
http://www.fastandeasyhacking.com/manual
http://www.reydes.com/d/?q=Encontrar_Ataques_contra_un_Host_utilizando_…

Encontrar Ataques contra un Host utilizando Armitage

Body

Armitage es una herramienta de colaboración para “equipos rojos” (Red Team), la cual utiliza Metasploit Framework para visualizar los sistemas en evaluación, recomendar códigos de explotación o “exploits”, y exponer las características avanzadas para la explotación posterior o post-exploitación en el Framework.

Luego de utilizar Armitage para realizar un escaneo de puertos utilizando la herramienta Nmap, es factible seleccionar el sistema en evaluación, para luego hacer clic derecho y seleccionar la opción “Servicies”.

En el panel inferior se presentará una nueva pestaña de nombre “Services”, donde se expone una columna de nombre “host”, conteniendo la dirección IP de los hosts, una columna de nombre “name”, conteniendo el nombre del servicio, una columna de nombre “port” conteniendo el número de puerto, una columna de nombre “proto” conteniendo el protocolo, y una columna de nombre “info” con información adicional.

Se intenta encontrar algunos posibles ataques contra el sistema en evaluación. Para esto se procede a hacer clic en la opción “Attacks -> Find Attacks”, el cual se ubica en el menú superior. Esto proceso podría demandar algo de tiempo para correlacionar toda la información.

Al finalizar el proceso se presenta una nueva ventana, la cual versa sobre el análisis sobre ataques ha sido completado, y ahora es factible utilizar el menú “Attack” adjunto a cada host.

Al seleccionar el host en evaluación, se procede a hacer clic derecho, ante lo cual se presenta un menú desplegable donde al seleccionar la opción “Attack”, se presenta un listado de los servicios y sus correspondientes códigos de explotación o exploits, factibles de ser utilizados.

Es posible desplazarse sobre estas opciones y analizar los posibles ataques. Es importante mencionar el hecho de Armitage haya identificado potenciales exploits para los servicios, no implica todo los exploits sean exitosos al ser ejecutados. Es por ello se sugiere realizar una verificación manual.

Fuentes:

http://www.fastandeasyhacking.com/
http://www.fastandeasyhacking.com/manual

Realizar un Escaneo con Nmap utilizando Armitage

Body

Armitage es una interfaz gráfica para Metasploit Framework. La selección de utilizar la interfaz gráfica para Metasploit o la línea de comandos, se basa en requerimientos, experiencia y preferencias. Sin embargo, es probable se utilicen ambos para diversos escenarios en evaluación.

Para realizar un escaneo con Nmap dentro de Armitage, seleccionar la opción “Hosts -> Nmap Scan”. Se desplegarán varios tipos de escaneos factibles de ser realizados utilizando Nmap; como un escaneo intenso, un escaneo intenso + UDP, un escaneo intenso de todos los puertos TCP, un escaneo intenso sin hacer ping, un escaneo ping, un escaneo rápido, un escaneo para detectar el sistema operativo, y un escaneo completo.

Para el siguiente ejemplo se selección un escaneo completo.

Armitage presenta una nueva ventana donde se debe ingresar el rango a escanear. En este caso únicamente se realizará el escaneo contra una dirección IP.

Finalizado el escaneo con Nmap. Armitage presenta una nueva ventana, la cual versa sobre la finalización del escaneo. Y la sugerencia de utilizar la opción “Attacks -> Find Attacks” para encontrar exploits aplicables al sistema en evaluación.

También existe la opción de seleccionar y copiar los resultados obtenidos por Nmap, los cuales se muestran en el panel inferior, en caso sea requerido.

http://www.fastandeasyhacking.com/
https://nmap.org/

Importar un Escaneo Realizado con Nmap hacia Armitage

Body

Armitage es una interfaz gráfica para Metasploit Framework. La selección de utilizar la interfaz gráfica para Metasploit o la línea de comandos, se basa en requerimientos, experiencia y preferencias. Sin embargo, es probable se utilicen ambos para diversos escenarios en evaluación. Anotar lo siguiente, ya sea Metasploit Framework cuanto Armitage, utilizan la misma base de datos backend, por lo tanto, si ya se tiene iniciada la base de datos y se ha trabajado con ella, es probable se encuentren en Armitage esos datos también.

Armitage puede ser ejecutado a través del menú de Kali Linux, o directamente en la consola.

# armitage

Armitage tiene la capacidad de importar los escaneos realizados previamente con Nmap. Para eso se utiliza la opción “Hosts -> Import Hosts”.

Luego seleccionar el archivo en formato XML conteniendo el escaneo realizado con Nmap. En este primer ejemplo el escaneo se realizó contra un host únicametne.

Armitage mostrará en el panel inferior, el resultado exitoso de haber importado correctamente el contenido del archivo XML. En el panel superior derecho mostrará el ícono pertinente al sistema importado.

Para limpiar la base de datos se utiliza la opción “Host -> Clear Database”.

Para el siguiente ejemplo, se importan los resultados obtenidos al realizar un escaneo con Nmap, hacia toda una subred.

Nuevamente Armitage presenta en panel superior derecho todos los hosts identificados, y en el panel inferior el resultado de importar el archivo en formato XML generado por Nmap.

Fuentes:

http://www.fastandeasyhacking.com/
https://github.com/rapid7/metasploit-framework

Buscar en la Base de Datos Local de Exploits en Kali Linux

Body

La base de datos local de “exploits”, se incluye de manera estándar en Kali Linux. Esta es una gran manera de buscar exploits fuera de línea, o cuando no se tiene conexión hacia Internet. Debido a sus capacidades de búsqueda fuera de linea, esta capacidad es grandiosa cuando se está operando en un escenario con algunas restricciones.

Al ejecutar el comando “searchsploit” con la opción “-h” se muestra un resumen de las opciones factibles de ser utilizadas con la herramienta.

# searchsploit -h

En primera instancia se debe estar seguro la base de datos de exploits está actualizada. Para actualizar la base de datos se utiliza la opción “-u”.

# searchsploit -u

Para ejecutar una consulta simple, únicamente se define la cadena de texto a buscar.

# searchsploit MS17-010

Los resultados muestran una columna de nombre “Titulo del Exploit”, y una segunda columna de nombre “Ruta”. En base a esta última columna es donde se encontrará el archivo conteniendo el “exploit”. Se visualiza uno de los archivos utilizando el editor de texto nano.

# nano /usr/share/exploitdb/exploits/windows/remote/42315.py

El contenido del archivo muestra se trata de un módulo correspondiente a Metasploit Framework.

Si se tienen los resultados obtenidos de realizar un escaneo utilizando Nmap o Zenmap en formato XML, se puede utiliza este archivo al unísono de “searchsploit”, para buscar rápidamente por exploits.

# searchsploit --nmap /root/NmapScans/NmapScanM3.xml

Toda esta base de datos de exploits es una réplica local en Kali Linux de lo contenido en el sitio web de nombre “Exploit Database”.

Fuente:

https://www.exploit-db.com/

Utilizar SNMP para Obtener más Información con Snmp-check y Onesixtyone

Body

Se pueden utilizar los hosts identificados a través del uso de la herrameinta Nmap, los cuales tengan puertos SNMP abiertos o servicios en funcionamiento para obtener más información.

Simple Network Management Protocol (SNMP), es un protocolo utilizado para proporcionar estado y configuración para diversos dispositivos, incluyendo servidores, estaciones de trabajo, aparatos de red, dispositivos IoT, y otros hosts. Este protocolo proporciona ya sea la funcionalidad de sólo-lectura y lectura-escritura. Frecuentemente los dispositivos han sido desplegados con la disponibilidad de sólo-lectura por defecto. Los administradores de red frecuentemente habilitan el acceso de lectura-escritura para propósitos de gestión. Las contraseñas por defecto para SNMP en muchos dispositivos es “public” para acceso de sólo-lectura, y “private” para acceso de lectura-escritura.

Existen tres tipos de SNMPs. Aunque la versión 1 ya no es frecuentemente utilizada, la versión 2 aún es bastante común, y la versión 3 está ganando uso debido a su mejor sistema de seguridad y autenticación. Para el siguiente ejemplo se utiliza la versión 2, al unísono de la herramienta “snmp-check”. Al ejecutar la herramienta con la opción “-h” se muestran sus opciones.

# snmp-check -h

Se procede a realizar un escaneo simple. Por defecto, muchas implementaciones SNMP utilizan las contraseñas “public” y “private”. Si se conoce la contraseña o se adivina, se puede substituir “public”, con la pertinente.

# snmp-check -v2c -c public 104.236.166.95

La opción “-v”define la versión de SNMP, por defecto será 1. la opción “-c” define la comunidad SNMP, por defecto será “public”.

Al observar los resultados obtenidos, se encuentra una gran cantidad de información sobre el host. Información de la interfaz de red, información de encaminamiento, servicios en ejecución, puertos TCP y UDP abiertos, como también diversa información del sistema.

En caso no se conozcan las credenciales utilizadas para SNMP, se puede intentar realizar un ataque por diccionario contra el host para adivinar las credenciales, utilizando la herramienta onesixtyone.

Al ejecutar la herramienta onesixtyone sin opciones se presenta un resumen de sus opciones.

# onesixtyone

Para el siguiente caso se utiliza la opción “-c” para definir un archivo conteniendo potenciales cadenas de comunidad (contraseñas).

# onesixtyone -c /usr/share/doc/onesixtyone/dict.txt 104.236.166.95

Finalizada la ejecución, se muestran las cadenas de comunidad (contraseñas) identificadas, las cuales son “public” y “private”.

Existen diversos archivos conteniendo listas de palabras más completas, lo cual incrementa consecuentemente las probabilidades de descubrir algo.

Fuentes:

https://en.wikipedia.org/wiki/Simple_Network_Management_Protocol
https://linux.die.net/man/1/snmpcheck
http://www.nothink.org/codes/snmpcheck/index.php
https://github.com/trailofbits/onesixtyone
https://github.com/danielmiessler/SecLists/tree/master/Miscellaneous

Identificar la Existencia de un Firewall para Aplicaciones Web utilizando wafw00f

Body

Es factible utilizar una herramienta de nombre “wafw00f”, para conocer la existencia de un firewall para aplicaciones web, entre los clientes o usuarios y el sitio web.

Wafw00f envía peticiones HTTP normales y analiza las respuestas; esto identifica diversas soluciones WAF. Si esto no es exitoso, envía un número de (potencialmente maliciosas) peticiones HTTP, y utiliza lógica simple para deducir si existe un WAF. Si esto tampoco es exitoso, analiza las respuestas previamente devueltas, y utiliza otros algoritmos simples para adivinar si un WAF o una solución de seguridad está activamente respondiendo los ataques.

Al ejecutar la herramienta wafw00f con la opción “-h”, se obtiene un listado de las opciones factibles de ser utilizadas.

# wafw00f

Se utiliza la opción “-v” para generar verbosidad en el proceso de escaneo.

# wafw00f -v scanme.nmap.org

Los resultados obtenidos por wafw00f, indican la no detección de un WAF.

Para el siguiente escenario se utiliza la opción “-vv”, esto genera una mayor verbosidad sobre el proceso de escaneo realizado por wafw00f.

# wafw00f -vv example.com

Los resultados obtenidos por wafw00f, indican el sitio web está detrás de un “Edgecast / Verizon Digital media”

Muchas organizaciones utilizar un Firewall para Aplicaciones Web (WAF), de tal manera protejan los sitios web de ataques específicos. Entender cual dispositivo de seguridad se sitúa entre el usuario y el sitio web en evaluación, es extremadamente importante. Se necesitará ofuscar y evitar la detección. Siendo necesario ser más precisos y utilizar técnicas especiales, para penetrar un sitio web con un WAF en funcionamiento.

Fuentes:

https://github.com/EnableSecurity/wafw00f

Obtener un Perfil de los Hosts utilizando Nmap

Body

Nmap proporciona funcionalidades avanzadas para obtener información adicional sobre los hosts en evaluación. El primer proceso a realizar es detectar el sistema operativo y los servicios. La opción “-A” de Nmap habilita opciones agresivas y avanzadas. Habilita la detección del sistema operativo (-O), escaneo de versión “-sV”, escaneo con scripts (-sC) y traza de la ruta (--traceroute). El punto es habilitar un completo conjunto de opciones para escaneo, sin necesidad las personas deban recordar un gran conjunto de opciones. Sin embargo, debido al escaneo con scripts por defecto es considerado intrusivo, no se debe utilizar la opción “-A” contra una red o hosts sin permiso.

# nmap -n -Pn -p- -A 192.168.0.6

Al revisar los resultados obtenidos por Nmap, se puede visualizar una gran cantidad de información sobre los servicios en funcionamiento. Esto proporciona información detallada sobre los servicios específicos ejecutándose en el puerto, información de la versión y otra información relevante.

Es factible también ejecutar un escaneo más agresivo contra un host utilizando la opción “--version-intensity”. Cuando se realizar un escaneo de versión (-sV), Nmap envía una serie de pruebas, a cada una de las cuales se le asigna un valor del uno al nueve. Los números menores son más efectivos contra una diversidad de servicios, mientras los números más altos son raramente útiles. El nivel de intensidad específica cuales pruebas deben ser aplicadas. Un número alto implica mayor probabilidad del servicio sea correctamente identificado.

# nmap -n -Pn -p- -sV --version-intensity 5 192.168.0.6

Se sugiere aprender más sobre Nmap, y un buen lugar para hacerlo es el propio sitio web del proyecto. También se sugiere aprender la interfaz gráfica de nombre Zenmap. En caso se requieran realizar escaneos hacia Internet, estos pueden ser realizados contra el host “scanme.nmap.org”. Este sitio está disponible como ayuda para entrenamientos, pero sin generar inconvenientes.

Fuente:

https://nmap.org
https://nmap.org/book/man-os-detection.html
https://nmap.org/book/man-version-detection.html