🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónFuncionalidades que piden recursos afuera
4 tareas · 35 min · Principiante
Hay una familia entera de funcionalidades cómodas que tienen la misma forma por dentro: alguien escribe una dirección y el servidor la visita. Vistas previas de enlaces, importadores por dirección, avisos salientes, conversores que incrustan imágenes. Plataforma Cundiamor te entrega el inventario que levantó su equipo de desarrollo, el código de dos de esas funcionalidades, el registro de salida del servidor y el mapa de su red. Se lee como quien va a decidir cuál se cierra primero.
Objetivo de la sala
Hay una familia entera de funcionalidades cómodas que tienen la misma forma por dentro: alguien escribe una dirección y el servidor la visita. Vistas previas de enlaces, importadores por dirección, avisos salientes, conversores que incrustan imágenes. Plataforma Cundiamor te entrega el inventario que levantó su equipo de desarrollo, el código de dos de esas funcionalidades, el registro de salida del servidor y el mapa de su red. Se lee como quien va a decidir cuál se cierra primero.Cuando el navegador de una persona pide una imagen, la petición sale de su casa o de su oficina: alcanza lo que alcanza cualquiera desde internet. Cuando la pide el servidor en nombre de esa persona, sale desde dentro del centro de datos, con la vista que tiene el servidor: bases de datos, paneles internos, servicios de administración que nadie publicó.
Esa diferencia es toda la debilidad. MITRE la cataloga como CWE-918, falsificación de petición del lado del servidor, en su nivel base; la edición de 2025 del Top 10 de OWASP la trae entre las debilidades que mapea su categoría de control de acceso roto, y el Top 10 de seguridad de APIs de 2023 le dedica su entrada API7. No hace falta que la función devuelva lo que encontró: basta con que llegue. La primera tarea de quien audita no es buscar el fallo, sino levantar la lista de sitios donde el servidor sale a pedir algo.
Responde para continuar
¿Qué cambia cuando la petición la hace el servidor en lugar del navegador de la persona?
Ver pista de ayuda
Piensa en la posición de red de quien pide, no en el contenido.
Abre el laboratorio y lee inventario-salientes.csv. Cada fila dice de dónde sale la dirección que se pide y qué comprobación hay antes de pedirla. Después abre ConversorController.php y VistaPreviaController.php y compáralos: uno comprueba el destino contra una lista y el otro tiene un comentario pendiente desde 2025.
No todas las filas pesan igual. La que importa es la que junta las dos cosas: la dirección la escribe quien usa el portal y nada revisa a dónde va.
Responde para continuar
¿Qué identificador del inventario señala la única funcionalidad cuya dirección la escribe una persona usuaria y no tiene ninguna comprobación de destino? Escríbelo tal como aparece.
Ver pista de ayuda
Mira la última columna del inventario y quédate con la fila que no comprueba nada.
El informe no dice «hay un SSRF»: dice cuántos puntos de salida dependen de una dirección que decide alguien de fuera. Cuenta las filas del inventario cuya dirección la escribe o la guarda una persona usuaria del portal. Deja fuera las que no manejan dirección, las que la traen de la configuración y la que teclea soporte al aprobar un ticket.
Responde para continuar
¿Cuántas funcionalidades del inventario parten de una dirección que escribe o guarda quien usa el portal? Escribe solo el número.
Ver pista de ayuda
Son filas, no archivos; una misma funcionalidad cuenta una vez.
salida-portal.log anota a qué conectó cada servicio, y mapa-red.txt dice qué hay en cada rango. Crúzalos: hay conexiones de un servicio hacia direcciones que el mapa marca como internas. El registro no explica por qué; explica que ocurrió, y eso es lo que convierte una sospecha de revisión de código en un hallazgo con evidencia.
Responde para continuar
¿Qué aporta el registro de salida que no aporta la lectura del código?
Ver pista de ayuda
Una cosa es lo que el código permite y otra lo que ya pasó.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.