saber: pack de metodologia publico (conocimiento/) + doc del RAG

El repo trae ahora ~73 docs de metodologia de pentesting (estilo OSCP,
scrubeados de datos personales) que indexa.py indexa: un clon recien hecho ya
sabe de enumeracion, explotacion web, shells, privesc, Active Directory,
cracking... con los comandos, sin ningun dato privado. docs/rag.md lo refleja.
This commit is contained in:
sito 2026-08-16 17:58:41 +02:00
parent 12987539a4
commit 7e06ce46cf
76 changed files with 2682 additions and 8 deletions

View file

@ -0,0 +1,30 @@
# Enumeración web
> Puertos 80/443/8080. El vector web es el foothold más común en standalones. Parte de Enumeración.
> Para la **metodología de ataque** (qué probar en cada input) ve a Hacking web; aquí solo enumeras.
## Primero, lo manual
```
Ctrl+U siempre → comentarios con creds, paths, endpoints
JS embebidos → APIs ocultas (LinkFinder, JSparser)
robots.txt → perezoso; mira también:
sitemap.xml, .git/, .svn/, .htaccess, .DS_Store,
backup/, old/, dev/, test/, admin/
```
## Fuzzing de contenido
Brute force de rutas/ficheros con gobuster/feroxbuster/ffuf → nota dedicada: Content discovery.
- Hostnames/vhosts → Vhosts y subdominios.
- Intercepta y manipula todo con Burp Suite.
## Identificar
```bash
whatweb http://IP
nikto -h http://IP
```
CMS detectado → `wpscan`, `cmsmap`, `searchsploit <cms>`.
## Vectores típicos
Todos en Hacking web: SQL injection · Command injection · Directory traversal · LFI a RCE · File upload bypass · XSS · SSTI · Authentication attacks.
Relacionado: Content discovery · Trampas de enumeración · Recursos públicos · OSCP MOC

View file

@ -0,0 +1,24 @@
# Enumeración (índice)
> "Enumeración exhaustiva" es el paso 1 de la Metodología OSCP y donde más gente pierde horas.
> La mayoría de los fallos del examen son enumeración incompleta, no falta de técnica.
## Flujo
1. **Mi IP / red**`ip a | grep "inet "` (el 3er octeto del lab **cambia** al reiniciar).
2. **Descubrimiento de hosts** → ping/ARP sweep (Nmap).
3. **Escaneo de puertos** → top-1000 **y** `-p-` completo (Puertos olvidados).
4. **Por servicio**:
- 445 → SMB
- UDP 161 → SNMP
- 80/443 → Enumeración web + Content discovery + Hacking web
- 3389 → RDP
- texto plano (!OS-57179836-OSCP.ovpn25, 110...) → Netcat
1. **Scripts NSE** → Nmap NSE (`-sCV`, `--script vuln`).
2. **Versión + exploits**`nmap -sV` → searchsploit.
## No olvides
- Trampas de enumeración (UDP, puertos altos, vhosts, wordlists pequeñas).
- Automatiza con Bucles bash sobre IPs.
- La web es su propio mundo → Hacking web.
Relacionado: Operadores Bash · OSCP MOC

View file

@ -0,0 +1,21 @@
# Netcat (recon)
> Solo para protocolos de **texto**: SMTP, HTTP, POP3... Para shells ver Reverse shell y Egress filtering.
## Conexión y escaneo
```bash
nc -nv IP PUERTO # interactivo (host y puerto con ESPACIO, NO ":")
nc -nvz IP 1-1000 # modo scan (-z): solo comprueba si abre
nc -nvz -u IP 161 # UDP (poco fiable → mejor SNMP dedicado)
```
- **OJO**: `nc IP:PUERTO` = MAL. `-p` es puerto **origen**, no destino.
- SNMP/SMB/DNS son **binarios** → netcat NO sirve, usa la herramienta dedicada.
## SMTP a mano (enumerar usuarios)
```bash
nc -nv IP 25
VRFY root # 250 existe / 252 Postfix no confirma / 550 no existe
QUIT
```
Relacionado: Operadores Bash · Enumeración · OSCP MOC

View file

