Realice pruebas de seguridad simples usted mismo, con Metasploit Framework y nmap

La seguridad de su propia red se puede poner a prueba con poco esfuerzo. Presentamos dos herramientas que lo hacen posible. La mejor parte: las herramientas son gratuitas.

El Metasploit Framework de Rapid7 es uno de los frameworks más populares en el área de evaluación de vulnerabilidades, que muchos Equipos Rojos / probadores de penetración utilizan en todo el mundo. Está disponible gratuitamente y se puede ampliar individualmente para que se pueda utilizar de forma muy flexible. A menudo se usa en combinación con un escáner de puertos. Con nmap presentamos una de las herramientas más destacadas en esta área, que también está disponible gratuitamente.

Con este artículo damos una pequeña idea de las dos herramientas. En el transcurso de este artículo, mostraremos un breve ejemplo para demostrar cómo puede realizar usted mismo pruebas sencillas contra sus sistemas.

Tenga en cuenta que solo puede realizar ataques contra sistemas para los que el propietario le haya dado permiso. De lo contrario, existe el riesgo de persecución penal. Además, asegúrese de coordinar sus pruebas y no interfiera o bloquee sin previo aviso un servicio que otras personas estén usando.

Conocimientos previos – instalación

Conocimiento previo

Metasploit Framework es una aplicación de consola, nmap se ejecuta a través de la línea de comandos. Por lo tanto, debe tener conocimientos básicos en esta área (bash o similar).

instalación

El Metasploit Framework se puede descargar aquí y luego instalarlo.

Pero tenga cuidado: el software antivirus y los firewalls a veces reconocen los archivos como malware porque contienen código que se encuentra en el malware. En consecuencia, debe desactivar estos componentes de protección o configurarlos para que no impidan el uso de Metasploit Framework.

Al instalar Metasploit Framework, también se instalan las herramientas relacionadas (incluido nmap), por lo que no es necesaria ninguna instalación adicional para nuestro ejemplo.

Alternativamente, puede utilizar Kali Linux , una distribución de Linux en la que ya están preinstaladas algunas herramientas del campo de la seguridad ofensiva. También se incluyen Metasploit Framework y nmap. Cuando utilice Kali Linux, tenga en cuenta que hay algunas soluciones EDR que son sensibles al nombre de host estándar de un sistema Kali y hacen sonar una alarma.

Práctico: Kali Linux está disponible como máquina virtual para VirtualBox o VMware, por lo que puede ahorrarse la instalación de su propio sistema.

Marco de Metasploit

El Metasploit Framework tiene una estructura modular. Los módulos se pueden dividir en diferentes categorías, que se pueden combinar entre sí de diferentes formas.

Tres de las categorías se explican brevemente a continuación:

1. Auxiliares: incluyen herramientas auxiliares como escáneres, fuzzers, etc., que se utilizan para identificar qué servicios se están ejecutando en un sistema de destino y si existen puntos débiles.

2. Exploits: en Exploits encontrará todos los módulos que se pueden utilizar para explotar vulnerabilidades. Estos van desde exploits de denegación de servicio que bloquean un servicio hasta exploits de ejecución remota de código que permiten a un atacante ejecutar código arbitrario en el sistema de destino.

3. Cargas útiles: las cargas útiles se pueden utilizar en exploits para ejecutar código y establecer una conexión entre el atacante y el sistema objetivo. Esto generalmente se hace a través de un shell. La carga útil se puede usar para controlar qué tipo de caparazón se usa y cómo. Hay dos distinciones básicas:

3.1 Carga útil por etapas o no por etapas

Para algunos exploits, el tamaño de la carga útil utilizable está muy limitado. Esto puede significar que se debe utilizar una carga útil por etapas. Con este tipo, solo se transmite una pequeña parte del código (programador) al sistema de destino, a través del cual se establece una conexión con el atacante. A partir de ahí, se reciben y ejecutan más cargas útiles (etapa).

Las cargas útiles no escalonadas, por otro lado, contienen el código completo que es necesario. Por tanto, son más grandes, pero al mismo tiempo más estables, es decir, funcionan de forma más fiable porque no hay más dependencias.

Los dos tipos diferentes se pueden reconocer por el nombre del módulo. Las cargas útiles escalonadas contienen un «/» adicional, mientras que las cargas útiles no escalonadas tienen un guión bajo «_» en el lugar correspondiente.

Ejemplos: En
etapas: windows / x64 / shell / reverse_tcp
No en etapas: windows / x64 / shell_reverse_tcp

3.2 Vincular o invertir shells

Cuando se utiliza un shell de enlace, se inicia un servicio en el sistema de destino que escucha en un puerto específico. El atacante luego usa este puerto para establecer una conexión con este sistema.

Dependiendo de la configuración del sistema de destino, los cortafuegos bloquean el tráfico de red entrante para que no se pueda establecer la conexión a través de un shell de enlace. Si el atacante y el sistema de destino no están en la misma red, también es posible que la dirección IP (privada) y los puertos del sistema de destino sean cambiados por NAT, lo que también evita el uso del shell de enlace.

