🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónLeer una especificación OpenAPI como pentester
5 tareas · 35 min · Principiante
Antes de tocar una API, un pentester pide su especificación: es el mapa de todas las operaciones, los parámetros y la seguridad que el equipo dice haber puesto. Leerla bien ahorra horas y revela sin enviar una sola petición qué operaciones no piden autenticación, qué parámetros son identificadores de objetos y qué mecanismos de acceso conviven. Aquí lees la de Tamarindo Envíos, ya volcada en tablas. La especificación es lo que el cliente declara, no lo que el servidor hace: cada hallazgo de lectura se confirma luego con la prueba autorizada.
Objetivo de la sala
Antes de tocar una API, un pentester pide su especificación: es el mapa de todas las operaciones, los parámetros y la seguridad que el equipo dice haber puesto. Leerla bien ahorra horas y revela sin enviar una sola petición qué operaciones no piden autenticación, qué parámetros son identificadores de objetos y qué mecanismos de acceso conviven. Aquí lees la de Tamarindo Envíos, ya volcada en tablas. La especificación es lo que el cliente declara, no lo que el servidor hace: cada hallazgo de lectura se confirma luego con la prueba autorizada.Una especificación OpenAPI tiene en el bloque de componentes los esquemas de seguridad: los mecanismos que existen, por ejemplo una cabecera con un token o una clave en un parámetro. Eso solo los define. Lo que exige cada operación es el bloque de requisitos de seguridad, que se puede declarar una vez para toda la API y sustituir en una operación concreta. Si una operación declara una lista vacía de requisitos, queda pública aunque el resto exija token.
Por eso leer una especificación es comparar tres cosas: qué mecanismos existen, cuál se aplica por defecto y qué operaciones lo sustituyen.
Responde para continuar
La especificación define dos esquemas de seguridad y declara uno como requisito global. Una operación declara una lista de requisitos vacía. ¿Qué significa?
Ver pista de ayuda
La lista vacía sustituye al requisito global. La operación queda sin exigir credenciales.
Que una operación sea pública no es un hallazgo por sí solo: un seguimiento de paquetes sin cuenta puede ser una decisión de negocio. Lo que importa es qué devuelve. Una operación sin seguridad que entrega datos de personas es un fallo de autenticación (API2) o, según el caso, de configuración.
Consulta operaciones y esquemas_de_datos. Hay dos operaciones públicas: distingue la que devuelve datos de seguimiento sin información personal de la que devuelve datos de clientes.
Responde para continuar
¿Qué operación no exige autenticación y devuelve datos personales de clientes? Escribe su nombre.
Ver pista de ayuda
Ejecuta `SELECT * FROM operaciones` y mira la columna seguridad y lo que devuelve cada operación pública.
Los esquemas de seguridad dicen también dónde viaja la credencial. Una clave en una cabecera se registra menos que una clave en la dirección: las direcciones quedan escritas en los registros de los servidores, de los balanceadores y de los proxies, y en el historial de quien las use. Por eso las guías de seguridad de APIs piden no poner secretos en la URL.
Revisa esquemas_de_seguridad y encuentra el esquema cuya credencial viaja en un parámetro de la dirección.
Responde para continuar
¿Cómo se llama el esquema de seguridad cuya credencial viaja en la URL?
Ver pista de ayuda
Ejecuta `SELECT * FROM esquemas_de_seguridad` y mira la columna donde_viaja.
Una especificación puede estar desactualizada, incompleta o ser optimista: describe lo que el equipo quiso construir. El pentester la trata como una hipótesis que verifica. Si dice que una operación exige token, se comprueba con una petición autorizada y sin token; si dice que no hay más operaciones que las listadas, se compara con el tráfico real del gateway, como en la primera sala.
Una concordancia total entre especificación y comportamiento no la da el documento, la da la comprobación.
Responde para continuar
La especificación dice que obtenerCliente exige token. ¿Cómo lo registras en tu informe antes de probarlo?
Ver pista de ayuda
Lo leído es una hipótesis hasta que el servidor la confirma.
Una de las operaciones públicas de Tamarindo es el seguimiento de una guía: cualquier persona con el número de guía ve el estado de su paquete. En esquemas_de_datos las propiedades de ese esquema son la guía, el estado, la ciudad de destino y la fecha de actualización: ni nombre, ni dirección, ni documento. El hallazgo, si lo hay, no es que sea pública, sino que los números de guía sean fáciles de adivinar, y eso se evalúa aparte.
Responde para continuar
¿Cómo tratas en el informe la operación pública de seguimiento de guías, que no devuelve datos personales?
Ver pista de ayuda
Mira qué propiedades devuelve. Lo público no es un fallo en sí; lo que devuelve y lo fácil de adivinar sí cuentan.
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.