Basado en las mejores prácticas de este repositorio (especialmente la Práctica 8, calificada con excelencia), esta guía define los estándares de calidad esperados para la documentación de ejercicios de ciberseguridad.
Un buen informe no es solo una lista de comandos; debe contar una historia técnica coherente.
Ejemplo:
| Apellido, Nombre | Cédula | Nro. Práctica | Fecha |
| --- | --- | --- | --- |
| Gil, Jesús | 30175126 | 8 | 14-11-2025 |
No basta con mostrar el comando; hay que explicarlo. La documentación técnica debe ser educativa.
No solo presentes el comando; explica cada componente:
# ❌ INCORRECTO (sin explicación)
find / -perm -4000 -type f 2>/dev/null
# ✅ CORRECTO (con desglose detallado)
find / -perm -4000 -type f 2>/dev/null
La explicación debe incluir:
find /: Inicia búsqueda desde la raíz del sistema-perm -4000: Busca archivos con bit SUID (4000 en octal = Set User ID)-type f: Limita a archivos regulares (no directorios)2>/dev/null: Redirige errores a null para limpiar la salidaSiempre define la vulnerabilidad antes de explotarla:
Ejemplo:
SUID (Set User ID): Permiso especial en Unix que permite ejecutar archivos con privilegios del propietario (usualmente root). Es crítico porque un usuario limitado puede escalar privilegios ejecutando binarios SUID mal configurados. Esto constituye una vulnerabilidad Local Privilege Escalation (LPE).
Cada acción exitosa debe ser probada irrefutablemente. Esto es crítico en pentesting profesional.
Después de cada paso importante, valida el estado actual:
# Verificar usuario/privilegios
whoami # Muestra usuario actual
id # Muestra UID, GID y grupos
sudo -l # Verifica permisos sudo
# Verificar conectividad
ping -c 4 [IP] # Prueba conexión a red objetivo
ifconfig # Muestra configuración de red
netstat -tuln # Muestra puertos abiertos
# Verificar acceso a archivos
ls -la /root # Verifica acceso a directorios críticos
cat /etc/passwd # Verifica lectura de archivos sensibles
En ejercicios de explotación, crea archivos de prueba irrefutables:
# Después de escalar a root
echo "Root obtenido vía [técnica] - Equipo 4" > /root/evidencia_privesc_equipo4.txt
date >> /root/evidencia_privesc_equipo4.txt
id >> /root/evidencia_privesc_equipo4.txt
# Verificar la evidencia
cat /root/evidencia_privesc_equipo4.txt
Importante: La evidencia debe:
Nunca confíes solo en la salida de pantalla. Guarda todo en archivos para análisis posterior:
# Redirigir salida a archivos
nmap -sV -p- 192.168.100.20 > reporte_nmap_completo.txt
sqlmap -u "http://target/page?id=1" --dbs > sqlmap_bases_datos.txt
find / -perm -4000 -type f 2>/dev/null > suid_binaries.txt
# Combinar errores y salida correcta
command > salida_completa.txt 2>&1
# Redireccionar solo errores
command 2> solo_errores.txt
Beneficios:
grepTodas las capturas deben ser profesionales y bien documentadas:
Ejemplo de buen pie de foto:
Figura 5: Salida del comando
whoamitras escalar privilegios. Se confirma acceso como usuario root (UID=0), demostrando escalada exitosa desde msfadmin.
Para conservar el repositorio ligero y mantener un historial limpio, recomendamos almacenar las capturas en un CDN o servicio de alojamiento de imágenes públicos/privados (por ejemplo: Imgur, Cloudinary, AWS S3, GitHub Releases) y enlazarlas en el informe en vez de subirlas directamente al árbol de Git.
# Instalar Git LFS
git lfs install
# Registrar extensión a trackear (ej. png/jpg)
git lfs track "*.png"
git lfs track "*.jpg"
# Agregar las reglas y las imágenes
git add .gitattributes
git add images/practica8_nmap_20251114.png
git commit -m "Agregar captura práctica 8 (via Git LFS)"
git push origin main
Practica8_Equipo4_nmap_20251114.png (formato ISO YYYYMMDD) para facilitar búsqueda y trazabilidad.images/ en el repo (o un bucket específico) con la estructura por práctica.alt/pie de foto descriptivo.
*Figura X: Resultado del escaneo Nmap – resumen del puerto y versión detectada.*
De esta manera, mantendrás las evidencias accesibles y el repositorio en un estado óptimo para colaboradores.
Usa tablas estructuradas para resumir vulnerabilidades encontradas:
| # | Vulnerabilidad | Impacto | Severidad | Solución Técnica | CVE |
|---|---|---|---|---|---|
| 1 | SUID en /usr/bin/nmap | Local Privilege Escalation | 🔴 Crítica | Remover bit SUID o eliminar binario innecesario | CVE-2008-1081 |
| 2 | SQL Injection en login.php | Bypass autenticación, acceso BD | 🔴 Crítica | Usar prepared statements, validar entrada | CWE-89 |
| 3 | Headers de seguridad faltantes | XSS, Clickjacking, MIME sniffing | 🟡 Alta | Configurar CSP, X-Frame-Options, HSTS | CWE-693 |
No basta decir “corregir”; propón soluciones implementables:
Remediación del SUID:
# Opción 1: Remover bit SUID
sudo chmod u-s /usr/bin/nmap
# Opción 2: Eliminar binario si no es necesario
sudo rm /usr/bin/nmap
# Opción 3: Ejecutar solo con permiso explícito
sudo usermod -a -G nmap usuario_especifico
Remediación de SQL Injection:
// ❌ VULNERABLE
$query = "SELECT * FROM users WHERE id = " . $_GET['id'];
// ✅ SEGURO (Prepared Statement)
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$_GET['id']]);
Remediación de Headers de Seguridad (Apache):
# Agregar a /etc/apache2/conf-available/security.conf
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Content-Type-Options "nosniff"
Header always set Content-Security-Policy "default-src 'self'"
# Título Descriptivo de la Práctica
## Datos de Identificación
[Tabla con autores, cédulas, grupo, fecha]
## Introducción
[Contexto empresarial/técnico]
## Objetivos
[Lista de objetivos a lograr]
## Requisitos Técnicos
[Herramientas, versiones, IPs]
## Procedimiento Paso a Paso
### Paso 1: [Descripción]
- Comando: `...`
- Explicación: [Desglose detallado]
- Captura: [Imagen con pie de foto]
- Verificación: `whoami`, `id`
## Resultados
[Tabla de hallazgos]
## Análisis de Vulnerabilidades
[Descripción de cada hallazgo con remediación]
## Conclusiones
[Resumen ejecutivo]
## Referencias
[CVEs, CWEs, documentación consultada]
Cita de Retroalimentación Docente (Práctica 8): “Nivel excepcional de documentación… Estructura impecable… Documentación a nivel profesional, adecuada para presentar hallazgos a clientes corporativos.”