🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónErrores comunes en redirecciones y en la validación de audiencia
5 tareas · 40 min · Principiante
Los estándares de OAuth, OIDC y SAML son sólidos y las implementaciones fallan siempre por los mismos sitios: una dirección de retorno demasiado permisiva, una API que no mira para quién era el token, un permiso que nadie comprueba. Terracota Logística tiene cinco clientes registrados y cuatro APIs, y su configuración guarda varios de esos errores. Aprendes a reconocerlos en una revisión y a describir cada uno y su corrección, sin tocar nada.
Objetivo de la sala
Los estándares de OAuth, OIDC y SAML son sólidos y las implementaciones fallan siempre por los mismos sitios: una dirección de retorno demasiado permisiva, una API que no mira para quién era el token, un permiso que nadie comprueba. Terracota Logística tiene cinco clientes registrados y cuatro APIs, y su configuración guarda varios de esos errores. Aprendes a reconocerlos en una revisión y a describir cada uno y su corrección, sin tocar nada.Al pedir autorización, el cliente indica la dirección a la que el servidor devolverá a la persona con el código. Esa dirección (redirect_uri) debe estar registrada de antemano, y la guía de seguridad (RFC 9700) pide que el servidor la compare carácter por carácter con la registrada. Con un comodín como *, un atacante que logre un subdominio o una ruta bajo el patrón haría que el código o el token llegaran a una dirección que no es la del cliente. Aquí no se ejecuta nada de eso: se revisa que el registro no lo permita.
Abre el laboratorio y lee clientes_oauth.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Por qué debe compararse la redirect_uri con la registrada de forma exacta y no con un patrón?
Además de exacta, la dirección debe usar https. El código o el token viaja en esa dirección, y con http cualquiera en el camino lo ve. La excepción que la guía admite es la de aplicaciones nativas que escuchan en la máquina de la persona, que no es el caso de estos clientes, todos servidores o páginas de Terracota.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Qué cliente tiene registrada una redirect_uri sin https?
La columna comparacion dice cómo trata el servidor la dirección de cada cliente: exacta o con comodín. Cuenta cuántos de los cinco la comparan con un patrón. Es el número de registros a corregir primero en esta revisión.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Cuántos clientes se registraron con comparación por comodín?
Un servidor de recursos (una API) recibe un token de acceso y debe comprobar cuatro cosas: la firma, el emisor, el alcance que cubre la operación y la audiencia, que debe ser él mismo. Si no mira la audiencia, acepta tokens emitidos para otra API, y el permiso que se dio a una sirve en todas. La RFC 9700 recomienda que los tokens se restrinjan a una audiencia para limitar el daño si se filtran.
En apis_validaciones, cada API tiene un «sí» o un «no» por comprobación. Hay una que valida la audiencia pero no mira el alcance: acepta un token que es para ella aunque no dé permiso para la operación pedida.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Qué API valida la audiencia pero no valida el alcance?
La tabla de APIs mezcla fallos de distinto peso. Una API que no valida la audiencia acepta tokens emitidos para otras APIs; una que no valida el alcance deja operar a quien solo tenía permiso de lectura. Las dos hay que corregirlas, y se informan con la evidencia: qué comprobación falta y en qué API, no con la palabra «insegura».
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Cómo debe quedar redactado el hallazgo de una API que no valida la audiencia?
Conectando con la base…
Tablas
clientes_oauth
- cliente
- redirect_uri_registrada
- comparacion
apis_validaciones
- api
- valida_firma
- valida_audiencia
- valida_alcance
- valida_emisor
El resultado aparece aquí.
fila(s)
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.