Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Límites de uso y tamaños

5 tareas · 38 min · Principiante

Una API sin límites se cae sola, o la tumba quien la use mal a propósito o por descuido. Los límites viven en dos lugares que deben decir lo mismo: el contrato (máximos de parámetros, de cadenas y de listas) y el gateway (peticiones por minuto, tamaño del cuerpo, tiempo máximo). En Mayoristas Boquerón lees ambos, buscas lo que falta y revisas cómo se cuenta el límite. Todo es lectura de archivos ficticios.

0 de 5 · 0%

Objetivo de la sala

Una API sin límites se cae sola, o la tumba quien la use mal a propósito o por descuido. Los límites viven en dos lugares que deben decir lo mismo: el contrato (máximos de parámetros, de cadenas y de listas) y el gateway (peticiones por minuto, tamaño del cuerpo, tiempo máximo). En Mayoristas Boquerón lees ambos, buscas lo que falta y revisas cómo se cuenta el límite. Todo es lectura de archivos ficticios.

El consumo irrestricto de recursos (API4:2023 en la lista OWASP API Security Top 10 de 2023) agrupa lo que puede agotar una API: demasiadas peticiones, cuerpos enormes, páginas con miles de filas, listas sin tope de elementos, tiempos de respuesta sin cota. El efecto va de la factura de nube que se dispara a la caída del servicio.

En el contrato se declaran con maximum, maxLength y maxItems; en el gateway, con límites por ruta. Cada capa cubre lo que la otra no ve.

Responde para continuar

¿Dónde se declaran los límites de una API para cubrir el consumo irrestricto?

Ver pista de ayuda

Una capa describe lo esperado y la otra lo impone en el borde.

Un parámetro de paginación sin maximum permite pedir una página de cualquier tamaño: un solo cliente puede obligar al servidor a leer y serializar millones de filas. Los dos parámetros bien escritos de listarPedidos sirven de referencia: ambos declaran su máximo.

Lee los fragmentos de parámetros y busca el que no declara máximo.

Responde para continuar

Escribe el nombre del parámetro de consulta que no declara maximum.

Ver pista de ayuda

Con la terminal, `cat contratos/fragmentos-parametros.yaml` y revisa el schema de cada parámetro.

Hay rutas donde un límite flojo es peor que en otras: las que inician flujos sensibles de negocio, como el acceso o la recuperación de credenciales, son el blanco natural de la automatización (API6:2023 en la lista OWASP). Sin límite de peticiones, alguien puede probar combinaciones sin freno.

Lee la tabla de límites del gateway y busca la ruta que no tiene ninguno.

Responde para continuar

Escribe la ruta del gateway que no tiene límite de peticiones por minuto.

Ver pista de ayuda

Abre `gateway/limites.csv` y mira la columna del límite por minuto.

Un cuerpo de petición grande se paga en memoria, red y tiempo de proceso, y en una ruta sin motivo para recibir archivos es una invitación al abuso. El tamaño máximo del cuerpo se fija por ruta: lo normal es un megabyte; lo mayor debe justificarse con una necesidad del negocio.

Responde para continuar

¿Cuántas rutas del gateway aceptan un cuerpo de más de 1 MB?

Ver pista de ayuda

Cuenta en `gateway/limites.csv` las filas cuyo `cuerpo_max_mb` supera 1.

El límite por minuto solo sirve si se cuenta por la clave correcta. La política del gateway lo cuenta por dirección de origen: varios clientes legítimos detrás de una misma salida a internet comparten el cupo y se bloquean entre sí, y quien tiene muchas direcciones lo esquiva. Un límite mejor se cuenta por credencial autenticada y por ruta, más estricto en los flujos sensibles.

El registro de la última semana muestra dónde se disparan los 429: el límite global parece funcionar, pero no protege lo que más importa.

Responde para continuar

La política cuenta el límite solo por dirección de origen. ¿Qué cambio la mejora?

Ver pista de ayuda

Piensa en quién comparte la dirección y en qué rutas no tienen límite.

Inicia sesión para registrar tus puntos y progreso en el ranking.

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