7.1 Principios de Seguridad
¡Prepárate!
- Entenderás el Principio del Privilegio Mínimo. - Sabrás por qué iniciar
sesión como
rootestá prohibido corporativamente. - Aprenderás la técnica LFCS para asegurar físicamente el servidor poniéndole candado a GRUB.
1. La Filosofía “Zero Trust” (Confianza Cero)
Sección titulada “1. La Filosofía “Zero Trust” (Confianza Cero)"En el pasado, la seguridad consistía en poner un cortafuegos en el router de la empresa, y asumir que todas las computadoras de dentro de la oficina (la Intranet) eran amigas de total y absoluta confianza. Hoy en día, un empleado enchufa un USB infectado en su portátil de RRHH, y el virus viaja por la Intranet amiga asaltando libremente todos los servidores de bases de datos de la empresa sin oposición.
Zero Trust significa que tu servidor Debian no confía ni en internet, ni en los demás servidores de la oficina de al lado, ni en los propios usuarios que tienen cuenta en la máquina.
Regla 1: El Principio del Mínimo Privilegio
Sección titulada “Regla 1: El Principio del Mínimo Privilegio"Si creas una cuenta de usuario para que un humano haga copias de seguridad de la carpeta /var/www/, ese usuario debería recibir permiso de lectura, pero no permiso de escritura, ni permisos para entrar a las carpetas de correos de sus compañeros.
Si hackean la contraseña de ese usuario humano, el hacker solo podrá leer la web, mitigando en un 99% el desastre.
Regla 2: La Muerte del inicio de sesión Root
Sección titulada “Regla 2: La Muerte del inicio de sesión Root"Jamás, en todo este curso de 30 horas, se te ha pedido abrir tu PuTTY / Terminal e iniciar sesión escribiendo de usuario root.
A los hackers les encantan los sistemas Linux que permiten loguearse como administrador por SSH, porque ya saben que el nombre de usuario es root, así que dedican todos sus diccionarios de ataque automático a adivinar únicamente tu contraseña.
Al iniciar sesión con un usuario normal como jramma y emplear sudo intermitentemente, fuerzas al hacker a tener que adivinar dos secretos letales: tú nombre de usuario y tú contraseña para lograr un brecha.
2. Defensa Física Extrema (Candado a GRUB)
Sección titulada “2. Defensa Física Extrema (Candado a GRUB)"¿Recuerdas el Módulo 4: Arranque? Allí te enseñé a salvar tu propia vida: si olvidabas la contraseña del servidor, en la pantalla de GRUB pulsabas la tecla e, inyectabas init=/bin/bash y Linux te abría una terminal mágica de Root perdonándote todas las contraseñas.
Esta táctica, aunque es magia pura para Sysadmins legales que olvidan claves, es un Ataque Físico Crítico si lo usa un vigilante jurado de tu empresa al que echan a las 3:00 am, se cuela en la sala de servidores armando con un teclado viejo de 5 dólares, y te revienta el disco duro usando ese mismo viejo truco del init=/bin/bash.
Para aprobar el rescate pero blindar el asalto físico en el examen LFCS, hay que ponerle una contraseña al gestor de arranque GRUB.
1. Generar el Hash Imposible
Sección titulada “1. Generar el Hash Imposible"GRUB es un programa tonto sin base de datos. Necesita guardar la contraseña cifrada en un archivo.
# Escribe este comando y teclea una clave que jamás olvidarásgrub-mkpasswd-pbkdf2La consola te escupirá una llave gigantesca asombrosamente larga cifrada hiper-segura que empieza típicamente por grub.pbkdf2.sha512... cópiala en tu portapapeles.
2. Inyectar el Hash en la Configuración
Sección titulada “2. Inyectar el Hash en la Configuración"# Vamos a los scripts de forja del menú de GRUBsudo nano /etc/grub.d/40_customAl final del fichero, debajo de todas las líneas, añade estas dos, estableciendo al usuario general histórico root (no confundir con el del kernel, esto es solo local de grub) y pegando tu cadena gigante generada antes.
set superusers="root"password_pbkdf2 root grub.pbkdf2.sha512...[PEGATULAAAAAAAAAAARGOHASH AQUI]...3. Forjar la Espada
Sección titulada “3. Forjar la Espada"Como aprendimos en el Módulo 4, editar cosas de grub en archivos de texto no hace literalmente nada al gestor binario ubicado en el metal. Actualiza el binario:
sudo update-grub¡Listo! A partir de mañana, si encendemos el servidor y seleccionamos arrancar “Debian”, el PC nos dejará continuar con normalidad en silencio. PERO, si alguien malicioso (o tú mismo) decide en el menú presionar la tecla e de “Editar” en un intento de manipular e inyectar un bash de emergencia sin candados, GRUB se negará exigiéndole escribir el súper usuario (root) y la súper contraseña física que indicaste, parando al hacker local en seco.
Comprueba tus conocimientos
Sección titulada “Comprueba tus conocimientos"-
Tu gerente quiere justificar una partida de presupuesto para aislar los servidores en una “VLAN” apartada de los ordenadores del departamento de Recursos Humanos. Te pregunta por qué se hace esto si ambos departamentos están bajo el mismo techo, y afirmas que es un mecanismo derivado de la filosofía Zero Trust. ¿En qué consiste puramente el modelo Zero Trust frente a las redes internas a la hora de levantar muros?
-
Hemos protegido férreamente nuestro servidor corporativo generando un hash invencible de 512 bits lanzando el generador
grub-mkpasswd-pbkdf2. Acto seguido, hemos abierto como sysadmins el generador estático personalizable anexando la cláusula candado al inicio editandonano /etc/grub.d/40_custom. Una vez guardado el fichero estamos satisfechos y nos vamos al Starbucks a seguir trabajando. Un chico de mantenimiento del banco nos la vuelve a liar al de media hora colándose físicamente al servidor usando el truco de la teclae. ¡Has fallado! ¿Por qué? -
Conoces profundamente el Principio de Mínimo Privilegio. Tienes que conceder permisos a un Analista de Datos recién llegado para que compruebe los logs generados en bruto en la ruta
/var/log/app_financiera/. Un viejo administrador te dice “es super fácil, métele a ese usuario los permisos completos del grupo root y así podrá bucear por todas y cualquiera de las carpetas de log habidas y por haber sin molestarte el fin de semana por falta de permisos”. Evalúa esta aserción según los principios Sysadmin LFCS.