TIMIFY es un sistema de reserva de citas y gestión de recursos para empresas y equipos de trabajo.
Para los proveedores de servicios, manejar las cuentas y la información de los clientes es una gran responsabilidad, y proteger su seguridad es una batalla continua contra los nuevos tipos de ataques y las nuevas tecnologías.
En TIMIFY trabajamos constantemente para asegurarnos de que nuestras soluciones van más allá de las medidas de seguridad recomendadas, algo que proporciona tranquilidad a nuestros clientes cuando usan nuestro sistema para su negocio.
Aunque han de tenerse en cuenta los riesgos de seguridad que pueden amenazar todos los aspectos de un negocio, este artículo se centra específicamente en un problema conocido como “pérdida de autenticación”.
Esto se refiere a un ataque que intenta aprovecharse de la mala autenticación de usuario y las funciones de gestión de sesiones para robar la identidad del usuario real y su acceso al sistema y a los datos.
El Proyecto Abierto de Seguridad en Aplicaciones Web (OWASP por sus siglas en inglés), una organización líder que trabaja para mejorar la seguridad de los programas informáticos, sitúa la pérdida de autenticación en el puesto número dos de la lista de las mayores amenazas a los sistemas informáticos, afirmando que su prevalencia suele deberse al “al diseño y la implementación de la mayoría de los controles de acceso”.
“Una vez que la sesión autenticada ha sido establecida, el identificador de sesión (o token) es temporalmente equivalente al método de autenticación más seguro usado por la aplicación, como nombre de usuario y contraseña, frase de contraseña, contraseñas de un solo uso (OTP), certificados digitales de clientes, smartcards o biometría (como huellas digitales o la retina del ojo)”
– OWASP Session Management Cheat Sheet
Para ayudar a reducir esta amenaza para los clientes de TIMIFY, hemos lanzado dos nuevas funciones que deben usarse conjuntamente para mejorar la seguridad de la gestión de sesiones contra los ataques.
Esto te permite establecer cuánto tiempo tiene validez la identificación de un usuario en una sesión altamente sensible antes de solicitarle que vuelva a iniciar sesión, aunque haya estado usando el sistema de forma continua.
Para las sesiones de los usuarios, las buenas prácticas de seguridad sugieren que deberían ser lo más cortas posibles para minimizar la ventana de oportunidad que tienen los atacantes para acceder a sus cuentas (nuestra duración por defecto son 48 horas).
Los límites de tiempo son fáciles de configurar y se pueden ajustar por días, horas o minutos.
Los siguientes ejemplos explican lo fácil que es aprovecharse de una duración de sesión mal implementada.
Un usuario en un dispositivo público o compartido inicia sesión en TIMIFY. Cuando termina, cierra el navegador. Sin embargo, si la duración de la sesión es larga, es posible que un atacante pueda continuar con la sesión con solo volver a abrir el navegador.
Aunque el usuario haga clic en el botón de cerrar sesión antes de abandonar el dispositivo, si la sesión es larga, el identificador de sesión continúa existiendo y se podría acceder desde cualquier sitio sin necesidad de una nueva autenticación.
Para secuestrar una sesión, una persona ni siquiera necesita acceder a tu dispositivo físicamente. Usar TIMIFY con una señal de wifi pública o insegura le brinda al atacante la oportunidad de interceptar tu navegador o cookies de internet y usar esto para acceder a tu sesión sin necesidad de volver a autenticarse.
Como comentamos antes, si la sesión es larga, la ventana de oportunidad del atacante para obtener acceso será más larga.
Además de reducir la duración de las sesiones, TIMIFY te permite mejorar aún más la seguridad con la opción de forzar el cierre de sesión tras un periodo de inactividad.
Tras un determinado periodo de inactividad, se les pedirá a los usuarios que confirmen si siguen usando su cuenta. Si no responden, la sesión se cerrará.
Esto te protege contra los atacantes que intenten acceder a tu sistema en un dispositivo donde se ha iniciado sesión y que ha sido desatendido durante un momento.
Es algo que puede resultar muy relevante para los proveedores de servicios, ya que los empleados suelen usar dispositivos portátiles o compartidos mientras ofrecen sus servicios y hablan con otras personas.
El tiempo tras el cual se debería cerrar una sesión inactiva depende de la naturaleza de la información que hay en tu sistema, pero OWASP nos da el siguiente consejo:
“OWASP recomienda a los creadores de aplicaciones que la sesión se cierre por inactividad tras un periodo de tiempo corto (entre 2 y 5 minutos) para aplicaciones que manejan información de alto riesgo, como información financiera. Para aplicaciones con menos riesgo, considera aceptable que la sesión se cierre tras un periodo de inactividad de entre 15 y 30 minutos.”
– Auth0 blog - Balance User Experience and Security to Retain Customers
Los ejemplos siguientes muestran cómo no asignar un cierre de sesión por inactividad puede ser aprovechado por los atacantes rápidamente.
Un fisioterapeuta puede tener un portátil o una tablet en una sala de tratamientos para tener la información de su paciente a mano, pero deja el dispositivo desatendido frecuentemente mientras atiende a otros pacientes o va a buscar material.
Del mismo modo, se puede acceder a las computadoras de una oficina diáfana, una oficina compartida o una zona de recepción cuando se quedan desatendidas porque los empleados van a recibir a alguien, a la cocina o al baño.
En solo unos instantes, un atacante puede controlar el dispositivo y acceder a la información con los datos de un usuario autorizado o robar los datos de acceso para usarlos después.
Un portátil de trabajo puede quedar olvidado en un tren o en una cafetería o también puede ser robado.
Si no hay un cierre de sesión por inactividad establecido, un atacante podría llevarse tu dispositivo y acceder a tu cuenta de TIMIFY más adelante cuando no esté en un lugar público.
Con un periodo corto de cierre de sesión por inactividad, la ventana de oportunidad es muy pequeña y hace que sea muy arriesgado para un atacante actuar en público.
Puede que a los equipos les resulte frustrante tener que cerrar su sesión con regularidad y volver a introducir sus datos.
Es una petición bastante común en las aplicaciones para móviles y tablets de TIMIFY, donde se obliga a los usuarios a iniciar sesión cada vez que vuelven a abrir una aplicación, debido al creciente riesgo que supone la portabilidad.
Por lo tanto, es crucial hacer entender al personal por qué se han implementado estas nuevas funciones.
Consulta con tus expertos de seguridad cuál sería una duración razonable de la sesión y del tiempo de cierre de sesión por inactividad para encontrar un equilibrio entre la experiencia de los usuarios y la seguridad.
Asegúrate de que los empleados comprenden que combinar medidas sencillas como la duración reducida de las sesiones y el cierre de sesión por inactividad es altamente efectivo contra los ataques de pérdida de autenticación.
El pequeño inconveniente de tener que iniciar sesión varias veces no se puede comparar con el daño que haría una filtración de datos al negocio, a su reputación y a sus clientes.
No esperes más: ponte en contacto con nuestro equipo en TIMIFY cuanto antes para obtener más información y consejos sobre cómo optimizar el control de la gestión de sesiones.
TIMIFY es líder mundial en software como servicio (Saas) de programación y gestión de recursos. Es conocido por su tecnología empresarial sofisticada, segura y personalizable. Más de 45.000 usuarios al rededor del mundo gestionan sus citas y recursos con TIMIFY.