@ -0,0 +1,41 @@
# Nmap NSE (scripts)
> El motor de scripts de Nmap: enumeración profunda y detección de vulns sin herramientas extra. Scripts en `/usr/share/nmap/scripts/`.
## El comando que usas siempre
```bash
sudo nmap -sCV -p- IP # -sCV = -sC (scripts default) + -sV (versión)
# patrón real de tu history_contabo.txt:
nmap IP -p- -Pn --min-rate 5000 -vvv -n --open # rápido todos los puertos
nmap -p- localhost -sCV # luego versión+scripts sobre lo abierto
```
Flujo típico: 1) `-p- --open` rápido para ver QUÉ abre → 2) `-sCV` dirigido a esos puertos.
## Categorías de scripts
```
default (-sC) los seguros y útiles por defecto
vuln comprueba vulnerabilidades conocidas
safe / auth no intrusivos / temas de autenticación
brute fuerza bruta de credenciales
discovery enumeración (snmp, smb, http...)
```
## Por servicio (muy rentable)
```bash
nmap -p80,443 --script http-enum,http-title,http-headers IP # web → Enumeración web
nmap -p445 --script smb-os-discovery,smb-enum-shares,smb-enum-users IP # SMB
nmap -p161 -sU --script snmp-info IP # SNMP
nmap -p21 --script ftp-anon IP # FTP anónimo
nmap --script vuln IP # barrido de vulns
```
## Gestionar scripts
```bash
nmap --script-help http-enum # qué hace un script
ls /usr/share/nmap/scripts | grep smb # listar los disponibles
```
## A través de un túnel
`proxychains nmap ...` (de tu history) para escanear la red interna tras Pivoting ligolo-ng (usa `-sT -Pn`, SYN no pasa por proxychains).
Relacionado: searchsploit · Puertos olvidados · OSCP MOC

View file

@ -0,0 +1,38 @@
# Nmap
> `-sS` = TCP SYN · `-sU` = UDP · `-sV` = versión. Parte de Enumeración.
## Descubrimiento de hosts
```bash
sudo nmap -sn 192.168.X.0/24 # ping sweep: quién está vivo
sudo nmap -sn -PR 192.168.X.0/24 # ARP (LAN, el más fiable)
sudo nmap -sn -PS21,22,25,80,445 IP/24 # TCP discovery si ICMP filtrado
```
## Escaneo de puertos
```bash
sudo nmap -sS 192.168.X.0/24 -oG full.txt # SYN top-1000, greppable
sudo nmap -p- -Pn --min-rate 5000 -n --open IP # TODOS los 65535, solo abiertos → Puertos olvidados
sudo nmap -sU --top-ports 50 -T4 IP # UDP (SNMP/TFTP/NTP)
sudo nmap -sCV -p 22,80,445 IP # versión + scripts default → Nmap NSE
sudo nmap -p80 --script vuln IP # NSE de vulnerabilidades
```
## El combo de dos pasos (patrón real)
```bash
nmap -p- -Pn --min-rate 5000 -n --open IP # 1) rápido: ¿qué puertos abren?
nmap -sCV -p 22,80,445 IP # 2) dirigido: versión+scripts sobre esos
```
`-sCV` = `-sC` (scripts default) + `-sV` (versión). Luego `searchsploit` por versión → searchsploit.
## Salida
- `-oN` normal (legible, los NSE salen aquí) · `-oG` greppable (1 línea/host, ideal `grep`) · `-oA` los 3.
- Greppeo de resultados → Bucles bash sobre IPs.
## Trampas
- El top-1000 **ya** incluye 80/443/22/445. Si `grep` no saca nada y el scan cubría el puerto → **la máquina no está viva**, no es el scan.
- `filtered ≠ open` (firewall/sin respuesta).
- `-Pn` en un /24 = ruido (256 hosts "up" falsos). `-Pn` es para **1 host concreto**.
- Confusión clásica: **SNMP = UDP/161 (`-sU`)**, **SMTP = TCP/25 (`-sS`)**.
Relacionado: Nmap NSE · searchsploit · Trampas de enumeración · SMB · OSCP MOC

View file

