El cierre del módulo 8 lo dejó claro: tras aplicar cada estándar y herramienta de OWASP sobre BazarNube —remediar el Top Ten, verificar con ASVS, guiar con SAMM, escanear con ZAP y coserlo todo con DevSecOps—, el paso siguiente es demostrar que ese conocimiento está consolidado. Esta lección es esa demostración. No introduce conceptos nuevos: te pone a prueba de forma integradora sobre todo lo recorrido. Encontrarás un banco de preguntas tipo test con respuesta razonada que barre el Top Ten 2021, ASVS, SAMM, ZAP y las buenas prácticas, y un caso práctico final de evaluación sobre BazarNube en el que tendrás que identificar vulnerabilidades, proponer controles y mapearlos a OWASP, con una rúbrica de autoevaluación para medir tu dominio con honestidad. Tómatelo como el examen que tú mismo te corriges: si algo falla, sabrás exactamente a qué lección volver.

Contenido

  1. Cómo usar esta evaluación
  2. Banco de preguntas tipo test (con respuestas y explicación)
  3. Caso práctico final: auditoría exprés de BazarNube
  4. Rúbrica de autoevaluación
  5. Interpretar tu resultado
  6. Errores comunes y consejos
  7. Ejercicios
  8. Conclusión

Cómo usar esta evaluación

Para que la nota signifique algo, hazla en condiciones de examen:

  • Primero responde, luego corrige. Cubre las soluciones y contesta el test entero antes de leer ninguna explicación.
  • Sin apuntes en el test. El banco de preguntas mide lo que recuerdas; el caso práctico sí admite consultar la documentación (así se trabaja en la realidad).
  • Escribe tus respuestas del caso práctico antes de mirar la rúbrica: autoevaluarse de memoria infla la nota.
  • Anota a qué módulo pertenece cada fallo. El objetivo no es la cifra, sino detectar tus lagunas y volver a la lección concreta.

La evaluación se estructura en dos bloques: 20 preguntas tipo test (conocimiento) y un caso práctico (aplicación). La sección ## Ejercicios del final contiene el propio examen completo con sus soluciones.

Banco de preguntas tipo test (con respuestas y explicación)

A continuación, el banco por áreas. Las respuestas y explicaciones están al final, en la sección de soluciones, para que puedas hacerlo a ciegas. Cada pregunta indica entre corchetes el área que evalúa.

Bloque A — OWASP Top Ten 2021 (M3)

P1. [A01] Un usuario de BazarNube cambia el id de la URL /pedidos/1024 por /pedidos/1025 y ve el pedido de otra persona. ¿Qué categoría del Top Ten 2021 aplica y cómo se llama el patrón? a) A03 Inyección — SQLi b) A01 Control de Acceso Roto — IDOR c) A07 Fallos de Identificación — fijación de sesión d) A05 Configuración de Seguridad Incorrecta

P2. [A02] ¿Cuál de estas prácticas corresponde a A02 Fallos Criptográficos? a) Validar la entrada del buscador con consultas parametrizadas b) Almacenar contraseñas con un hash lento y con sal (p. ej. bcrypt/Argon2) c) Añadir la cabecera X-Frame-Options d) Limitar la tasa de peticiones por usuario

P3. [A03] La consulta "SELECT * FROM productos WHERE nombre LIKE '%" + q + "%'" del buscador de BazarNube es vulnerable. ¿Cuál es el control primario recomendado? a) Escapar comillas manualmente b) Un WAF que filtre palabras clave SQL c) Consultas parametrizadas / sentencias preparadas d) Ocultar los mensajes de error de la base de datos

P4. [A05/A06] BazarNube expone un panel de administración accesible sin autenticación y con la contraseña por defecto del framework. ¿Qué dos categorías del Top Ten describen mejor el problema? a) A05 Configuración Incorrecta y A07 Fallos de Identificación/Autenticación b) A02 Fallos Criptográficos y A03 Inyección c) A08 Fallos de Integridad y A09 Registro y Monitorización d) A04 Diseño Inseguro y A10 SSRF

P5. [A10] La función de "importar catálogo desde URL" de BazarNube permite indicar http://169.254.169.254/... y devuelve metadatos internos del proveedor cloud. ¿De qué se trata? a) XXE b) SSRF (A10) c) Open Redirect d) Deserialización insegura

P6. [A08] ¿Qué control mitiga A08 Fallos de Integridad de Software y Datos? a) Verificar firmas/hashes de dependencias y artefactos (p. ej. SCA + integridad de la cadena de suministro) b) Rotar las claves TLS cada 90 días c) Aplicar Content-Security-Policy d) Usar tokens JWT con expiración corta

Bloque B — ASVS (M4)

