Quién, qué y qué pasó
Sin bitácoras no hay forma de saber qué pasó. Al terminar sabrás leer un intento de ataque en los registros y comprobar que nadie cambió tus archivos.
Primero, la idea completa
Mira el video entero o salta a la parte que quieras repasar. Después, cada idea tiene su propia escena para tocarla.
Autenticación, autorización y auditoría
En cualquier situación de seguridad deben estar tres elementos esenciales, conocidos como AAA: autenticación (quién eres), autorización (qué puedes hacer) y auditoría (qué hiciste). Si falta cualquiera de los tres, la seguridad no está completa.
Autenticación
La autenticación es el proceso con el que el sistema operativo determina la identidad de quien accede. Se hace con al menos uno de tres medios:
- Saber: algo que solo el usuario sabe. Es lo predominante hoy: contraseñas y frases, preguntas personales para recuperar una cuenta («el nombre de tu primera escuela») o una contraseña de un solo uso (OTP) enviada a tu correo, porque se supone que solo tú sabes la contraseña del correo.
- Tener: un objeto físico, como una tarjeta de proximidad para una puerta, o un dispositivo que calcula un número único según la hora y que el servidor puede verificar haciendo el mismo cálculo (TOTP, Time-based One-Time Password). Hoy esos dispositivos son aplicaciones de celular que siguen el estándar RFC 6238 de la IETF.
- Ser: la biometría, es decir, características físicas que distinguen a cada persona: huella digital, iris, rostro o voz.
En sistemas de alta seguridad se combinan: una puerta con código y tarjeta, un sitio web con usuario, contraseña y un SMS al celular, o un cajero automático con tarjeta y código personal.
Arma un inicio de sesión eligiendo métodos. ¿De qué tipo es cada uno y cuántos factores distintos combinas?
Un código TOTP real: el celular y el servidor comparten un secreto y calculan el mismo número con la hora. Desfasa el reloj del celular.
Autorización
La autorización concede a un usuario ya autenticado el permiso de hacer una acción (un derecho) sobre un elemento del sistema (un objeto).
- Un derecho de acceso es la habilidad de ejecutar una operación sobre un objeto.
- Un dominio es una colección de derechos de acceso, en pares (objeto, derecho).
- La asociación a un dominio puede ser estática o dinámica, es decir, cambiar de dominio, como hace
sudo. - Lo usual es un dominio por usuario; también puede haber dominios por proceso, definiendo roles: un programa asociado a un conjunto de derechos.
- La matriz de acceso muestra todos los dominios: en las filas los dominios, en las columnas los objetos y en cada celda el acceso. Se implementa con listas de control de acceso (ACL), con capacidades o con sistemas como SELinux.
- Las reglas generales se llaman políticas de seguridad, por ejemplo políticas militares o comerciales.
Una matriz de acceso. Léela por columnas y tienes las ACL de cada objeto; léela por filas y tienes las capacidades de cada dominio.
Auditoría y bitácoras
La auditoría permite el análisis post mortem de un incidente, encontrar oportunidades de mejora al revisar las bitácoras, detectar ataques en curso si es constante y deducir responsabilidades. Una regla: las bitácoras no deben guardar información sensible. Herramientas como tripwire verifican que los archivos importantes no hayan cambiado comparando sus huellas con una base guardada.
| Medio | A favor | En contra |
|---|---|---|
| Texto | lo más común y fácil de implementar | hay que cuidar el rendimiento y la concurrencia |
| Base de datos | mejor estructura para análisis y reportes, mejor concurrencia | una capa más de software, consultas que interfieren con la operación, mantenimiento |
| Servicio del sistema | registro eficiente para el proceso, bitácora remota posible, en texto o base de datos | depende del servicio, como syslog |
Las bitácoras también se mantienen: se respaldan, se libera espacio y se hace de forma constante con mecanismos automáticos, en cualquier medio. En Linux lo hace logrotate.
Antes de leer la respuesta
Tu turno: investiga el ataque
Anoche alguien intentó entrar al servidor. Investiga en la bitácora de autenticación cuántos intentos fallaron y desde dónde vino la mayoría, comprueba con las huellas guardadas si algún programa fue modificado y deja las bitácoras rotadas.
Comprueba lo que entendiste
Cada respuesta incorrecta explica por qué parece correcta y en qué falla.