Curso Hacking de redes Wi-Fi
* preliminares al curso
Cracking de contraseñas
- Contraseñas – por ejemplo de la compu – se guardan en hashes (no en texto plano)
o Si una persona tiene acceso a uno hash, tiene que crackear el hash
o Para crackear se pueden usar dos formas: fuerza bruta o diccionario
- Un diccionario es un listado de palabras – un archivo .txt con palabras separadas (generalmente por un guión
bajo)
- Se utiliza una herramienta para validar la contraseña dentro del diccionario
o Una de estas herramientas se llama hashcat
o Esta herramienta convierte la palabra del diccionario en el hash NTLM (tipo de hash) que utiliza la
contraseña
Proceso desde Windows
- Primero hay que obtener hashes para crackear – en este caso, hay un documento con como 1203 contraseñas
- Revisar en el manual de hashcat si el tipo de hash es utilizable
o Para esto en el PowerShell utilizar: .\hashcat --help
- Después abrir el tipo de módulo y seleccionar el archivo donde se encuentran los hashes
- También seleccionar el diccionario que vamos a utilizar
o PS F:\CRACKING DE CONTRASENAS\hashcat-6.2.4> .\hashcat.exe – 1000 .\hashes\hashesNTLM.txt ..\..\
CARPETADICCIONARIOS\rockyou.txt
- Una vez listo esto el programa rompe las contraseñas
- Esta es una manera muy básica de hacer esto – hay como agregar reglas y con reglas es más eficiente para
romper más contraseñas
Existen muchos tipos de hashes o cifrados
- Para contraseñas MD5 (en este caso se utilizó el módulo 0) – se demoró como 5 segundos
- Para SHA256 con el módulo 7400 – para probar todo el diccionario 29 minutos
- Mientas más complejo el cifrado, más tiempo para romperle
Como verificar Filtraciones de Datos
- haveibeenpwned.com
Foodprinting básico y Análisis de Vulnerabilidades
Guía para footprinting – revisar huellas de personas u organizaciones
- identificar el objetivo, recopilar información pública, realizar escaneos de puertos, identificar servicios y sistemas
operativos, identificar vulnerabilidades, realizar pruebas de conexión y autenticación
o identificar el objetivo: confirmar que el ip entregado sea de la empresa que autorizó
o recopilar info pública – a través de Google hacking y otras páginas públicas, correos del dominio
([email protected]), documentos cargados erróneamente
o realizar escaneos de puertos, servicios, vulnerabilidades y pruebas son interactuando directamente con
la empresa
como reconocer una vulnerabilidad?
- Las vulnerabilidades pueden presentarse en diferentes formas como errores en el diseño del software,
configuraciones inseguras, debilidades en la autenticación o encriptación de datos entre otras
o Comparar los servicios y las versiones con la base de datos de vulnerabilidades, realizar pentesting,
evaluar las configuraciones de seguridad, analizar la información sensible
Footprinting
- Herramientas: Maltego y todo en un virtualbox basado en ubunto – Trace Labs (Kali es más usado aquí)
- Usa transformadas (scripts) que revisan información pública
- Arrastrar maltego y poner el dominio que quieres ver
-
- Poner click derecho – all transforms – poner el rango de fechas para buscar
Webinar 3 – herramientas principales de un hacker ético
Fases del Ethical Hacking
- Reconocimiento (activo vs pasivo)
- Escaneo y enumeración (Nmap, Nessus, wpscan, etc)
- Explotación (metasploit, Método manual)
- Mantener acceso (backdoors, creación de usuarios)
- Borrar Rastros
NMAP
- Navaja suiza (todo en uno)
- Escaneo de host en una red
- Escaño de puertos abiertos y detección de versiones de servicios
- Determinar sistemas operativos
- Escaneos avanzados
Metasploit
- Framework para pentesting/hacking etici
- Herrramienta de explotación y validación de vulnerabilidades
- Multiples modulos y utilidades para pivoting, escalada de privilegios, extracción de contraseñas, etc,
Hashcat y John the Ripper
- Herramientas para cracking de contraseñas
o Fuerza bruta
o Diccionarios
o Reglas
- Cracking de cientos de algoritmos
NMAP
- Para manual de uso: man nmap
- Para resumen: nmap –help
- Escaneo de vulnerabilidades en una red – hay que saber cual es la red
o Ifconfig
o Esto es para la dirección de red (el ip)
- Para hacer pentesting hay que estar conectado a la red (para hacking ético interno)
- Para revisar: Host Discovery (-sn y el ip, si el ping no responde es porque el equipo está activo)
-
- Comando echo es para imprimir algo en pantalla
o Hay como guardar lo que se escribe en un archivo
o Para hacer un salto de línea es \n
o echo “192.168.190.133\n192.168.190.187\n192.168.190.185” >txt
- para escanear: nmap 192.168.190.133 192.168.190.187 – etc las ips
- al hacer este análisis aparecen los servicios con los puertos – aparecen incompletos porque solo son puertos
abiertos
o 65535 puertos siempre en cada maquina y queremos revisar e investigar todos los puertos
- PORT SPECIFICATION AND SCAN ORDER
o Hay como -p <port ranges> - solo para puertos específicos
o También hay como escanear un solo puerto especifico
- nmap 192.168.190.133 192.168.190.187 192.168.190.185 -p- (es para escanear todos los puertos)
o Escaneo se demora más
- OUTPUT usar -v (se llama verbosity)
o Esto se utiliza para que mientras va escaneando vaya en señando la información
o nmap 192.168.190.133 -v -p-
o con esto ya hay como ir viendo que hace cada puerto
- también queremos ver la versión especifica que esta usando – para eso se usa el siguiente parámetro -sV
o nmap 192.168.190.133 -v -p- -sV
o
o Ya sabemos que esta usando un RedHat Linux y ver si esto tiene alguna vulnerabilidad (en Google)
Apache httpd 1.3.20 vulnerabilities
o Samba no dice la versión asi que no podemos googlear
- msfconsole = metasploit
o es modulo para crackear pero también para buscar versiones
- al abrir msfconsole se abre un framework de metasploit
-
- Para usar el modulo auxiliar hay que llamar el modulo
-
- Uan vez abierto ver opciones (y en este caso pide settear dirección ip)
-
- Una vez abierta hay que exploit
-
- Ahí si aparece la versión de samba y ver el exploit de eso en Google
- Existe un exploit: trans2open
- Abrir opciones y llamar al nuevo modulo
-
- Se aplica el exploit y busca la vulnerabilidad
-
- Para un remote code execution – manera de hacer ataque
o Con el puerto 4444 en este caso
- nc -lvp: listenting, verbosity y port
o una vez que esté conectado después de listening
- El exploit puede fallar si el payload está mal configurado
o Show los payloads y hay como tratar con todos o con la categoría investigada
-
o Con esto se cambia en payload
-
o Si el command Shell es opened significa que estoy conectado al otro equipo y así hay como tener control
total sobre el equipo
Ahora para un exploit de maquina Windows
- nmap 192.168.190.187 -A
o este escaneo es más agresivo y puede colapsar una red en pentesting real
o causa más tráfico en la red
o hace varios parámetros al tiempo
Reto OSINTOR JR – Técnicas de Investigación y confidencialidad en fuentes públicas
- técnicas de investigación y confidencialidad en páginas públicas
Tips para aprender hacking ético y conseguir trabajo
- busquen un entrenamiento paso a paso con una metodología aprobada y con un profesor que domine el tema
- no te asustes sino tienes todas las bases porque las puedes aprender en el camino
- busquen un Mentor y una comunidad
- aprende mediante maquinas al estilo CTF (Capture the Flag)
- Añadan todo lo que aprendan a su hoja de vida
- Ser persistentes con estudio porque sí se logra
El caso
- Contrataron para investigar un individuo que podría estar involucrada en acos cibercriminales
Pasos
- Reconocimiento (activo y pasivo)
- Escaneo y Enumeración (Nmap, Nessus, Nikto y tomar nota de todo)
- Ganar acceso (explotación)
- Mantener Acceso (persistencia en el acceso: abrir backdoor, dejar malware, etc)
- Borrar rastros (borrar accesos de explotación y accesos)
Notas iniciales
- Importante utilizar cuentas falsas
o Fakenamegenerator.com
- Para crear imágenes de una persona que no existe
o This person does not exist – AI crea caras falsas
- Crear una tarjeta de credito virtual (que funciona) – privacy.com (funciona solo en estados unidos en este caso)
- Bugcrowd.com – empresas de bug bounty donde otras empresas pagan por vulnerabilidades
Hay tipos de vulnerabilidades
- Remote Code Execution – tipo de vulnerabilidad muy grave
Comenzando con la investigación
- Google hacking – googlear la persona
Palabra Clave 1: Jaime Duque
Palabra Clave 2: Pedro123 (PEDRO123)
Palabra Clave 3: Malava - MALAVA
Clase 2: Reto Mr Inyector – Enumeración de información sensible en bases de datos con TryHackMe
- Enumeración de información sensible en bases de datos con TryHackMe
o Pentesting y tipos de pentesting = preguntar a ChatGPT
- Caso: base de datos de organización YZ fue comprometida por grupo ciberdelincuente
y contratan para encontrar el hueco de seguridad y como corregir
o Que es una base de datos, sentencias SQL, uso de SQLi o Inyección SQL
- Vamos a revisar:
o Conceptos básicos
o SQLi basado en un error (error de sintaxis)
o Preparar el ataque
- Herramientas
o sqlmap -u ‘http://…’ (esto va en Kali)
-u es para un URL objetivo
Conceptos básicos
- Una base de datos se encarga de almacenar datos y conectarlos entre si para una unidad lógica
-
- Los pasos para que funcione la inyección SQL
-
- Tener en cuenta que las bases de datos importantes son System y el nombre
o Cada base de datos tiene información distinta
-
White Hat Hacking o suplantación de identidad para el pentesting en Active Directory (dominio)
- Usar ChatGPT para crear una herramienta de hacking
- Equipo blue y equipo red de ciberseguridad en una empresa
o El equipo blue es preventivo
o El equipo red es el que ataca y busca por donde explotar
o Esto se puede hacer con el equipo blue poniendo alertas si encuentran cierta actividad
- https://attack.mitre.org/techniques/T1087/002/
o Tacticas que ciberdelincuentes pueden utilizar – tácticas utilizadas antes, maneras de mitigar y detectar
o
o Comandos que llaman la atención para que un usuario normal use
Certificaciones
Active Directory
- Servicio de directorio desarrollado por Microsoft para administrar redes de dominio de Windows
- Almacena información relacionana a objectos tales como computadoras, usuarios, impresoras
o Es como guía telefónica de Windows
- Se autentica mediante tickets Kerberos
o Dispositivos que no son Windows (como maquinas Linux, firewalls) también pueden autenticarse en
Active Directory a través de RADIUS o LDAP
- Domain Controller (DC) – servidor Windows que maneja el directorio donde están conectados todo el resto de
equipos
Comando para uso de Blood Hound – usuarios de dominio y manera mas fácil de controlar todo un sistema con interfaz
grafica
- Shortest paths para ser administrador de dominio
ChatGPT
- Herramienta en Python para fuerza bruta en SSH
-