[Hardening] F-12: Absence of Per-Account or Per-User Source CIDR Allowlist.
- 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
**Description:** CloudStack does not provide a built-in mechanism to restrict per-account or per-user access to a defined set of source IP addresses or CIDR ranges. Any IP address that can reach the management plane can attempt to authenticate as any account.
**Affected Components:** Management UI / API
**Impact:** Without source IP allowlisting, a stolen API key or compromised credential set can be used from any network location globally. There is no network-level control to limit the blast radius of a credential compromise. High-privilege service accounts are particularly at risk, as they can be accessed from unexpected locations without raising any flags.
**Steps to Reproduce:**
- This finding is not directly reproducible since it reflects the absence of a control.
**Recommended Remediation:** Implement a per-account or per-user source CIDR allowlist field in the data model. Requests originating from IPs outside the defined allowlist should be rejected and logged as a security event.
Guía de contribución
Línea de trabajo
El issue identifica la Management UI/API, el modelo de datos de la cuenta o del usuario, las comprobaciones de la IP de origen de las solicitudes y el registro de Security-Events, pero no indica archivos ni tests. Empieza por localizar esos puntos de entrada y seguir el flujo de autenticación y autorización de las solicitudes a la API. La finalización debe incluir una política CIDR definida por cuenta o por usuario, el rechazo fuera de la política y Security-Events registrados, con cobertura del comportamiento relevante.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- api, authentication, authorization, backend, 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