🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónFirmas y algoritmos permitidos
5 tareas · 40 min · Principiante
La cabecera de un token declara con qué algoritmo se firmó, y de ahí sale la decisión de diseño más importante de toda la validación: qué algoritmos acepta cada servicio. Hay dos familias que se confunden. Una usa un solo secreto que firma y verifica, y otra usa un par de claves en el que solo el emisor puede firmar. En Mensajería Pico Verde conviven las dos, y un inventario del área de TI dice qué acepta cada servicio y quién guarda qué. Tu trabajo es leerlo y decir dónde la lista de algoritmos permitidos está mal.
Objetivo de la sala
La cabecera de un token declara con qué algoritmo se firmó, y de ahí sale la decisión de diseño más importante de toda la validación: qué algoritmos acepta cada servicio. Hay dos familias que se confunden. Una usa un solo secreto que firma y verifica, y otra usa un par de claves en el que solo el emisor puede firmar. En Mensajería Pico Verde conviven las dos, y un inventario del área de TI dice qué acepta cada servicio y quién guarda qué. Tu trabajo es leerlo y decir dónde la lista de algoritmos permitidos está mal.Las firmas de la familia HMAC (HS256 y compañía) usan una sola clave: la misma firma y verifica. Quien pueda verificar un token también puede fabricar uno que otro servicio dará por bueno, porque no hay forma de distinguir los dos usos con ese secreto. Las firmas de par de claves (RS256, ES256) separan los dos papeles: la clave privada firma y se queda en el emisor; la pública verifica y se puede repartir sin riesgo.
Por eso HS256 resulta cómodo entre dos sistemas que se fían mutuamente y se vuelve problemático cuando el secreto se reparte. El portal de conductores de Pico Verde usa HS256: mira en el inventario de servicios cuántos sitios guardan ese secreto y piensa qué puede hacer cada uno.
Responde para continuar
El secreto HS256 del portal de conductores está en varios servicios y apps. ¿Qué implica?
Ver pista de ayuda
Con un secreto compartido, verificar y firmar son lo mismo. Piensa en quién puede fabricar un token válido.
La especificación de los JWT permite un token sin firma, cuyo algoritmo declarado es none. Existe para usos muy particulares en los que otra capa ya garantiza la integridad. Una API que valida credenciales de acceso no es uno de ellos. La guía de buenas prácticas para JWT (RFC 8725) pide que las bibliotecas no acepten none salvo que quien las usa lo pida explícitamente, y en una API de usuarios casi nunca hay motivo para pedirlo.
Que un servicio lo acepte no significa que alguien lo haya explotado; significa que el servicio no exige firma a un token que dice no tenerla. Busca en el inventario cuál lo tiene en su lista de algoritmos aceptados.
Responde para continuar
¿Qué servicio tiene `none` entre los algoritmos que acepta? Escríbelo tal cual.
Ver pista de ayuda
Es la columna «algoritmos_que_acepta» de la tabla de servicios.
Aceptar dos algoritmos de familias distintas en un mismo punto de verificación suele ser un parche de migración que se quedó: se añadió uno nuevo sin quitar el viejo. Cada algoritmo aceptado es una puerta que hay que vigilar, y dos familias significan que se necesitan dos tipos de clave, con riesgos que no se parecen. El principio de la RFC 8725 es permitir solo algoritmos vigentes que cumplan lo que la aplicación necesita, con una lista fija decidida por quien verifica, no por el token.
Revisa de nuevo el inventario y busca el servicio que verifica con un algoritmo de par de claves y también con uno de secreto compartido.
Responde para continuar
¿Qué servicio acepta a la vez un algoritmo de par de claves y uno de secreto compartido? Escríbelo tal cual.
Ver pista de ayuda
Busca la fila cuya lista de algoritmos aceptados mezcla RS256 con HS256.
El riesgo de un secreto compartido crece con cada lugar donde se copia: cada equipo que lo guarda es otro portátil, otra copia de seguridad, otro repositorio de configuración donde puede acabar. Antes de proponer una migración conviene cuantificar el problema, y la tabla de custodia dice qué servicios lo guardan y quién lo administra.
Cuenta los servicios de la tabla de custodia que guardan el secreto compartido.
Responde para continuar
¿Cuántos servicios guardan el secreto HS256 compartido? Escribe solo el número.
Ver pista de ayuda
Cuenta las filas de la tabla de custodia en las que la columna del secreto dice «si».
El arreglo no es endurecer el parámetro de un solo servicio sino cambiar el criterio. Cada verificador declara de antemano la lista corta de algoritmos que acepta, la que le corresponde por el tipo de clave que tiene, y rechaza cualquier token que declare otro. Los servicios que solo verifican deben tener solo claves públicas; el secreto compartido se migra a un par de claves cuando haya más de dos partes implicadas, y entretanto se retira de quien no lo necesita.
Responde para continuar
Para los servicios que verifican tokens del emisor central, ¿cuál es el arreglo de fondo?
Ver pista de ayuda
El que decide los algoritmos aceptados es el verificador, y cada servicio debería tener la lista más corta posible.
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.