Security UX
Security UX
8 reglasOfrece métodos MFA resistentes a phishing por encima de SMS
Al activar la verificación en dos pasos, presenta passkeys, apps TOTP y llaves de seguridad fisicas como opciones primarias, y deja SMS como secundario con una advertencia explicita. Los métodos criptograficos resisten el phishing porque su salida esta ligada al dominio de origen; SMS no lo esta y es vulnerable a SIM-swap e interceptación SS7. NIST clasifica los autenticadores vía PSTN como "restricted" y exige que AAL2 ofrezca al menos una opción resistente a phishing. Microsoft estima que MFA habria detenido el 99.9% de los compromisos de cuenta.
OWASP MFA Cheat Sheet (Microsoft: 99.9% de compromisos detenidos) · NIST SP 800-63B Rev.4 §3.1.3.3 y §3.2.5Lista las sesiones activas con contexto y un botón para revocarlas
La página de seguridad debe mostrar cada sesión activa con navegador, sistema operativo, ubicación aproximada y último acceso, y permitir cerrar cualquier sesión remota con un clic. Sin ese contexto el usuario no puede distinguir su propia actividad de un acceso intruso, y sin el botón de revocar depende de soporte técnico para reaccionar. GitHub expone una página dedicada con "Revoke sessión" por entrada; revocar una sesión móvil la elimina además como segundo factor. En el estudio CHI 2024 (n=229), más del 95% de usuarios esperaban algun tipo de notificación de seguridad.
GitHub Docs, "Viewing and managing your sessions" (2022) · CHI 2024 (arXiv 2212.07316, n=229)192.168.1.1
Entrega los códigos de recuperación al activar MFA, no después
En el momento de activar MFA, no bajo demanda, el sistema debe generar un set de códigos de un solo uso y mostrarlos con opciones claras de guardado y un paso de confirmación. Sin esos códigos, un usuario que pierde su dispositivo puede quedar bloqueado permanentemente. El momento de entrega es critico: mostrarlos una sola vez dentro del flujo de activación maximiza la probabilidad de que se guarden; enterrarlos en configuración avanzada significa que casi nadie los descargara. GitHub genera 16 códigos y ofrece descargar, imprimir o copiar.
GitHub Docs, "2FA recovery methods" (16 códigos) · OWASP MFA Cheat Sheet (CSPRNG, single-use)No fuerces rotación periodica de contrasena sin evidencia de compromiso
Nunca muestres un prompt "Tu contrasena vence en 14 días" si no hay evidencia de brecha. La rotación forzada sin motivo empuja a los usuarios a cambios triviales (incrementar un número, anadir un simbolo al final) que no mejoran la seguridad, o a apuntar contrasenas difíciles dejando el sistema más expuesto. NIST prohibe la rotación periodica obligatoria y solo admite forzar el cambio cuando hay evidencia de que el autenticador fue comprometido. Las politicas de 90 días provienen de estandares pre-2017 ya retirados: mantenerlas es deuda de UX y de seguridad a la vez.
NIST SP 800-63B Rev.4 §3.1.1.2 ("SHALL NOT require periodic change") · Nielsen Norman Group, "Security & human factors"Notifica eventos de seguridad con detalle accionable, no avisos vagos
Envia notificación inmediata por email y en-app ante inicio de sesión en dispositivo nuevo, cambio de contrasena, cambio de MFA y revocación de sesiones. La alerta debe incluir dispositivo, ubicación aproximada, hora y un enlace directo a "No fui yo, asegurar mi cuenta". La inmediatez es decisiva: recibir la alerta en tiempo real permite actuar antes del daño. En el estudio CHI 2024 (n=229) ~80% vio la notificación, pero ante un login malicioso solo 22% cambio su contrasena pese a tener toda la información. Una alerta vaga ("actividad inusual, inicia sesión para revisar") no da al usuario nada con que decidir.
CHI 2024 (arXiv 2212.07316, Petelka et al., n=229): ~80% vio la alerta, 22% actuo · OWASP Authentication Cheat Sheet (time, browser, location, report link)No bloquees pegar ni gestores de contrasena en campos de autenticación
Todo campo de autenticación (contrasena, código OTP, PIN de recuperación) debe permitir pegar desde el portapapeles y ser compatible con gestores de contrasenas vía autocomplete. Bloquear el pegado no es una medida de seguridad: es una falla de WCAG 3.3.8 (nivel AA) que obliga a usuarios con discapacidad cognitiva, memoria reducida o baja visión a transcribir manualmente cadenas largas. También es falla pedir "el 1er, 3er y 5to caracter" de la contrasena. Métodos conformes: autocomplete correcto, WebAuthn/biometria, OAuth y QR.
Explica en lenguaje claro que protege cada ajuste, sin jerga técnica
Cada control de seguridad (2FA, revisión de sesiones, alertas de login, passkeys) debe ir acompanado de una descripción de 1-2 oraciones en lenguaje de usuario, no de desarrollador. "Autenticador TOTP" o "RFC 6238" no significan nada para la mayoría; "una app de códigos en tu telefono, como Google Authenticator" si. Los usuarios no activan protecciones que no entienden: la descripción funcional (que hace y contra que protege) es el mecanismo primario de adopción en población no técnica. Usa resumenes de alto nivel con detalle expandible para distintos niveles de sofisticación.
Nielsen Norman Group, "Security & human factors" y "2-factor authentication" · CHI 2024 (arXiv 2212.07316): solo 21% de alertas explicaban su motivoExige reautenticación y confirma por email ante cambios criticos
Antes de permitir cambio de contrasena, cambio de email principal, activación o desactivación de MFA, o eliminación de sesiones, solicita la contrasena actual (reautenticación) y envia una notificación al email registrado para que el dueño legitimo pueda cancelar si no fue el. Este patrón crea una ventana de intervención: si un atacante con sesión activa intenta cambiar el email, el dueño recibe el aviso y bloquea el cambio antes de que se complete. NIST anade que la reautenticación debe invalidar sesiones y rotar tokens, reduciendo la ventana de ataque.
OWASP Authentication Cheat Sheet (reauthentication, email change notifications) · NIST SP 800-63B Rev.4 §3.1.3- R-1158 Ofrece métodos MFA resistentes a phishing por encima de SMS
- R-1159 Lista las sesiones activas con contexto y un botón para revocarlas
- R-1160 Entrega los códigos de recuperación al activar MFA, no después
- R-1161 No fuerces rotación periodica de contrasena sin evidencia de compromiso
- R-1162 Notifica eventos de seguridad con detalle accionable, no avisos vagos
- R-1163 No bloquees pegar ni gestores de contrasena en campos de autenticación
- R-1164 Explica en lenguaje claro que protege cada ajuste, sin jerga técnica
- R-1165 Exige reautenticación y confirma por email ante cambios criticos