Si, por otro lado, se selecciona un shell inverso, se inicia un servicio en el dispositivo del atacante que escucha en un puerto específico. Luego, el sistema de destino se conecta allí.

Ejemplos:
Bind Shell: windows / x64 / shell_bind_tcp
Reverse Shell: windows / x64 / shell_reverse_tcp

 

nmap

Se incluyen varios escáneres de puertos como módulos auxiliares en Metasploit Framework. Sin embargo, estos ofrecen solo algunas opciones de configuración y solo determinan si los puertos están abiertos. Por el contrario, con un escaneo con nmap, se pueden establecer más configuraciones para la ejecución y se puede obtener mucha más información.

Por ejemplo, hay opciones disponibles para ajustar la velocidad del escaneo y tomar contramedidas para una posible detección por parte de un firewall. Además, nmap no solo puede determinar qué puertos están abiertos, sino también qué servicio se puede alcanzar a través de un puerto y qué versión del software subyacente es.

Ejemplo de aplicación

A continuación, consideramos un ejemplo de aplicación simple, que veremos paso a paso.

Nuestro escenario es el siguiente:

  1. Máquina vulnerable: IP 192.168.2.133
  2. Kali-Linux con Metasploit Framework y nmap instalados: IP 192.168.2.132

La máquina vulnerable es Metasploitable 2, una máquina virtual intencionalmente vulnerable que se puede usar para probar herramientas como Metasploit Framework. Estas y otras máquinas vulnerables se pueden descargar de forma gratuita desde VulnHub, entre otras . Rapid7 ahora también ha desarrollado una tercera versión actualizada de Metasploitable, que también puede obtener aquí de forma gratuita.

Paso 1: Portscan con nmap

Por lo general, se lleva a cabo un escaneo de puertos para determinar a qué servicios de un sistema de TI se puede acceder externamente y, por lo tanto, potencialmente explotables. Dado que Metasploitable tiene una gran cantidad de puertos abiertos, para una mejor visión general, solo escaneamos el puerto 6667 usando el parámetro » -p» , en el que está escuchando un demonio IRC. Sin especificar este parámetro, nmap verifica los 1000 puertos más populares .

Dado que solo estamos verificando un puerto, la configuración de la velocidad de escaneo es insignificante. No obstante , a modo de ilustración, hemos especificado un ajuste con » -T4 « . En principio, nmap ofrece la posibilidad de utilizar estas plantillas predefinidas con valores de «T0» (lento) a » T5″ (rápido), o realizar ajustes individuales.

Con el parámetro «-A « nmap intenta reconocer el sistema operativo y determinar información sobre las versiones del software determinado.

Con la ayuda de una breve búsqueda en Internet con el texto de búsqueda » unreal 3.2.8.1 metasploit «, puede descubrir rápidamente que hay un módulo de explotación adecuado en el marco de Metasploit que le da a un atacante acceso al sistema de destino.

Paso 2: explotar

Dado que ahora sabemos que la versión del demonio UnrealIRC utilizada en el sistema de destino es vulnerable, podemos buscar el exploit apropiado en Metasploit Framework. Metasploit Framework es una aplicación de consola y se inicia con el comando msfconsole .

Gracias a los resultados de nuestra búsqueda en Internet, podemos seleccionar directamente nuestro exploit con » use  e xploit / unix / irc / unreal_ircd_3281_backdoor» .

Alternativamente, los módulos se pueden buscar por palabras clave usando el comando » buscar» . Si un módulo adecuado se encuentra entre los resultados de la búsqueda, también se selecciona mediante el comando » usar» .

Si se ha seleccionado un exploit, todas las cargas útiles disponibles para el exploit seleccionado se pueden mostrar a través de » mostrar cargas útiles «. La carga útil deseada se selecciona con el comando » set» .

También se pueden configurar más opciones en un módulo. El comando » mostrar opciones » muestra todas las opciones de configuración. La instrucción establecida se puede utilizar para ajustar los distintos valores. Configuramos la dirección IP del sistema de destino usando el comando » set RHOSTS 192.168.2.133 «. Como estamos usando un shell inverso, también tenemos que configurar la dirección IP del sistema atacante como » LHOST «.

Luego ejecutamos el exploit con el comando » ejecutar «.

Comandos usados ​​

Resumen y notas

El escenario que se muestra aquí está idealizado y solo sirve para ilustrar las posibilidades que ofrecen herramientas como Metasploit Framework y nmap. En su red, debe decidir individualmente qué comandos y opciones utilizar. Tenga en cuenta también que una autocomprobación de este tipo no sustituye a una verificación de seguridad externa y profesional. Sin embargo, puede servir como punto de partida para encontrar algunos agujeros de seguridad graves en la red antes de que otros lo hagan.

Enlace: https://www.gdata.de/blog/2021/05/36787-einfache-sicherheitstests-selbst-durchfuehren-mit-dem-metasploit-framework-und-nmap Blog de G DATA