@ -0,0 +1,21 @@
# Puertos olvidados
> Donde la gente pierde 4 horas: escanear solo el top-1000 TCP. Parte de Trampas de enumeración.
## UDP (casi siempre olvidado)
```bash
nmap -sU --top-ports 50 -T4 IP
```
- **SNMP (161)**, TFTP (69), NTP (123) suelen dar oro → ver SNMP.
## Puertos altos TCP
```bash
nmap -p- --min-rate=5000 IP # los 65535, no solo top-1000
```
- Servicios escondidos en puertos raros (8080, 50000+...).
## Por qué importa
- Nmap por defecto escanea **solo top-1000 TCP**. Un servicio vulnerable en el 54321 es invisible si no haces `-p-`.
- Regla: **siempre** un `-p-` completo además del rápido.
Relacionado: Nmap · Enumeración · OSCP MOC

View file

@ -0,0 +1,16 @@
# RDP
> Escritorio remoto Windows (3389). **Acceso legítimo** con credenciales: no necesita Reverse shell.
```bash
xfreerdp /u:student /p:lab /v:IP /cert:ignore /clipboard
xfreerdp3 ... # si la versión nueva
```
- `/clipboard` = **copiar-pegar entre Kali y Windows** (clave para subir scripts/payloads).
- `/cert:ignore` = no protestar por el certificado del lab.
## Cuándo
- Cuando consigues credenciales válidas (reutilización, Mimikatz, GPP cpassword) y la máquina expone 3389.
- GUI cómoda para Privesc Windows y para ejecutar PEASS-ng.
Relacionado: SMB · Movimiento lateral · OSCP MOC

View file

@ -0,0 +1,30 @@
# SMB
> Puerto **445** — oro en Active Directory. Parte de Enumeración.
## Listar shares y usuarios
```bash
smbclient -L //IP/ -N # shares con sesión nula (OJO: trunca comentarios)
smbclient //IP/share -N # entrar (ls, get, !cat)
smbclient -L //IP/ -U usuario # con credenciales
rpcclient -U "" -N IP -c "netshareenumall" # shares + remark COMPLETO (no trunca)
rpcclient -U "" -N IP -c "enumdomusers" # usuarios de dominio (SAM)
enum4linux -a IP # TODO (pilla users UNIX locales por RID cycling)
nxc smb IP -u '' -p '' --shares --users # NetExec (sucesor de CrackMapExec)
```
## Desde Windows
```cmd
net view \\dc01 /all :: shares incl. ocultos. Admin shares: ADMIN$, C$, IPC$
```
## Trampas
- `smbclient -L` **trunca** comentarios → usa `rpcclient netshareenumall` para el `remark` completo.
- Usuarios UNIX locales (`S-1-22-1`) solo los pilla `enum4linux -a` (RID cycling), **no** `enumdomusers`.
- Automatiza la red entera con Bucles bash sobre IPs.
## Sesión nula → siguiente paso
Usuarios válidos → AS-REP Roasting, Kerberoasting, spraying (Pass-the-Hash).
Shares con `Groups.xml` → GPP cpassword.
Relacionado: SNMP · Active Directory · OSCP MOC

View file

@ -0,0 +1,23 @@
# SNMP
> Puerto **UDP 161** (Simple Network Management Protocol). Recuérdalo: es **UDP** (`nmap -sU`), no TCP. Parte de Puertos olvidados.
## Herramientas
```bash
onesixtyone -c comm.txt IP/24 # descubre SNMP + fuerza community a la vez
snmpwalk -v2c -c public IP OID # recorre el árbol de OIDs
snmp-check IP -c public # enumeración bonita y ordenada
snmpwalk -v2c -c public -Oa IP OID # -Oa = traduce hex a ASCII
```
## OIDs útiles (numéricos, no dependen de MIBs instalados)
```
1.3.6.1.2.1.25.4.2.1.2 Procesos en ejecución (hrSWRunName)
1.3.6.1.2.1.25.6.3.1.2 Software instalado
1.3.6.1.2.1.2.2.1.2 Nombres de interfaces de red (ifDescr)
1.3.6.1.4.1.77.1.2.25 Usuarios Windows
```
- OID = dirección jerárquica: `iso(1).org(3).dod(6).internet(1)...`
- Prefijo `1.3.6.1.2.1` (mib-2) es fijo; cambian los números del final.
Relacionado: Nmap · SMB · Enumeración · OSCP MOC

