Ciberseguridad
Controles de acceso
Habilidades y conocimientos básicos / Fundamentos de seguridad
Controles de acceso
Identificar, autenticar y autorizar son pasos distintos. Que alguien haya iniciado sesión no le da permiso para tocar cualquier recurso; el guardián de la puerta también necesita revisar las habitaciones.
Controles de seguridad que se encargan del acceso, autorización y responsabilidad de la información. El control de acceso contribuye a CIA; debe diseñarse junto con disponibilidad y usabilidad, no las garantiza por sí solo.
Estos sistemas suelen separarse en tres funciones:
- Autenticación
- Autorización
- Responsabilidad
Autenticación
La identificación declara quién se presenta; la autenticación comprueba evidencia de esa identidad. La forma de responder a estas preguntas depende del sistema, empresa u organización pero en general se basan en tres factores, sin que la categoría establezca por sí sola un orden de seguridad:
- Conocimiento
- Un secreto que la persona conoce, como una contraseña. No tomo preguntas de seguridad como alternativa recomendada: NIST SP 800-63B-4 no permite solicitarlas como autenticación basada en conocimiento
- Propiedad
- Referirse a algo que el usuario posee, como un autenticador que genera códigos OTP. El código es su salida; no es el dispositivo.
- Características
- Algo que el usuario es. Como la biométrica. Por ejemplo el escaner de huella digital en el teléfono.
Para evitar la frustación que trae el tener que identificarse, existe el SSO (Single sign-on). Una tecnología que combina diferentes sesiones de inicio en una. Esto hace más expedito el acceso a los recursos. Aunque esto es más conveniente, adhiere una debilidad: identificar a la persona incorrecta le otorga más accesos. Para esto, existe el MFA (Multi-factor authentication). Con ello, además se agrega una capa adicional de seguridad donde se requiere de una segunda (o más) forma de corroborar quién es el usuario.
SSO y MFA
SSO puede mejorar experiencia y facilitar la gestión central de autenticación. Coste y seguridad dependen del diseño y la operación; no son ganancias automáticas. Evitar múltiples autenticaciones y contraseñas independientes es uno de sus beneficios. Reutilizar una contraseña entre servicios introduce otro problema: una filtración puede afectar a varios.
SSO permite acceder a varios servicios mediante una autenticación previa y relaciones de confianza. La federación puede usar SAML u OpenID Connect. LDAP es un protocolo de acceso a directorios, no la variante «interna» de SAML; tampoco todos los tokens van cifrados. Firma, cifrado y transporte protegido cumplen funciones distintas. OpenID Foundation: cómo funciona OIDC.
Si bien tiene sus ventajas, también introduce la vulnerabilidad de que si alguien accede, tendra acceso a más cuentas.
Es ahí donde se introduce el MFA o autenticación de multiples factores. Esto combina factores de distintas categorías; pedir dos secretos de conocimiento no constituye MFA. Los cajeros automáticos son un buen ejemplo de ello. Ingresas la tarjeta (propiedad) y luego ingresas la contraseña (conocimiento).
Autorización
El siguiente proceso se encarga de qué pueden hacer. La autorización utiliza nuevamente el principio del menor privilegio. El acceso sólo debe durar mientras se necesita. Los sistemas también son influenciados por la idea de la segregación de funciones. La segregación de funciones distribuye tareas o permisos incompatibles entre personas o roles, por ejemplo solicitar y aprobar un pago. Busca reducir errores y abuso; no se limita a otorgar pocos privilegios.
Responsabilidad
Se trata de auditar y monitorear el acceso a los sistemas. Analizar y auditar dichos logs es útil para encontrar irregularidades.
Cada vez que un usuario accede al sistema, se inicia una sesión. Una sesión es una secuencia de requisitos y respuestas básicos de autentificación asociados al mismo usuario. Estos logs, son como un libro de anotaciones donde se ingresa toda esta información, el cómo, cuándo y qué hizo.
En una aplicación web con sesiones mantenidas mediante cookies podemos encontrar este recorrido; no es universal a todos los sistemas:
- La primera es la creación de una ID de sesión; el identificador referencia un estado de sesión. No demuestra por sí mismo qué equipo lo presenta; el cierre del navegador tampoco garantiza invalidación en el servidor.
- La segunda es el intercambio de las cookies entre el servidor y el equipo del usuario. Una cookie de sesión, puede transportar un identificador. La duración e invalidación deben controlarse también en el servidor. Cuando las cookies son intercambiadas, la ID es leida para determinar que información debe mostrarte el sitio web.
Una cookie puede transportar el identificador de sesión para que el servidor reconozca las solicitudes posteriores. Eso no garantiza por sí solo que las credenciales o la sesión estén protegidas. Si un atacante obtiene un identificador válido, podría suplantar la sesión: es el llamado secuestro de sesión.
Marcos de autorización
- MAC
- DAC
- RBAC
MAC
Control de acceso obligatorio. Aplica políticas y etiquetas administradas centralmente; no exige que cada autorización se conceda manualmente.
DAC
Control de acceso discrecional. El propietario decide los niveles de acceso. Como por ejemplo cuando el propietario comparte archivos en google drive y escoge quienes son comentadores, editores, solo lectura, etc.
RBAC
Se determina según la función que tiene una persona dentro de una organización.
Véase también
- Controles de seguridad — Relación entre controles de acceso y mínimo privilegio.
Referencia de factores y restricciones: NIST SP 800-63B-4.
+----------------------------------------+
| Floure & |
| Tachibana's guild |
| [Hikari · Nozomi] |
| SEAL: sha256/12: c3a14bcfa8ce |
| STATUS: LITURGY_IN_PROGRESS |
+----------------------------------------+