TEMA 3
Para estudiar la seguridad
en la RED, primero debes de estudiar el formato MIME que es el que se utiliza
para el correo:
El formato MIME consta de
dos partes la Cabecera y el Cuerpo:
-
La Cabecera es de la forma :
campo:valor
; otrocampo=algo;
MIMEVersion: 1.0
content_type:tipo/subtipo ( tipo mime )
content_transfer_encoding ( codificación para el transporte )
-
El cuerpo es la información
que acompaña a la cabecera, separada de esta por una linea en blanco.
El MIME puede incluir varios
tipos de "partes" en un Multipart, algunos tipos son : Signed( SMIME ),
Mixed, Related y Alternative. Todas estas partes están separadas
por delimitadores(boundary).
Para que un mensaje sea cifrado,
este debe incluir estas lineas en la cabecera:
Content_type:
application/ x_pkcs7_mime
Constant_transfer_encoding:
base64
Para
que un mensaje sea firmado, este debe incluir estas lineas en la cabecera:
Content_type:
multipart/signed;
protocol="application/ x_pkcs7_signature";
micalg=sha1;
boundary=--Delimitador
Visto
esto vamos a explicar para que sirve el objeto PKCS7, utilizado en el MIME.
Este objeto es utilizado para el transporte de objetos cifrados y/o firmados,
puesto que puede transportar, los siguientes tipos de datos:
-
data :
estos son los datos en general.
-
signeddata:
estos son los datos firmados( suele contener certificado ).
-
envelopeddata:
estos son los datos cifrados( contiene PKCS7 ).
-
signedandenvelopeddata:
estos son los datos cifrados y firmados.( no se usa, porque añade
información )
Para mantener
la información segura, durante la transmisión por la red
se utilizan dos métodos el de cifrado extremo a extremo y el de
cifrado de enlace.
-
El Cifrado
de enlace se implementa en el IPSEC y en este sistema el cifrado se realiza
en la capa de acceso a red (de enlace en el modelo ISO). Se cifra tanto
la información del
mensaje
incluida en cada paquete, como las cabeceras añadidas por todos
los niveles superiores.
-
El Cifrado extremo a extremo,
tiene diferentes implementaciones dependiendo de si la comunicación
se realiza en una sesión o sin sesión, al cifrar con sesión
este método se implementa mediante el SSL o el TLS y para el cifrado
sin sesión se implementa con los métodos SMIME y PGP. El
cifrado extremo a extremo se realiza en el nivel de aplicación.
Con este sistema tan solo se cifran los datos, y las cabeceras se añaden
y transmiten sin cifrar.
Ahora veremos como funciona
el SSL, este método de cifrado extremo a extremo cumple dos propósitos,
el de confidencialidad y el de Autenticación, tanto del cliente
como del servidor.
1º.-
El cliente obtiene la clave pública del servidor y la confirma con
la CA, autoridad certificadora que certifica la clave pública de
servidor, comprobando la firma.
2º.-
Se verifica que el servidor tiene la clave privada del certificado, que
antes le han enviado. Para ello envías la llave de sesión
codificada con la clave pública, cuando el servidor la descifre,
puede comenzar una comunicación confidencial (con la llave de sesión).
3º.-
El reto está cifrado con la clave pública del cliente, y
cuando el cliente lo descifra con la clave privada entonces, ya se ha realizado
la autenticación del cliente.
Vulnerabilidades de la RED.
-
Sniffing(escuchar) : ser trata
de ver la información que transita por la red.
-
Se puede evitar por Hardware:
protegiendo los cables con tubos, o utilizando switches.
-
Spoofing(suplantación)
: Se basa en hacerse pasar por otro para acceder a sus privilegios. Hay
muchas formas de suplantación, pero la más importante, tiene
nombre propio y es el hijacking, o la suplantación de conexión:
Una vez ha una conexión segura el 'hijacker' "saca" al interlocutor
de la conexión y se coloca en su lugar.
-
El hijacking se puede evitar
con una conversación cifrada y con una llave de sesión. Implementado
por el CHAP ( o el PAP ), el cual transmite la password, mediante un reto
y luego se repite hasta que se envíe una password incorrecta.
-
Denegación de servicio(
Denied Of Service,DOS ) : Se puede aplicar la denegación de servicio
sobre los nodos o sobre la red. En el primer caso se saturan los recursos
de la máquina o se bloquea de algún modo e impide su normal
uso. En el caso de la denegación de servicio de la red, se impide
el normal funcionamiento de la red o se aísla completamente un grupo
de máquinas de la misma impidiendo que se conecten.
-
Intrusión: Entrar en
un servidor, sin autentificación.
-
Ataque STACKOVERFLOW: Se trata
de atacar a la pila, para variar la dirección de retorno de un programa
creado por el usuario y generar un nuevo shell, con los privilegios de
otro usuarios( root ).
Cortafuegos( FIREWALLS )
El fin de estos programas
es el de protección de redes corporativas, generando una protección
entre dos puntos, normalmente se crea un bloqueo entre la red corporativa
e internet . Utilizando la delegación de servicios y el filtrado
de paquetes.
Hablaremos de esta segunda
técnica, esta técnica se basa en decidir que paquetes entran
y cuales no, en nuestra red corporativa, se puede decidir según
la dirección de origen o de destino ( IP ) o según el puerto
de origen o de destino ( TCP ). De bloquear los paquetes se encargaría
el router que nos conecta con internet, pero para que la cosa funcione
correctamente, se debe de decidir una política de seguridad e implementarla
correctamente.
Un ejemplo de reglas que
podrían implementarse en un filtro. Supongamos que queremos permitir
la comunicación entre un determinado nodo en Internet (192.168.10.100)
y todos los nodos de nuestra red local (subred 150.128.51.50). Además
nuestra política es cerrada . Para implementar esta política
necesitaríamos tres reglas de filtrado:
Dirección
|
Origen
|
Destino
|
Acción
|
Entrada
|
192.168.10.100
|
150.128.51.0
|
Permitir
|
Salida
|
150.128.51.0
|
192.168.10.100
|
Permitir
|
Ambas
|
Cualquiera
|
Cualquiera
|
Denegar
|