View file

@ -0,0 +1,21 @@
# Trampas de enumeración
> Donde la gente pierde 4 horas. Anti-rabbit-hole. Conecta con Gestión del tiempo.
## El catálogo
- **Olvidar UDP** → SNMP (161), TFTP, NTP. Ver Puertos olvidados.
- **Olvidar puertos altos**`nmap -p- --min-rate=5000`. Ver Puertos olvidados.
- **Olvidar vhosts/subdominios** → Vhosts y subdominios.
- **`/etc/hosts` no actualizado** → añade el dominio en cuanto aparezca.
- **Wordlists pequeñas**`common.txt` es junior; usa `raft-large` / `directory-list-2.3-medium`.
## Trampas que cuestan horas (del lab real)
- **IP del lab dinámica**: el 3er octeto cambia al reiniciar (`.55 .65 .67...`). Haz `ip a` **antes** de escanear.
- `filtered ≠ open` (firewall/sin respuesta).
- `-Pn` en /24 = 256 "up" falsos. Úsalo solo en **1 host**.
- Si `grep` no saca nada y el scan cubría el puerto → **la máquina no está viva**.
- **SNMP=UDP/161**, **SMTP=TCP/25**. No confundir.
- `smbclient -L` **trunca** comentarios → usa `rpcclient netshareenumall` (SMB).
- Flags placeholder tipo `OS{0123456789abcdef}` = **señuelo** (grupo/recurso equivocado).
Relacionado: Nmap · Enumeración · Metodología OSCP · OSCP MOC

View file

@ -0,0 +1,21 @@
# Vhosts y subdominios
> Si te encuentras una "default Apache page", probablemente hay **virtual hosts** ocultos. Parte de Trampas de enumeración.
## Fuzzear vhosts
```bash
gobuster vhost -u http://IP -w /usr/share/seclists/Discovery/DNS/...
ffuf -H "Host: FUZZ.objetivo.htb" -u http://IP
```
## /etc/hosts
- Si la web carga rara o redirige, mira el header `Host:`.
- **Añade el dominio a `/etc/hosts` SIEMPRE** que aparezca un hostname.
## HTTPS revela hostnames
```bash
openssl s_client -connect IP:443
```
- El **certificado** te puede chivar el dominio real (CN / SAN).
Relacionado: Enumeración web · Nmap · OSCP MOC

View file

@ -0,0 +1,38 @@
# searchsploit
> Buscador **offline** de Exploit-DB. El puente entre `nmap -sV` y la explotación. Copia local en `tu carpeta` (symlink en `tu carpeta`).
## El workflow OSCP
```
Nmap -sV → identificas servicio + VERSIÓN → searchsploit → explotas
```
Sustituye a los escáneres de vulns prohibidos (Reglas de herramientas).
## Buscar
```bash
searchsploit apache 2.4.49 # servicio + versión EXACTA
searchsploit -t wordpress # -t = solo en el título (menos ruido)
searchsploit "vsftpd 2.3.4"
searchsploit --nmap scan.xml # ¡toma un nmap -oX y busca por ti!
```
- Quita la versión si no sale nada (a veces el exploit es genérico).
- Usa términos cortos: `searchsploit drupal` mejor que la cadena entera.
## Examinar y copiar
```bash
searchsploit -x 50383 # ver el exploit (path por EDB-ID)
searchsploit -m 50383 # MIRROR: lo copia a tu carpeta actual
searchsploit -p 50383 # solo imprime la ruta
searchsploit -u # actualizar la base
```
## Antes de lanzar un exploit (¡importante!)
1. **Léelo entero.** Hay PoCs **maliciosos/falsos** que te hackean a ti.
2. Edita lo obvio: IP/puerto del atacante, offsets, URL objetivo, shellcode.
3. Si es C: `gcc exploit.c -o exploit` (a veces flags raras, vienen en el comentario).
4. Si es Python2 antiguo, ojo con `print`/sockets.
## Después
RCE → Reverse shell. Si es local privesc → mira primero PEASS-ng y Privesc Linux / Privesc Windows (kernel exploit = último recurso).
Relacionado: Exploits conocidos · Nmap NSE · Enumeración · OSCP MOC