apache / apache/cloudstack

[Hardening] F-14: Fail to Ensure Request Limits and/or Throttling by Default.

Abierto
#13,342 0 comentarios 0 reacciones 0 asignados Ver en GitHub
hardening
Lenguaje dominante
Java
Estrellas
3.1k
Forks
1.4k
Merge medio
6 d 19 h
PR fusionados (30 d)
32

Descripción

### The required feature described as a wish

Image

**Description:** By Default, CloudStack does not enforce rate limiting or request throttling on its API endpoints. Any client with network access to the management plane can issue an unlimited number of API requests without restriction, delay, or penalty.

**Affected Components:** Management API

**Impact:** An attacker or malfunctioning client can flood the API with requests, exhausting server-side resources (e.g., DB) and causing a denial of service. The absence of throttling also enables unlimited automated authentication attempts, which compounds the risk previously described in other reports.

**Steps to Reproduce:**
- Using a custom script or a fuzzing tool, send a high volume of requests in rapid succession to any API endpoint.
- Observe that all requests are processed without any throttling, queuing delay, or rejection based on request rate.

**Recommended Remediation:** Adopt rate-limiting and throttling out-of-the-box. Return `HTTP 429` with a `Retry-After` header when a threshold is exceeded, as an attempt to slow down legit clients (attackers do not slow!)

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza con la CloudStack Management API y reproduce el problema enviando un gran volumen de solicitudes a un endpoint de API. Se considera completado cuando los límites de solicitudes y la limitación de tráfico están habilitados de forma predeterminada, las solicitudes excesivas se retrasan o se rechazan con HTTP 429, y las respuestas rechazadas incluyen un encabezado Retry-After.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
api, security
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Tranquilo
Claridad
Necesita aclaración
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.