Bastille, a tool for SysAdmins
Publicado: junio 5, 2009 Archivado en: General | Tags: Bastille, Hardening, security, Sistemas, SysAdmin, tools Deja un comentario »INTRODUCCIÓN
En este artículo aprenderemos a manejar Bastille, desde su instalación y configuración exhaustivamente para proporcionar una mayor seguridad de nuestro sistema Linux. Bastille es una de las tantas herramientas de hardening con el que ahorramos bastante tiempo desde la configuración de cada archivo individual hasta la programación para el fortalecimiento del mismo pudiendo ejecutarse bajo Linux, HP-UX e incluso MacOS X. Con ella podemos realizar bastantes tareas como deshabilitar servicios y puertos innecesarios. Además, cabe decir que, Bastille es un conjunto de scripts en Perl que toma la información que le indiquemos desde una set de preguntas y respuestas de las que ya comentaré a lo largo de este artículo desde una interfaz bastante amigable.
He aquí una lista de las características que nos ofrece Bastille, pero que puede variar a medida de que aparezcan nuevas versiones.
NOTA: Este artículo ha sido elaborado con la versión 3.0.9 de Bastille.
- Aplicar permisos restrictivos en las utilidades de administrador: Permite tan solo a root leer y ejecutar las utilidades habituales de administrador como ifconfig, linuxconf, ping, traceroute y runlevel, deshabilitando el estado del SUID root para estas herramientas , de modo que los usuarios no fueran root, no pudieran usarlo.
- Deshabilitar los protocolos r: Los protocolos r permiten a los usuarios entrar en sistemas remotos usando una autenticación en base a la IP. Esta autenticación permite sólo a determinadas IP acceder remotamente a un sistema. Dado que esta autenticación se basa en la dirección IP, un intruso que ha descubierto una IP autorizada puede crear paquetes camuflados que parecen provenir de ese sistema autorizado. (Véase como ejemplo: RPC)
- Implementar caducidad de contraseñas: Los sistemas Linux por defecto permiten contraseñas que expiran después de 99.999 días. Dado que esto es demasiado en un entorno seguro, Bastille ofrece cambiar la expiración de la contraseña a 180 días. Estas configuraciones están escritas en el archivo /etc/login.defs que pueden ser modificadas posteriormente con un editor cualquiera.
- Deshabilitar Control-Alt-Supr para reiniciar: Esto no permite reiniciar la máquina, algo bastante esencial si nos referimos a su seguridad física.
- Optimizar las envolturas TCP: Esta elección modifica el archivo inetd.conf y el archivo /etc/hosts.allow de modo que inetd debe contactar con las envolturas TCP siempre que reciba una petición en lugar de ejecutar automáticamente el servicio solicitado. Las envolturas TCP determinarán si la dirección IP solicitante está autorizada para ejecutar el servicio en particular. Si la petición no está permitida, se deniega y el intento se registra. Aunque la autenticación basada en IP puede ser vulnerable, esta optimización añade una capa de seguridad en el proceso. No está recomendado para la mayoría de escenarios.
- Añadir mensajes de autorización de uso: Estos mensajes aparecen automáticamente cuando alguien accede en el sistema.
- Limitar el uso de los recursos del sistema: Si limita el uso de los recursos del sistema, puede reducir las oportunidades de fallo de un servidor a un ataque DoS. Si elige limitar el uso de los recursos del sistema en Bastille, se producirán los siguientes cambios:
- El tamaño de archivos se limita a 40 MB
- Cada usuario se limita a 150 procesos.
- El número de archivos del core permitidos por usuario se configura a cero. Los archivos del core se usan para tratar problemas del sistema. Son grandes y utilizables si se obtiene el control de los mismos: pueden crecer y consumir su sistema de archivos.
- Restringir el acceso a consola: Cualquiera con acceso a la consola tiene derechos especiales, como montar un CD-ROM. Bastille puede especificar qué cuentas de usuario tienen acceso para entrar por consola.
- Registro remoto y adicional: Dos registros adicionales podrían añadirse a /var/log:
- /var/log/kernel (mensajes del kernel)
- /var/log/syslog (mensajes de error y avisos) Puede también hacer el registro de un host remoto si existe.
- Configuración de cuenta de procesos: Le permite registrar los comandos de todos los usuarios. También registra cuando fueron ejecutados los comandos. Este archivo de registro son útiles para el seguimiento de un intruso en un sistema, pero el archivo puede llegar rápidamente a ser muy grande. Si se tiene acceso root, lógicamente puede ser eliminado.
- Desactivar NFS y Samba: Le permite deshabilitar los servicios NFS y Samba.
Samba proporciona un sistema de archivos compartido. A menos que el cortafuegos se configure para bloquear los paquetes o el administrador asegure estos servicios. Bastille recomienda desactivarlos.
- Fortalecer el servidor Web Apache: Debería desactivarse si el servicio (httpd) no es utilizado.
IMPLEMENTACIÓN
Bajo Linux, Bastille es ofrecida desde los repositorios de nuestra distribución, pero si por algún caso no la estuviera, tendríamos la posibilidad de descargarla desde su propia página oficial. Aunque en este artículo nos centraremos en la instalación desde su propio código fuente, así qué ¡allá vamos! Leer el resto de esta entrada »
