[Hardening] F-06: 2FA Field Set as Password Causes Password Manager Issues.
- 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:** The 2FA input is defined as type="password". Password managers treat it like a regular password field, so they may save or autofill the 2FA code. This can overwrite the stored password and lock the user out of their account. The field was likely set this way to hide the Static PIN from bystanders or during screen sharing.
**Affected Components:** Management UI
**Impact:** Password managers may replace saved passwords with 2FA codes. This can lock users out and lead them to choose weaker passwords or store them insecurely.
**Steps to Reproduce:**
- Log in to the CloudStack Management UI with a user that has 2FA enabled.
- Enter valid credentials and continue to the 2FA screen.
- Inspect the 2FA input field in the browser’s developer tools.
- Confirm it is set to type="password".
**Recommended Remediation:** Change the 2FA input field to type="number" and add autocomplete="one-time-code". This informs password managers of the field's actual meaning.
Also, consider combining the password and 2FA into a single form. This way, attackers can’t tell which part failed, making password attacks harder.
Guía de contribución
Línea de trabajo
Comienza con el formulario de inicio de sesión 2FA de la CloudStack Management UI descrito en el issue #13337 y revisa el pull request combinado #13723 para ver el trabajo que ya se ha completado. Se considera terminado cuando los administradores de contraseñas identifican el campo 2FA como un código de un solo uso en lugar de como una contraseña normal, mientras que la propuesta separada de combinar formularios sigue siendo una consideración más amplia.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- authentication, frontend
- Tipo de issue
- Error
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 20/100