P7. [ASVS] ¿Qué afirma correctamente sobre los niveles ASVS? a) L1 es el más exigente y L3 el mínimo b) L1 es un mínimo verificable en caja negra; L2 es el estándar para la mayoría de apps; L3 es para aplicaciones críticas c) Los niveles miden la madurez del equipo, no del producto d) ASVS solo aplica a APIs REST

P8. [ASVS] BazarNube maneja pagos y datos personales. En 07-05 se decidió apuntar a ASVS L2. ¿Qué representa mejor el papel de ASVS en el proyecto? a) Una herramienta de escaneo dinámico b) Un catálogo de requisitos verificables usados como criterios de aceptación c) Un modelo de madurez organizativa por dominios d) Una metodología de threat modeling

Bloque C — SAMM (M5)

P9. [SAMM] ¿Qué pregunta responde OWASP SAMM que ASVS no responde? a) ¿Es seguro este endpoint concreto? b) ¿Qué CWE tiene esta vulnerabilidad? c) ¿Cómo de maduro es nuestro programa de seguridad y cómo mejorarlo? d) ¿Qué payload explota esta inyección?

P10. [SAMM] SAMM organiza la práctica de seguridad en cinco funciones de negocio. ¿Cuál de estas es una de ellas? a) Governance (Gobierno) b) Firewalling c) Pentesting d) Cifrado

Bloque D — ZAP (M6)

P11. [ZAP] En el pipeline de BazarNube se usó ZAP en modo baseline. ¿Qué caracteriza a ese modo? a) Realiza ataques activos intrusivos contra la aplicación b) Es un análisis pasivo/rápido pensado para no romper el build y detectar regresiones c) Solo funciona en modo escritorio con intervención manual d) Sustituye por completo a las pruebas de penetración manuales

P12. [ZAP] ¿Cuál es la diferencia entre el escaneo pasivo y activo de ZAP? a) El pasivo modifica las peticiones; el activo solo observa b) El pasivo observa el tráfico sin enviar ataques; el activo envía peticiones maliciosas para provocar vulnerabilidades c) Son sinónimos d) El activo es más seguro para ejecutar en producción

P13. [ZAP] Para probar zonas de BazarNube que requieren login, ZAP necesita: a) Nada especial, escanea todo por defecto b) Configurar un contexto con autenticación y gestión de sesión/usuarios c) Desactivar HTTPS d) Ejecutarse siempre como baseline

Bloque E — Buenas prácticas / S-SDLC / DevSecOps (M7)

P14. [S-SDLC] ¿Por qué es más barato corregir un fallo de seguridad en fase de diseño que tras un incidente? a) Porque los diseñadores cobran menos b) Porque el coste de corrección crece a medida que avanza el ciclo de vida; en producción implica reingeniería, respuesta a incidentes y daño reputacional c) Porque en diseño no hay que escribir código d) No es más barato, es un mito

P15. [Threat modeling] STRIDE es un modelo para clasificar amenazas. ¿Qué representa la "T"? a) Testing b) Tampering (Manipulación) c) Trust (Confianza) d) Transport

P16. [DevSecOps] ¿Qué tipo de herramienta detecta secretos (claves, tokens) filtrados en el repositorio? a) DAST (p. ej. ZAP) b) SAST (p. ej. Semgrep) c) Secret scanning (p. ej. gitleaks) d) SCA (p. ej. Dependency-Check)

P17. [DevSecOps] Asocia la herramienta con su categoría: Dependency-Check. a) SAST — analiza el código fuente b) SCA — analiza dependencias de terceros por vulnerabilidades conocidas c) DAST — ataca la app en ejecución d) Secret scanning

P18. [Cultura] ¿Cuál es el papel de un Security Champion? a) Sustituir al equipo de seguridad b) Ser el punto de referencia de seguridad dentro de su equipo de desarrollo y escalar el conocimiento c) Ejecutar únicamente los escáneres d) Aprobar despliegues sin revisión

P19. [Gates] Un quality gate de seguridad en CI/CD sirve para: a) Acelerar el build ignorando hallazgos b) Bloquear (o alertar) el pipeline cuando aparecen hallazgos por encima de un umbral de severidad definido c) Cifrar el tráfico entre servicios d) Generar documentación automática

P20. [Integración] ¿Qué afirmación resume mejor la filosofía del curso aplicada a BazarNube? a) La seguridad es una fase final antes de desplegar b) La seguridad es una propiedad continua del proceso y de la cultura, integrada en todo el ciclo c) Basta con pasar un pentest anual d) La seguridad depende de comprar suficientes herramientas

Caso práctico final: auditoría exprés de BazarNube

Lee el siguiente extracto de una nueva funcionalidad de BazarNube y responde por escrito antes de mirar la rúbrica.

