🌀 A3: sensitive data exposure
Apuntes
- Debemos ser consientes que información estamos exponiendo de nuestros usuarios
- Nuestro frontend, está expuesto a ser visible a través JS, por lo cual no debemos enviar ningún dato que sea sensible
- Una forma fácil de caer es abusar de la flexibilidad de los tokens JWT para almacenar más información que no necesitamos
- Todos los datos sensibles deben ser enviados y ser recibidos por parte del frontend a través de un endpoint para mandarlos de formas seguras
¿Cuánto tiempo deberÃa durar un access_token?
- Mientras tiempo sea visible el access_token más estamos exponiendo para que lo puedan usar con fines maliciosos y atacantes lo puedan aprovechar
- OWASP recomienda que las sesiones no deberÃan ser almacenadas por largos periodos de tiempo
- Entre más cercano a 0 será mejor, por ello sessionStorage es un gran aliado de guardar tokens, ya que al cerrar todas las pestañas o toda la ventana la sesión desaparecerá por completo
- Desventaja: Cada vez que entre a la aplicación deberá de realizar un login, cosa que impacta en la experiencia de usuario
- NextAuth nos da unos valores por defecto que si bien no están mal se podrÃan rebajar para mejorarlos
- La recomendación es tener el tiempo entre 15 a 30 minutos
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.