Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Seguridad informtica
4 clases :
Revelacin (disclosure) : Acceso no autorizado a informacin Engao (deception) : Admisin de datos falsos Perturbacin (disruption) : Interrupcin o prevencin de correcta operacin Usurpacin : Control no autorizado de partes del sistema
Denegacin de servicio : inhibicin de servicio (usurpacin, papel soporte en engao). Retardo si es de corto plazo (caballos de troya).
Servicios de seguridad
Bsicos :
Confidencialidad (Privacidad) :
Mecanismos de control de accesos : Criptografa, ... Ley de proteccin de datos. Mecanismo de prevencin : gestin modificaciones autorizadas Mecanismos de deteccin Ataques de denegacin de servicio
Disponibilidad
Cimientos
Suposiciones : Elementos que se asume cumplen su funcin y en base a los cuales se deriva... Confianza
Una poltica de seguridad debe describir correctamente los estados seguros del sistema, y de una forma lo ms completa posible. Elementos de confianza de mecanismos de seguridad :
Cada uno est diseado para cubrir una o ms partes de la poltica de seguridad. La unin de todos ellos implementa todos los aspectos de la poltica de seguridad. Estn implementados correctamente. Son instalados y administrados correctamente.
proceso1 proceso2
Polticas y mecanismos
Plitica de seguridad: afirmaciones sobre lo que est y no est permitido.
Mecanismos de seguridad: mtodos, herramientas o procedimientos para implementar una poltica de seguridad. Objetivos de seguridad
Prevencin Deteccin Recuperacin
Formalmente, provee descripcin axiomtica de estados seguros y no seguros. Composicin de polticas diferentes.
Nivel de seguridad
Especificacin de comportamientos deseables y no deseables del sistema. Anlisis del diseo del hardware, software y otros elementos (humanos, fsicos) Argumentos o pruebas de que la implementacin, procedimientos operativos y de mantenimiento producirn el comportamiento especificado.
Aspectos operativos
Anlisis de riesgos
Anlisis de costes/beneficios
Leyes y costumbres
Aspectos humanos
Problemas organizacionales
Prdidas en seguridad versus prdidas sin seguridad Responsabilidades, autoridades Comparticin con otras tareas
Problemas humanos
Agentes externos, agentes internos Personal no formado Incorrecta utilizacin de mecanismos Ingeniera social Configuracin de sistema incorrecta
Elementos prgmaticos
Preocupaciones principales :
Evitar la prdida de datos. Autorizacin selectiva de acceso a datos. Privacidad. Asegurar una utilizacin equitativa y autorizada de recursos. Errores de programacin, Equivocaciones en la manipulacin del sistema, Accidentes, Mala suerte, Mal tiempo, Una persona mal intencionada y con medios....
Ejemplos :
Defensa : confidencialidad
Evaluacin de riesgos
Qu proteger. Frente a qu proteger. Tiempo, esfuerzo y dinero que se est dispuesto a invertir para una adecuada proteccin. 3 pasos :
Problemas fsicos :
Fenmenos naturales : incendios, inundaciones, terremotos,... Acceso a componentes fsicos del sistema : ordenador, consola de administracin, cables de red, etc. Errores en los programas. Utilizacin incorrecta por parte de los usuarios (educacin). Utilizacin fraudulenta del sistema. Principalmente, tres categoras :
Problemas lgicos :
Coste de la prdida. Probabilidad de prdida. Coste de la prevencin. Comparativas. Prioridades. Seguro = 1 / Utilizable. Mejores prcticas : recomendaciones, procedimientos y polticas generalmente aceptadas por los expertos en seguridad informtica
Polticas de seguridad
Roles :
Identificacin y justificacin de los elementos a proteger. Definir responsabilidades para dicha proteccin. Base de interpretacin y resolucin de conflictos.
Asignar propiedad a informacin y equipos. Enfocar la expresin de polticas de forma positiva. Recordar que empleados y usuarios son personas Educar a los usuarios. Responsabilidad debe conllevar autoridad. Conocer el primetro de seguridad (porttiles, PDAs, redes inalmbricas, ordenadores utilizados en casa, DVDs, discos extraibles, visitas, impresoras, copiadoras, fax,..) Decidir filosofa bsica (permitido lo no especificado o inversa) Niveles independientes y redundantes de defensa a varios niveles, con auditora y monitorizacin
Implementacin
Gestin de riesgos supone sentido comn. Uso de tecnologas y educacin de personas Mltiples niveles de defensa Priorizar Auditoras de cumplimiento de polticas. Problemas : Personal insuficiente (falta formacin, sobrecarga,..) Material insuficiente (inadecuacin recursos, sobrecarga,..) Organizacin insuficiente (asignacin responsabilidades y autoridades, conflictos de responsabilidades, tareas poco claras) Poltica insuficiente (riesgos no previstos, incompletud, conflictos de polticas, discordancia entre polticas y contexto)
Implementacin (II)
Respuestas a incidentes Definir que elementos se subcontratan y cmo. No se recomienda seguridad mediante oscuridad. Tecnologa : sistemas y criptografa.
Confinamiento :
Mquinas virtuales (qemu, java, etc) Cubos de arena (sandboxes) (Solaris containers; OpenBSD, NetBSD, Apple MACOSX 10.5 systrace...)
Mantenimiento
Actualizacin adecuada del software. Copias de Seguridad Gestin de contraseas (robustez, contraseas de una vez,....) Monitorizacin del sistema informtico :
Anlisis del registro de eventos del sistema Gestin de integridad del sistema de ficheros (Tripwire) Sistemas de deteccin de intrusiones : Local a partir del anlisis del registro de eventos (swatch) De red (NIDS) : deteccin de pautas de paquetes y de acceso a puertos UDP/TCP (Snort,...). Auditora de sistema y/o red (Bastille Linux, COPS, SATAN, Nessus,.....)
Contraseas dbiles o expuestas. Cuentas sin contrasea. Cuentas sin nombre : su "" Cuentas con uid=0, diferentes de root. Cuentas con gid=0, diferentes a las permitidas. Permisos de acceso de /etc/passwd modificados. Modificaciones de /etc/passwd. Caballos de troya :
NO poner el directorio en curso al principio de la variable PATH, sino siempre al FINAL. NUNCA incluirlo en PATH de root.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 32
Los permisos de ficheros es una de las barreras ms importantes en Unix : verificar los permisos de directorios y ficheros. Programas setuid/setgid :
Cualquier programa qu dispone de permisos setuid, principalmente de root, es una amenaza para la seguridad del sistema. Comprobar los programas que son setuid de root : /usr/bin/find / -user root -perm -4000 No escribir programas shell setuid, ni invocar el shell desde un programa setuid (verificar las rutinas de librera utilizadas). Utilizar el camino completo de acceso a ficheros. Sin permiso de lectura para otros. Evitar en lo posible realizar programas setuid de root.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 33
Riesgos en la red
Apertura de problemas a todas las conexiones que se pueden efectuar a travs de Internet y sus servicios. Evitar principalmente dos problemas :
Programas de red con errores : ping, finger, sendmail,... Ataques ligados al uso de paquetes IP :
Interceptar paquetes (Packet/Network Sniffing) : Espiar el contenido de los paquetes con herramientas de filtrado de paquetes como tcpdump. Substitucin paquetes (IP Spoofing) : Un tercer nodo modifica el contenido de los paquetes enviados entre otros dos. Tambin incluye las mquinas (suplantacin) que se hacen pasar por otras a la hora de establecer comunicaciones. Intromisin (Connection Hijacking) : El tercer nodo introduce nuevos paquetes en la comunicacin entre otros dos (introduccin de comandos en una conexin telnet).
Unai Arronategui
TEMA 20 - Seguridad
Pag. 34
/etc/hosts.equiv y ~/.rhosts :
Controlar su existencia y contenido. Problemas ligados, principalmente, con los accesos permitidos a travs de /etc/exports. Los mayores riesgos provienen de las mquinas clientes internas con accesos permitidos. Un acceso a root en una mquina cliente tiene formas de acceder al servidor NFS, aunque este no permita conexiones como root. No se aconseja su uso si existen dudas en cuanto a la confianza de los accesos al sistema. Mas segura es utilizar la sencilla tcnica del programa expect de conexin ftp del tema 19. O directamente utilizar LDAP con soporte TLS/SSL o Kerberos.
TEMA 20 - Seguridad
NFS :
NIS :
Unai Arronategui
Pag. 35
Existen muchas herramientas que ayudan en la deteccin de problemas de seguridad, algunas de dominio pblico. Algunos de ellos : Cops, Crack, Nmap, Nessus, Snort. COPS : Dispone de diferentes programas que testean (NO CORRIGEN) diferentes aspectos de seguridad en Unix. Cualquiera puede ejecutarlo. Algunos aspectos que verifica :
Permisos y modos de ficheros, directorios y dispositivos. Contraseas dbiles. Contenido, formato y seguridad de los ficheros passwd y group. Programas ejecutados en los ficheros de arranque del sistema y los ficheros crontab.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 36
Existencia de ficheros root setuid, la posibilidad de escribir en ellos, y si corresponden a programas shell. Verificacin CRC de ficheros importantes para notificar cualquier cambio efectuado en ellos. Posibilidad de escritura en directorios de usuarios y en sus ficheros de arranque (.profile, .cshrc, etc). Configuracin de conexin ftp annima. Varias verificaciones relacionadas con root : directorio en curso en PATH, un "+" en /etc/host.equiv, montajes NFS sin restricciones, asegurar la presencia de root en /etc/ftpusers, ... Utilizacin del sistema experto Kuang para anlisis ms profundo.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 37
Crack : busca contraseas Unix de 8 caracteres basada en la tcnica de encriptaje DES. Se puede ejecutar de forma remota. Nmap : Explorador de puertos de red. Verifica los puertos UDP y TCP que tienen servidores escuchando en un conjunto de mquinas. Algunos problemas que encuentra :
Open : puertos con servidores escuchando Unfiltered : puertos sin servidor en escucha. Filtered : filtrado por cortafuegos. No pueden ser verificados.
Diferentes mtodos, ms o menos retorcidos, para la exploracin. Algunos de ellos capaces de pasar algunos cortafuegos y evitar herramientas de deteccin. Capacidad de adivinar Sistema Operativo.
TEMA 20 - Seguridad
Unai Arronategui
Pag. 38
Se puede configurar como un sniffer, un capturador de paquetes o un Sistema de Deteccin de Intrusiones en la red (NIDS). Permite definir reglas de para capturar patrones de trfico y/o conexiones y, por otra parte, acciones a emprender en funcin de lo que detecta.
Servidor (nessud) encargado de efectuar las pruebas, Un programa cliente recoge los datos. Diseo modular con plugins que implementan diferentes verificaciones. Tiene ya +700.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 39
Provee modelo MAC mediante Control Forzado de Tipo (Type Enforcement), y Seguridad MultiNivel (MLS). El atributo de control de acceso bsico a los diferentes recursos del sistema es el contexto de seguridad:
Un nico contexto de seguridad en todos los objetos (ficheros, canales de comunicacin entre procesos, sockets, hosts, etc) y sujetos (procesos). Formado por 3 elementos: usuario, rol e identificadores de tipo (user:rol:type) Sinnimos: Domain, domain type, subject type, process type
Unai Arronategui
TEMA 20 - Seguridad
Todos los accesos deben estar habilitados explicitamente (no hay superusuario por defecto como en Unix clsico). No acceso por defecto Habilitar acceso :
allow
Regla allow (especifica acceso) de tipo sujeto user_t a tipo objeto bin_t. Clase del objeto file y permisos especificados entre llaves.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 41
RBAC: Roles tienen definidos dominios de transicin. DAC y MAC simultneos en Linux. Modo permisivo/modo forzado Necesita de atributos extendidos que proveen la mayor parte de sistemas de ficheros. Funcionamiento limitado con NFS Por defecto, en modo forzado, en Redhat (CentOS). Integrado en Debian en modo permisivo. Aadido a TrustedBSD y Darwin (Mac OS X)
TEMA 20 - Seguridad
Unai Arronategui
Pag. 42
AppArmor
Control de accesos basados en caminos a ficheros (Path Based Acces control) No requiere sistemas de ficheros con atributos extendidos Utiliza el camino a fichero como entidad de seguridad de primera. Ms fcil de usar: Modo aprendizaje. Suse y Ubuntu
Unai Arronategui
TEMA 20 - Seguridad
Pag. 43
Implementacin de soluciones
En base al nivel y la poltica de seguridad que se desea para el sistema informtico, e identificados los problemas, deben decidirse las medidas de seguridad a implementar, adaptadas a dicho contexto. Medidas a adoptar :
Mejorar la seguridad de las contraseas. Propiedades y permisos de ficheros aconsejados. Herramientas para mitigar problemas en los Sistemas de Ficheros. Algunas soluciones aportadas al control de las conexiones de red.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 44
Educar al usuario amablemente... Utilizacin del sistema shadow. Programas activos de control de contraseas .
Verifican que la contrasea introducida sigue ciertas reglas : ms de 5 caracteres, no corresponde a secuencias tpicas o nombres de usuarios,... En algunos casos, contienen un generador de contraseas que no permiten introducir contraseas a los usuarios sino que ofrecen una serie de contraseas aleatorias que el usuario puede elegir.
Caducidad de contraseas (incluido en el sistema shadow), con posibilidad de recordar contraseas antiguas (no se permiten).
Unai Arronategui
TEMA 20 - Seguridad
Pag. 45
Utilizacin peridica del programa crack, para identificar contraseas dbiles y notificarlas a los usuarios. Contraseas de una sola utilizacin :
En casos donde la posibilidad de interceptar la contrasea es alta (comprobacin del correo desde lugares exteriores al sistema) se utilizan sistemas de contraseas de una sola utilizacin. Problemas para recordar las contraseas :
Utilizacin de programas de obtencin de contraseas (S/KEY) a partir de un dato asignado en la ltima conexin. Mantener una lista consecutiva de contraseas.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 46
Verificar regularmente que los permisos Unix estn de la siguiente manera (consejos de organismos de seguridad) :
/etc/utmp : 644. /etc/motd y /etc/mtab : 644. /etc/syslog.pid : 644. El ncleo (/vmlinuz) : propiedad de root y grupo =0. Permisos=644. /etc, /usr/etc, /bin, usr/bin, /sbin, /usr/sbin, /tmp y /var/tmp : propiedad de root y con el sticky-bit en /tmp y /var/tmp. Considerar la supresin de permisos de lectura de ficheros que no sean requeridos por los usuarios. Asegurarse la inexistencia de ficheros y directorios inesperados con permisos globales de escritura.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 47
Verificar que los ficheros que tengan los permisos setuid y setgid sean los correctos. Asegurarse que el valor umask de los usuarios sea algo parecido a 027 o 077. Comprobar que todos los ficheros de /dev sean ficheros de dispositivo (salvo algun que otro programa segn el caso, por ejemplo MAKEDEV). En ningn caso deben existir ficheros de dispositivo inesperados fuera del directorio /dev.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 48
Adems :
debe ser propiedad de root, no debe tener permisos de escritura ni para el grupo ni para los dems, deben residir en directorios donde cada directorio del camino de acceso debe tambin ser propiedad de root sin permiso de escritura para grupo y dems.
Los siguientes ficheros que puedan existir para la cuenta de root deben cumplir los requisitos anteriores :
~/.login, ~/.profile o ficheros similares para la inicializacin de la cuenta. ~/.exrc (vi) y otros ficheros de personalizacin de programas. Lneas de crontab y at. Ficheros de particiones NFS. /Ficheros de arranque y apagado del sistema.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 49
Si cualquiera de estos ficheros utiliza otros programas en su cdigo, estos tambin deben respetar estas reglas. Modificar todos los ficheros y directorios :
no setuid ni setgid, que tengan permiso de lectura para todo el mundo, pero no permisos de escritura para el grupo y dems, propiedad de bin
a propiedad de root con el grupo =0. Esta modificacin pueden traer ciertos problemas en la instalacin de versiones posteriores.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 50
Ejecutar regularmente herramientas de verificacin del estilo de COPS,... Utilizar herramientas como tripwire, samhain, aide :
Verificador de la integridad de ficheros y directorios. Compara un conjunto de ficheros y directorios designados con la informacin almacenada en una base de datos generada previamente. Detecta cualquier diferencia de atributo o contenido, lo notifica y queda registrado. Aconsejable ejecutarlo regularmente para ficheros de sistema que no deben tener cambios inesperados.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 51
Control del espacio de disco y prevencin de una posible monopolizacin de dicho espacio. Funciona solo en discos locales montados localmente. Se puede montar NFS con alguna limitacin. Se indica en /etc/fstab los sistemas de ficheros que sern montados con un sistema de cuotas :
/devsd0h
/home
4.2 rw,quota
1 2
Crear un fichero llamado quotas en el directoiro raz de cada SF en el que se desea utilizar las cuotas. Propiedad del root sin ningn otro acceso.
Unai Arronategui
TEMA 20 - Seguridad
Pag. 52
/etc/init.d/boot verifica la consistencia de las cuotas con quotacheck en los SFs antes de montarlos. Un fichero de arranque del sistema activa el sistema de cuotas en cada SF, ya montado, con quotaon.
Las cuotas pueden ser asignadas de forma independiente para cada usuario con el programa edquota nombre_usuario. Limita el n de bloques (espacio de disco) o inodos (cantidad de ficheros). Se pueden establecer lmites fuertes y dbiles. Para verificar la utilizacin de disco en un SF se puede utilizar:
quota dispositivo
quot /dev/rds0h
Unai Arronategui
TEMA 20 - Seguridad
Pag. 53
Y la criptografa...
Utilizada para ocultar informacin en un ordenador y para transmitir datos a travs de la red de forma ms segura. Simtrica de clave secreta :
La misma clave es utilizada para cifrar y descifrar el mensaje. Algunos mtodos : DES, IDEA, RC5,.... Una clave para cifrar y otra diferente para descifrar. La clave para cifrar es pblica (conocida por todos) y la clave para descifrar es privada (secreta). El mtodo ms conocido es RSA y el programa que lo usa PGP.
Asimtrica :
Unai Arronategui
TEMA 20 - Seguridad
Pag. 54