Mandrake Linux 8.2: Manual de Referencia | ||
---|---|---|
Anterior | Capítulo 12. msec – Herramientas de seguridad de Mandrake | Siguiente |
Lo que sigue es la descripción de las características diferentes de seguridad que brinda cada nivel al sistema. Estas características son de dos tipos: refuerzo del sistema que cambia al sistema, y verificaciones que se corren periódicamente que no cambian el sistema.
El tipo refuerzo del sistema cambia los permisos, dueños, grupos de los archivos y directorios en el sistema de acuerdo al nivel de seguridad.
También cambia los archivos de configuración para respetar el nivel de seguridad definido y vuelve a lanzar los programas necesarios para tomar en cuenta los cambios. El tipo refuerzo del sistema se ejecuta cada hora. Todos los cambios se registran en el syslog.
Característica \ Nivel | 0 | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|---|
umask para los usuarios | 002 | 002 | 002 | 002 | 077 | 077 |
umask para root | 002 | 002 | 002 | 002 | 002 | 077 |
shell sin contraseña | sí | no | no | no | no | no |
autorizados a conectar a X | todos | local | local | nadie | nadie | nadie |
X escucha conexiones de | todos | todos | todos | todos | local | local |
tiempo de espera del shell | ninguno | ninguno | ninguno | ninguno | 3600 | 900 |
su sólo para el grupo wheel | no | no | no | no | no | sí |
tamaño de la historia del shell | 10 | 10 | ||||
sulogin en nivel de ejecución 1 | sí | sí | ||||
prohibir lista de usuarios en conexión gráfica | no | no | no | no | sí | sí |
ignorar paquetes ICMP echo | no | no | no | no | sí | sí |
ignorar mensajes de error falsos de ICMP | no | no | no | no | sí | sí |
conexión directa de root | sí | sí | sí | sí | no | no |
habilitar libsafe | no | no | no | no | sí | sí |
prohibir at y crontab a los usuarios | no | no | no | no | sí | sí |
envejecimiento de contraseñas (días) | 60 | 30 | ||||
prohibir autologin | no | no | no | sí | sí | sí |
permitir mensajes (conexiones modo texto) | todos | todos | todos | local | local | ninguno |
. en el $PATH | sí | sí | no | no | no | no |
advertencias en /var/log/security.log | no | sí | sí | sí | sí | |
advertir directamente sobre tty | no | no | sí | sí | sí | sí |
advertencias en syslog | no | no | sí | sí | sí | sí |
advertencias por correo-e | no | no | sí | sí | sí | sí |
reportar todos los eventos del sistema por /dev/tty12 | no | no | no | sí | sí | sí |
Sólo root puede hacer ctrl-alt-del | no | no | no | no | sí | sí |
servicios desconocidos desactivados | no | no | no | no | sí | sí |
garantizar conexión a | todos | todos | todos | todos | local | nadie |
Simplemente configura la umask para los usuarios normales al valor correspondiente al nivel de seguridad.
Lo mismo, pero para root.
Se garantiza el acceso a las cuentas sin pedir una contraseña.
todos: cualquiera desde cualquier lugar puede abrir una ventana X en la pantalla suya.
local: sólo las personas conectadas en localhost pueden abrir una ventana X en la pantalla suya.
nadie: nadie puede hacer tal cosa.
todos: el servidor X escucha conexiones provenientes por TCP.
local: el servidor X escucha conexiones provenientes del socket UNIX.
Si el usuario está inactivo durante una cierta cantidad de segundos, el shell sale.
Sólo los miembros del grupo wheel pueden utilizar su para tomar la identidad de root.
La cantidad de comandos que se almacenan cuando se sale del shell.
sulogin se utiliza para proteger el acceso al nivel de inicio de usuario único (Usted debe ingresar la contraseña de root para tener acceso).
Evitar mostrar la lista de usuarios del sistema en KDM y GDM.
No responder a pedidos ping.
No manejar mensajes de error falsos de ICMP.
Permitir la conexión directa como root sin utilizar el programa su.
Habilitar la protección libsafe (sólo se activa si está instalado el paquete libsafe).
Los usuarios no puede utilizar los programas at y crontab. Sin embargo, root puede utilizarlos. Si desea autorizar sólo a algunos usuarios debe agregarlos, respectivamente, en /etc/at.allow y /etc/cron.allow.
Las contraseñas expiran luego de una cantidad fija de días; los usuarios necesitan cambiarlas antes de la fecha de expiración si no desean que se desactive sus respectivas cuentas.
Está prohibido el uso del programa autologin.
Si se configura en ninguno, no se muestran carteles. Si se configura en local, sólo se muestra un cartel de conexión en la consola. Si se configura en todos, se muestra un cartel de conexión en todos los prompts de conexión.
se agrega la entrada . a la variable de entorno $PATH, lo que permite una ejecución fácil de los programas en el directorio de trabajo corriente (también es, de alguna forma, un hueco de seguridad).
Cada advertencia generada por MSEC se registra en el archivo denominado /var/log/security.log.
Cada advertencia generada por la verificación diaria se imprime directamente sobre la consola corriente del usuario root.
Las advertencias generadas durante la verificación diaria se dirigen al servicio syslog.
Las advertencias generadas durante la verificación diaria también se envían a root por correo electrónico.
Durante la instalación de un paquete sólo se añaden los servicios por medio de chkconfig --add <servicio> si el nombre del servicio aparece en el archivo /etc/security/msec/server.
todos: todas las computadoras se pueden conectar a los puertos abiertos.
local: sólo el localhost se puede conectar a los puertos abiertos.
nadie: ninguna computadora puede conectarse a los puertos abiertos.
El paquete tcp wrappers garantiza esta protección. Si desea garantizar acceso a un servicio y ninguno tiene acceso garantizado, utilice el archivo /etc/hosts.allow. Por ejemplo, si desea garantizar las conexiones por ssh desde cualquier lugar, agregue la línea siguiente a /etc/hosts.allow:
sshd: ALL |
Si el nivel de seguridad es mayor que 0, las verificaciones se ejecutan cada noche.
Característica \ Nivel | 0 | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|---|
verif. global de seguridad | no | sí | sí | sí | sí | sí |
verif. archivos suid root | no | no | sí | sí | sí | sí |
verif. MD5 de archivos suid root | no | no | sí | sí | sí | sí |
verif. archivos que se pueden escribir | no | no | sí | sí | sí | sí |
verif. permisos | no | no | no | sí | sí | sí |
verif. archivos grupo suid | no | no | sí | sí | sí | sí |
verif. archivos sin dueño | no | no | no | no | sí | sí |
verif. promiscua | no | no | no | no | sí | sí |
verif. puertos abiertos | no | no | no | sí | sí | sí |
verif. integridad de passwd | no | no | no | sí | sí | sí |
verif. integridad de shadow | no | no | no | sí | sí | sí |
verif. integridad de base de datos RPM | no | no | no | sí | sí | sí |
Note que siete de las doce verificaciones periódicas pueden detectar cambios en el sistema. Las mismas almacenan la configuración del sistema durante la última verificación (hace un día) y le advierten de cualquier cambio que ocurrió en los archivos ubicados en el directorio /var/log/security/ desde ese momento. Estas verificaciones son:
verif. archivos suid root
verif. MD5 de archivos suid root
verif. archivos que se pueden escribir
verif. archivos sgid
verif. archivos sin dueño
verif. puertos abiertos
verif. integridad de la base de datos RPM
"sist. de archivos NFS exportados globalmente": esto se considera inseguro y no hay restricción en cuanto a quién puede montar estos sistemas de archivos.
"montajes NFS sin nosuid": estos sistemas de archivos se exportan sin la opción nosuid la que prohíbe que funcionen los programas suid en la máquina.
"Los archivos de confianza de hosts contienen el signo +": eso significa que uno de /etc/hosts.equiv, /etc/shosts.equiv, /etc/hosts.lpd contiene los hosts desde los cuales se permite la conexión sin autenticación apropiada.
"Ejecutables que se encuentran en el archivo de alias": genera una advertencia, nombrando a los ejecutables que se corrieron a través de los archivos /etc/aliases y /etc/postfix/aliases.
Verifica archivos suid root nuevos o quitados en el sistema. Si se encuentran tales archivos se genera una lista de los mismos a modo de advertencia.
Verifica la firma MD5 de cada archivo suid root del sistema. Si la firma ha cambiado significa que se ha hecho una modificación a este programa, posiblemente una "puerta trasera". Entonces se genera una advertencia.
Verifica si en el sistema existen archivos que puede escribir todo el mundo. De ser así, genera una advertencia que contiene la lista de estos archivos molestos.
Verifica los permisos para algunos archivos especiales tales como .netrc o los archivos de configuración de los usuarios. También verifica los permisos en los directorios personales de los usuarios. Si los permisos son muy vagos o los dueños no son usuales, genera una advertencia.
Verifica archivos sgid nuevos o quitados en el sistema. Si se encuentran tales archivos, se genera una lista de los mismos a modo de advertencia.
Busca archivos cuyos dueños son usuarios o grupos desconocidos para el sistema. Si se encuentran tales archivos, se cambia automáticamente su dueño/grupo a nobody.nogroup.
Verifica cada tarjeta Ethernet para determinar si está en modo "promiscuo". Este modo permite que la tarjeta intercepte cada paquete que recibe, incluso aquellos que no están dirigidos a la misma. Esto puede significar que su máquina está corriendo un sniffer (sabueso). Note que esta verificación está configurada de manera tal para que ejecute cada minuto.
Genera una advertencia con todos los puertos abiertos.
Verifica que cada usuario tiene una contraseña (que no está vacía y que no es fácil de adivinar) y verifica que la misma esté "oculta".
Verifica que cada usuario en el archivo shadow tiene una contraseña (que no está vacía).
Verifica que no ha cambiado archivo alguno de los paquetes instalados y verifica que no se ha instalado/quitado/actualizado paquete alguno desde la última corrida.