Contexto. BazarNube añade "Regalos": un usuario sube una imagen desde una URL, escribe una dedicatoria y envía el regalo a otro usuario indicando su user_id. El backend expone:

  • POST /regalos con cuerpo { "para_user_id": 88, "imagen_url": "http://...", "mensaje": "<texto>" }.
  • La imagen se descarga en el servidor desde imagen_url para generar una miniatura.
  • El mensaje se guarda y se muestra tal cual (HTML) en la página del destinatario.
  • Para consultar un regalo: GET /regalos/{id} — devuelve el regalo sin comprobar quién lo pide.
  • Las contraseñas de usuario se guardan con MD5(password) sin sal.
  • No hay ningún registro de esta acción en los logs.

Tu tarea:

  1. Identifica al menos cuatro vulnerabilidades.
  2. Para cada una, propón un control concreto.
  3. Mapea cada vulnerabilidad a su categoría del Top Ten 2021 y al área OWASP relevante (ASVS/otra).

Escribe tu respuesta ahora. La solución modelo y la rúbrica están más abajo.

Rúbrica de autoevaluación

Puntúa tu respuesta al caso práctico con esta rúbrica (máximo 20 puntos):

Criterio 0 pts 1 pt 2 pts
Identificación de vulnerabilidades Menos de 3 correctas 3-4 correctas 5+ correctas y bien nombradas
Mapeo al Top Ten 2021 Mayoría incorrecta Algunas correctas Todas correctas
Controles propuestos Genéricos o erróneos Correctos pero incompletos Concretos y verificables
Referencia a ASVS/estándar Ausente Mencionada Requisito ASVS concreto por control
Priorización por riesgo No prioriza Prioriza sin justificar Prioriza y justifica el orden

Suma los cinco criterios (cada uno hasta 2 puntos = 10) y multiplica el bloque test por su peso; ver la interpretación siguiente.

Interpretar tu resultado

Combina las dos partes. El test aporta 20 puntos (1 por acierto) y el caso práctico 10 (rúbrica), total 30.

Puntuación total Nivel Recomendación
27-30 Dominio sólido Estás listo para plantearte una certificación (lección 09-02)
21-26 Competente Repasa los módulos de los fallos concretos antes de certificarte
15-20 En progreso Vuelve a M3, M4 y M7; rehaz el caso práctico
< 15 Bases por consolidar Repite el curso desde M3 con los laboratorios de 09-03

Recuerda: el número orienta, pero lo importante es a qué lección te manda cada fallo. Un 24 con todos los errores concentrados en ZAP se arregla repasando M6; un 24 disperso pide un repaso más amplio.

Errores Comunes y Consejos

  • Estudiar para el test y no para el caso. Memorizar las 10 categorías no equivale a detectarlas en código real. El caso práctico es el que mide el dominio verdadero; dale más peso.
  • Confundir SAMM con ASVS. Es el error conceptual más frecuente del curso: SAMM mide la madurez del programa; ASVS define requisitos del producto. Si fallaste P8 o P9, vuelve a 05-01 y 04-01.
  • Nombrar la vulnerabilidad sin proponer control verificable. "Tiene SSRF" no es una respuesta completa; "validar el destino con una allow-list y bloquear rangos internos como 169.254.0.0/16" sí lo es.
  • No priorizar. En una auditoría real no todo pesa igual: un IDOR explotable en producción va antes que un log ausente. La rúbrica premia justificar el orden.
  • Consejo: repite esta evaluación pasadas una o dos semanas. La retención real se mide en diferido, no justo después de leer la lección.

Ejercicios

Los tres ejercicios constituyen el examen completo. Hazlos en orden y sin mirar las soluciones.

Ejercicio 1 — Test. Responde las 20 preguntas del banco anterior (P1 a P20). Anota tu letra para cada una.

Ejercicio 2 — Caso práctico. Resuelve la "auditoría exprés de BazarNube": identifica vulnerabilidades, propón controles y mapéalos a OWASP. Puntúate con la rúbrica.

Ejercicio 3 — Plan de repaso. A partir de tus fallos en los ejercicios 1 y 2, redacta un mini plan: lista los módulos a repasar ordenados por número de errores, y una acción concreta por módulo (una lección a releer o un laboratorio a hacer).

Soluciones

Solución 1 — Respuestas del test:

