Seguridad
en una intranet
Indice
1. Introducción
2. Metodologia de desarrollo
3. Ejemplos de aplicación de
Políticas
4. Otros métodos de Autenticación.
5. Seguridad de los módems de acceso
telefónico.
6. Conclusiones
7. Bibliografía
1. Introducción
Definición de una INTRANET: Es una infraestructura basada en los estándares y
tecnologías de Internet que soporta el compartir información
dentro de un grupo bien definido y limitado.
Problema: Aunque una INTRANET sea una red
privada en la que se tengan grupos
bien definidos y limitados ésta no se encuentra exenta de ataques que pudiesen
poner en riesgo la información
que maneja, ya que la mayoría de éstos son provocados por sus mismos usuarios.
Antecedentes: La mayoría de
las estadísticas de seguridad
en cómputo indican que cerca del 80% de los fraudes relacionados con las computadoras provienen de los usuarios internos, por esto las
intranets son las más vulnerables a ataques de ésta índole.
Según el CSI (Computer
security institute) de San Francisco el 90 % de las empresas
entrevistadas detectaron ataques a sus computadoras, el 70 % reporto que los más comunes fueron virus,
robo de laptops y ataques de abuso de la red de sus
empleados. Ref [9] , [10] , [11]
Modelo de la Solución:
a.
Políticas
de Seguridad
Presentación
de la Solución.
¿Qué son las políticas
de seguridad?
Políticas de seguridad son los documentos
que describen, principalmente, la forma adecuada de uso de los recursos
de un sistema de cómputo, las responsabilidades y derechos tanto
de usuarios como administradores, describe lo que se va a proteger y de lo que
se esta tratando de proteger, éstos documentos
son el primer paso en la construcción de Firewalls efectivos. Las políticas
son parte fundamental de cualquier esquema de seguridad eficiente. Ref [7]
¿Cómo establecer políticas de seguridad para una INTRANET.
2. Metodologia de desarrollo
Un esquema de políticas de seguridad debe llevar ciertos
pasos, para garantizar su funcionalidad y permanencia en la institución que.
Nuestra propuesta es seguir los pasos detallamos a continuación:
Preparación – Es la recopilación de todo tipo de
material relacionado con cuestiones de seguridad en la
organización:
¿Qué quiero proteger? Mis recursos:
Personal,
información, hardware, software,
documentación, consumibles, etc.
Hacer preguntas relacionadas con el uso externo: por ejemplo:
¿Necesitará la intranet protección de acceso externo?
¿Se concederá a usuarios autorizados el acceso remoto?
¿Cómo se determinará el acceso no autorizado cuanto ocurra?
¿Existen restricciones de acceso a la información
importante? Etc.
Hacer preguntas relacionadas con el uso interno: por ejemplo
¿A qué grupos,
departamentos o usuarios se les restringirá el acceso a información interna?
¿Qué constituye una brecha de seguridad interna?
¿El sistema
de seguridad impide la productividad?
¿Cómo determina cuando el acceso inautorizado ha ocurrido?
Etc.
Hacer preguntas concernientes a la administración
¿Se planea implementar diferentes niveles de acceso?
¿Quién está autorizado para tomar decisiones acerca de la
seguridad?
¿Se tiene un sistema de rastreo confiable instalado?
¿Se usará el cifrado?, ¿ Será el adecuado? Etc.
¿De quién necesito protegerlo? De cualquiera que constituya
una amenaza, ya sea interna o externa en cualquiera de estos rubros:
o
Acceso
no autorizado: Utilizar recursos de cómputo sin previa autorización
¿Qué tantos recursos estoy dispuesto a invertir?
¿Cómo puedo / debo protegerlo?
En general, se tiene que lograr que las políticas de
seguridad cumplan con todos los servicios de seguridad:
Autenticación
Confidencialidad
Integridad
No repudio
Disponibilidad de los recursos a personas autorizadas
Control de Acceso
·
Redacción
- Escribir las políticas de una manera clara, concisa y estructurada. Requiere
de la labor de un equipo en el que participen abogados, directivos, usuarios y
administradores.
Mientras las políticas indican el "qué", los procedimientos
indican el "cómo". Los procedimientos
son los que nos permiten llevar a cabo las políticas. Ejemplos que requieren la
creación de un procedimiento son:
·
Otorgar
una cuenta
Un punto muy importante dentro de las políticas es el que
tienen que ir acompañadas de Sanciones, las cuales deberán también ser
redactadas, revisadas, autorizadas, aplicadas y actualizadas.
3.
Ejemplos de aplicación de Políticas
·
Políticas
de contraseñas: Son una de las políticas más importantes, ya que por lo
general, las contraseñas constituyen la primera y tal vez única manera de autenticación
y, por tanto, la única línea de defensa contra ataques. Éstas establecen quién
asignará la contraseña, qué longitud debe tener, a qué formato deberá apegarse,
cómo será comunicada, etc.
Todos los usuarios deberán acceder al sistema utilizando
algún programa que permita una comunicación
segura y cifrada.
·
Políticas
de uso adecuado: Especifican lo que se considera un uso adecuado o inadecuado
del sistema por parte de los usuarios, así como lo que está permitido y lo que
está prohibido dentro del sistema de cómputo.
Está terminantemente prohibido ejecutar programas
que intenten adivinar las contraseñas alojadas en las tablas de usuarios de máquinas
locales o remotas
·
Políticas
de respaldos: Especifican qué información debe respaldarse, con qué
periodicidad, qué medios de respaldo utilizar, cómo deberá ser restaurada la
información, dónde deberán almacenarse los respaldos, etc. Ejemplos:
El administrador
del sistema es el responsable de realizar respaldos de la información
periódicamente Cada treinta días deberá efectuarse un respaldo completo del
sistema y cada día deberán ser respaldados todos los archivos
que fueron modificados o creados
La información respaldada deberá ser almacenada en un lugar seguro
y distante del sitio de trabajo
·
Políticas
de correo
electrónico: Establece tanto el uso adecuado como inadecuado del servicio de correo electrónico, los derechos
y obligaciones que el usuario debe hacer valer y cumplir al
respecto. Ejemplos:
o
El
usuario es la única persona
autorizada para leer su propio correo, a menos que él mismo autorice
explícitamente a otra persona
para hacerlo, o bien, que su cuenta esté involucrada en un incidente de
seguridad de cómputo. Ref [4] , [12]
Control de Acceso Físico
Es uno de los controles principales para restringir el
acceso físico a los dispositivos (servidores
y estaciones de trabajo) Los componentes a menudo encontrados son:
a.
Asegurar
el edificio.- Asegurar todas las puertas no esenciales para que el acceso desde
fuera requiera una llave o una tarjeta.
Control de Acceso Interno:
Autenticación Básica, basada en Usernames y Passwords
Control de Acceso Global.
¿Qué es? : El GACF se puede usar para establecer políticas
de acceso de manera global para sus servidores
web
mediante el archivo de configuración que en los servidores NCSA httpd y los
derivados de él como los servidores apache, éste archivo
es llamado access.conf localizado en el subdirectorio conf del servidor.
También se puede usar el GACF para segregar áreas públicas y
privadas en el servidor web
acordes con algún criterio, y solicitar un nombre de usuario y una contraseña
para el acceso a áreas privadas.
¿Cómo se hace?
Un ejemplo:
#Cualquiera en el grupo personal puede llegar al nivel más alto del árbol
personal.
<Directory
/usr/local/web-docs/personal>
AuthType Basic
AuthName Sólo personal
AuthUserFile /usr/local/etc/httpd/userpw (ruta completa del
archivo password)
AuthGroupFile
/usr/local/etc/httpd/ourgroup
<Limit Get>
Requiere group personal
</Limit>
</Directory>
ref [1] pp. 181-209 , [6]
Control de Acceso Local.
¿Qué es? El LACF permite aplicar diferentes controles de
acceso por directorio o subdirectorio del árbol, normalmente el archivo es
llamado .htaccess.
Se puede negar el uso de los potencialmente peligrosos SSI
los cuales causan que el servidor pueda ejecutar comandos
desde fuera cada vez que una página que los contiene es accesada, en las
paginas del usuario.
Se pueden prevenir problemas de seguridad potenciales causados por ligas
simbólicas.
¿Cómo se hace?
Un ejemplo:
Un ejemplo: Un archivo nombrado .htaccess en el
subdirectorio personal / ejecutivo.
AuthType Basic
AuthName Sólo Ana
AuthUserFile /usr/local/etc/httpd/userpw (ruta completa del
archivo password)
AuthGroupFile
/usr/local/etc/httpd/ourgroup
<Limit Get>
Requiere user ana
</Limit>
Esto limita el acceso al Subdirectorio Ejecutivo a un solo
usuario.
El problema en la Autenticación Básica es que la información
intercambiada entre el browser y el servidor no esta cifrada en ninguna forma.
Este método solamente codifica no cifra la sesión de autenticación.
Cualquiera que pueda interceptar su sesión pude decodificarla y usar la
información para accesar a su material. Para resolver este problema el método
de Autentication Digest. ha sido introducido. Ref [1] pp. 181-209, [6]
Autenticación Avanzada:
Direcciones IP
¿Qué es?: En el contexto de la programación
en cgi-bin, cada solicitud de un documento por un browser u otro recurso de la
intranet contiene la dirección IP de la computadora que hizo la requisición, lo cual ésta podría ser
utilizada por alguna otra persona con fines nocivos para la institución.
¿Cómo se hace?
<Limit GET>
order deny, allow
deny from all
allow from
personal.mycompany.com
allow from 132.1.250
</Limit>
El problema aquí es que algunos malhechores en la red pueden
configurar sus computadoras para pretender ser alguien conocido.
Para mayor seguridad se es necesario habilitar -DMAXIMUM_DNS
mientras compila el software del servidor. ( en Apache 1.1 Hostnamelookups hace
lo mismo). el servidor hará una búsqueda inversa en la dirección IP del cliente
para obtener su nombre, después de que el nombre es recibido, el servidor le
preguntará el DNS para su IP address, si no coinciden el acceso es denegado.
Autenticación Combinada
¿Cómo se hace?
AuthType Basic
AuthName Sólo personal
AuthUserFile /usr/local/etc/httpd/userpw (ruta completa del
archivo password)
AuthGroupFile
/usr/local/etc/httpd/ourgroup
<Limit Get>
order deny, allow
deny from all
allow from
personal.mycompany.com
allow from 132.1.250
Requiere group personal
</Limit>
Aquí, las reglas de control
de acceso de la IP address y del hostname son aplicadas primero. Una vez que
éstas reglas son satisfechas, se aplica la autenticación basada en
usernames/passwords al usuario. Ref [1] pp. 181-209, [6]
4. Otros métodos
de Autenticación.
Funciones Hash
¿Qué es?
Usando el password que el usuario teclea, el browser crea
una cadena usando el password y otra información incluyendo la AuthRealm
(autenticación de dominio) y la pasa a través de la función
MD5. Esta cadena es entonces pasada a través de la red hacia el servidor, el
cual toma la información almacenada en el archivo .htpasswd para crear la misma
cadena y pasarla a través de la función MD5 y luego compara los resultados; de
ésta manera no es posible obtener el password, porque el password no esta
siendo enviado.
Bajo MD5 se necesita información almacenada en el archivo
.htpasswd y no se puede usar la función crypt() sobre él. Aunque se use la
función MD5 sobre el password antes de almacenarlo, si se tiene el código almacenado, y un pequeño conocimiento, se puede crear un programa
para usarlo en lugar del password y funcionará.
La solución es reforzar los permisos de archivos
¿Cómo se hace?
Sintaxis.
AuthDigestFile
/u/web/.htdigest stantdar
AuthTypeDigest
El AuthDigestFile es una nueva directriz que toma dos
argumentos, la ruta completa del archivo en el cual los datos
de la función digest de autenticación son almacenados y el formato del archivo
usualmente estándar.
Para indicar que un directorio está protegido con MD5, se
especifica una Autenticación del tipo Digest. Ref [1] pp. 181-209, [6]
Control de Acceso Externo.
Firewalls
¿Para qué sirven?
Son un tipo de seguridad muy efectiva en redes.
Intentan prevenir los ataques de usuarios externos a la red interna. Tienen
múltiples propósitos:
a.
Restringir
la entrada a usuarios.
Un Firewall es un sistema o grupo de sistemas
que impone una política de seguridad entre la
organización de red privada y el Internet.
El firewall determina cual de los servicios de red pueden ser accesados dentro de ésta por los
que están fuera, es decir, quien puede entrar para utilizar los recursos de red
pertenecientes a la organización.
Para que un firewall sea efectivo, todo tráfico de información a través del
Internet deberá pasar a través de él mismo donde podrá ser inspeccionada la
información. EL firewall podrá únicamente autorizar el paso del tráfico, y el
mismo podrá ser inmune a la penetración, desafortunadamente, este sistema no
pude ofrecer protección alguna una vez que el agresor lo traspasa o permanece
entorno a este.
Un firewall es vulnerable, él no protege de la gente que
esta dentro de la red interna, éste trabaja mejor si se complementa con una
defensa interna. Ref [13]
5. Seguridad de los módems de acceso telefónico.
La primera línea de defensa es mantener el número de teléfono fuera del alcance de personas no autorizadas, es
decir, no publicarlo, no listarlo en los sistemas, etc.
También se puede añadir una contraseña de módem válida que
sea independiente y distinta de la de inicio de sesión del sistema para que
mantenga alejado a todo aquel que no la conozca, con el comando dpasswd en el
archivo /etc/d_passwd, se puede hacer esto.
Módems con retrollamada: No establecen inmediatamente una
conexión cuando reciban una llamada, solicitarán información de inicio de
sesión. Después, el módem cortará la conexión, y si la información es correcta
llamará de nuevo al usuario autorizado a un número almacenad en el sistema.
Hay módems que cifran la información que envían y reciben.
Existen módems silenciosos, los cuales no enviarán la señal característica
de "conexión establecida" hasta que no se haya completado el inicio
de sesión, esto ayudará a evitar a los que se dedican a buscar secuencias de
números de teléfono de computadoras. Ref [3]
Transacciones Seguras
Cuando se usa el cifrado, cualquier información enviada por clientes
(usernames, passwords, información confidencial.) a través de una forma puede
ser transmitida seguramente hacia y desde el servidor web.
Existen dos principales formas de efectuar transacciones
seguras:
S-http
soporta:
Cifrado para asegurar la privacidad.
Autenticación para los clientes
y para los servidores
Firmas Digitales para la verificación y el no repudio.
Su pude controlar el acceso y la privacidad al asignar una
mejora apropiada de seguridad para cada transacción entre el servidor y los
clientes. Las posibles mejoras pueden ser:
Firma
Cifrado
Firma y Cifrado
La mejora que se quiera aplicar depende de la cantidad de
seguridad requerida. Se pueden aplicar mejoras a la seguridad de las siguientes
formas:
Al especificar atributos S-http
en las Hiperligas
Los browsers del cliente
seguros
necesitan saber cuando cifrar o firmar un documento, por lo que la presencia
del protocolo shttp:// alerta a un cliente para que todos los
requerimientos usando ésta liga deben conformar las mejoras de seguridad
incluidas en la liga. Se usa el siguiente mecanismo para especificar atributos
de seguridad en hiperligas.
Opciones Criptográficas: CRIPTOPTS especifican las mejoras
de seguridad que un cliente puede o debe aplicar a un requerimiento, y le dice
al cliente que algoritmos de cifrado el servidor soporta.
Nombres Distinguidos: Un DN identifica una llave pública del
servidor. El cliente usa un nombre distinguido del servidor para seleccionar la
llave apropiada para el cifrar los mensajes que éste le envía al servidor.
Al especificar comandos
de región en la configuración del archivo.
Se usan para controlar las respuestas del servidor a los requerimientos
de los clientes. Comandos:
Require SHTTP: Este comando puede especificar una o más de
las siguientes mejoras: Cifrar, Firmar y Autenticación.
Require Encryption: Se usa para que todos los requerimientos
sean cifrados bajo cualquiera S-http, SSL o PCT. Se usa éste comando cuando se
desea recibir requerimientos bajo cualquier protocolo.
Enhance SHTTP: Con este comando se pueden implementar
cualquiera de las siguientes mejoras: Firmar, Cifrar, Autenticar. Ref [1] pp.
181-209.
SSL
Para establecer una comunicación
segura utilizando SSL se tienen que seguir una serie de pasos. Primero se debe
hacer una solicitud de seguridad. Después de haberla hecho, se deben establecer
los parámetros que se utilizarán para SSL. Esta parte se conoce como
SSL Handshake:
Durante el hanshake se cumplen varios propósitos. Se hace
autenticación del servidor y opcionalmente del cliente, se determina que algoritmos de criptografía
serán utilizados y se genera una llave secreta para ser utilizada durante el
intercambio de mensajes subsiguientes durante la comunicación SSL.
Intercambio de datos:
Ahora que se ha establecido un canal de transmisión seguro
SSL, es posible el intercambio de datos. Cuando el servidor o el cliente desea
enviar un mensaje al otro, se genera un digest (utilizando un algoritmo de hash de una vía acordado durante el handshake),
cifran el mensaje y el digest y se envía, cada mensaje es verificado utilizando
el digest.
Terminación de una sesión SSL:
Cuando el cliente deja una sesión SSL, generalmente la
aplicación presenta un mensaje advirtiendo que la comunicación no es segura y confirma que el cliente
efectivamente desea abandonar la sesión SSL. Ref [1] 181-209.
Virus
Fuentes de Riesgo
de los virus.
Los virus pueden ser ingresados al sistema por un
dispositivo externo (diskettes) o a través de la red (e-mails) sin intervención
directa del atacante.
Tienen diferentes finalidades, sólo infectan, alteran datos,
eliminan datos, algunos sólo muestran mensajes, pero el fin único es el de
PROPAGARSE.
Se pueden distinguir módulos principales de un virus informático:
Módulo de reproducción
Módulo de Ataque
Módulo de Defensa
¿Cómo protegerse de ellos?
Los usuarios deberán conocer los síntomas que pueden
observarse en una computadora de la que se sospeche esté infectada:
Operaciones de procesamiento más lentas
Los programas
tardan más tiempo en cargarse
Los programas comienzan a acceder por momentos al drive o al
disco duro
Disminución del espacio disponible en el disco duro y de la memoria
Ram en forma constante o repentina.
Aparición de programas residentes en memoria
desconocidos.
La primera medida de prevención es contar con un sistema antivirus
y utilizarlo correctamente. La única forma de que se constituya un bloqueo
eficaz para un virus es que se utilice con determinadas normas
y procedimientos, las cuales deberían verificar los siguientes aspectos:
o
Un
disco de sistema, protegido contra escritura y libre de virus.
o
Por lo
menos un programa de Antivirus
actualizado.
o
Una
fuente de información sobre virus específicos.
o
Un
programa de respaldo de áreas críticas
o
Lista
de lugares donde acudir.
o
Un
sistema de protección residente.
o
Tener
respaldos.
o
Revisar
todos los discos nuevos antes de utilizarlos.
o
Revisar
todos los discos que se hayan prestado.
o
Revisar
todos los programas que se obtengan vía red.
o
Revisar
periódicamente la computadora.
o
Procedimiento
para revisar o desinfectar la computadora
o
Procedimiento
para desinfectar el sector de arranque
o
Procedimiento
para restaurar los respaldos.
o
Procedimientos
para formatear discos duros en caso de que estén infectados.
o
Reportar
a alguna autoridad la infección. Ref [8]
Al combinar éstos métodos
como mejor convenga provee la mejor y más completa seguridad.
Cantidad de seguridad a Implementar.
La seguridad por sí misma hace más difícil el acceso a un
sistema al tener que proveer seguros
adicionales que los usuarios deben pasar. Por otro lado si ningún tipo de
seguridad es implementada no hay problemas para los usuarios, sino que éstos ocurren cuando la
seguridad aumenta.