Pregunta Respuesta Explicación breve
P1 b Acceso a un recurso ajeno cambiando un identificador directo = IDOR, dentro de A01 Control de Acceso Roto.
P2 b El almacenamiento seguro de contraseñas es criptografía aplicada = A02.
P3 c El control primario contra SQLi es la parametrización; el WAF es defensa en profundidad, no la solución.
P4 a Panel expuesto = A05 (config incorrecta); credenciales por defecto = A07 (autenticación).
P5 b Forzar al servidor a pedir una URL interna es SSRF = A10.
P6 a Verificar firmas/hashes de dependencias y artefactos mitiga A08.
P7 b L1<L2<L3 en exigencia; L2 es el objetivo típico.
P8 b ASVS es un catálogo de requisitos verificables, útil como criterios de aceptación.
P9 c SAMM mide y guía la madurez del programa.
P10 a Governance es una de las cinco funciones de SAMM.
P11 b El baseline es pasivo/rápido, pensado para CI sin romper el build.
P12 b Pasivo observa; activo ataca.
P13 b Hace falta un contexto con autenticación y gestión de sesión.
P14 b El coste de corrección crece con el avance del ciclo.
P15 b T = Tampering (Manipulación).
P16 c Los secretos se detectan con secret scanning (gitleaks).
P17 b Dependency-Check es SCA (análisis de dependencias).
P18 b El champion es el referente de seguridad de su equipo.
P19 b Un gate bloquea/alerta según umbral de severidad.
P20 b La seguridad como propiedad continua es la tesis del curso.

Solución 2 — Caso práctico (respuesta modelo):

# Vulnerabilidad Control propuesto Top Ten 2021 Estándar
1 IDOR en GET /regalos/{id} (no comprueba propietario/destinatario) Control de acceso por objeto: verificar que el solicitante es emisor o destinatario A01 ASVS V4 (Control de acceso)
2 SSRF en la descarga de imagen_url (permite URLs internas) Allow-list de dominios/esquemas, resolver y bloquear rangos internos (169.254/16, 10/8), timeouts A10 ASVS V12/V5
3 XSS almacenado en mensaje (se muestra como HTML sin escapar) Codificación de salida contextual / sanitización; CSP como defensa en profundidad A03 ASVS V5 (Validación y codificación)
4 Fallo criptográfico: contraseñas en MD5 sin sal Hash lento con sal (bcrypt/Argon2/scrypt) y migración progresiva A02 ASVS V2 (Autenticación)
5 Registro/monitorización insuficiente: acción sin logs Registrar la creación/consulta de regalos con contexto (quién, qué, cuándo) y alertar anomalías A09 ASVS V7 (Logging)

Priorización razonada: 1 y 3 primero (explotables directamente y afectan a datos de usuarios), 2 a continuación (impacto grave pero requiere abusar de la importación), 4 (crítico pero explotable solo si hay fuga de la BD) y 5 transversal (habilita la detección de los demás). Si identificaste 4 de estas 5 con su control y mapeo, tu comprensión del Top Ten aplicado es sólida.

Solución 3 — Plan de repaso. No hay solución única. Un ejemplo bien hecho: "Fallé P11-P13 (ZAP) y el control SSRF del caso -> M6 y 03/A10. Acciones: releer 06-04 (automatización) y montar Juice Shop para practicar SSRF (ver 09-03)." Lo correcto es que el plan salga de tus errores reales, priorice por frecuencia y termine en acciones concretas y verificables, no en buenas intenciones.

Conclusión

Esta evaluación ha cerrado el círculo que abrió el módulo 8: primero aplicaste OWASP sobre BazarNube y ahora has medido cuánto de ello domina de verdad. Si has hecho el test a ciegas y el caso práctico por escrito, ya tienes un mapa honesto de tus fortalezas y de las lecciones a las que conviene volver. Esa autoevaluación no es un trámite: es exactamente el criterio con el que decidirás si estás listo para dar el siguiente paso, acreditar tu conocimiento ante terceros. En la próxima lección, 09-02 Certificación OWASP, aclararemos qué papel juega OWASP en el ecosistema de certificaciones de seguridad de aplicaciones, qué certificaciones de la industria encajan con lo que has aprendido y cómo elegir la adecuada según tu perfil. Llegas a ella con lo esencial ya demostrado: no solo saber, sino saber aplicarlo.

Curso de OWASP: Directrices y Estándares para la Seguridad en Aplicaciones Web

Módulo 1: Introducción a OWASP

Módulo 2: Principales Proyectos de OWASP

Módulo 3: OWASP Top Ten 2021 en Profundidad

Módulo 4: OWASP ASVS (Application Security Verification Standard)

Módulo 5: OWASP SAMM (Software Assurance Maturity Model)

Módulo 6: OWASP ZAP (Zed Attack Proxy)

Módulo 7: Buenas Prácticas y Recomendaciones

Módulo 8: Ejercicios Prácticos y Casos de Estudio

Módulo 9: Evaluación y Certificación

© Copyright 2026. Todos los derechos reservados