Вы находитесь на странице: 1из 10

VPN

la VPN (Virtual Private Network o Red Privada Virtual). Una VPN es una
extensin de una red local que permite conectar dos o ms puntos de manera
segura. Hablando en plata, es como si entre las dos oficinas X, distanciadas
por 1500 kilmetros, se tendiera un inmenso cable de red, slo que la VPN
hace uso de la misma red de acceso a Internet, por lo que no hay que gastar
tiempo y dinero en conectar fsicamente en realizar la mencionada conexin
entre oficinas.

Normalmente, VPN usa una tecnologa denominada tunneling a la hora de
establecer la comunicacin entre dos puntos. El tunneling simplemente hace
uso de un protocolo especial (normalmente SSH) para crear un tnel (de ah
su nombre) por el que circulan todos los datos desde un extremo a otro. Este
tnel en realidad es la misma informacin que se manda pero encriptada por
la accin del protocolo seguro de comunicacin, lo cual hace que nuestros
datos no puedan ser vistos por agentes externos.
Una red VPN extiende la seguridad a los usuarios remotos.
Las redes VPN SSL y VPN IPsec se han convertido en soluciones de VPN
principales para conectar oficinas remotas, usuarios remotos y partners
comerciales, ya que:
Proporcionan comunicaciones seguras con derechos de acceso especficos
para los usuarios individuales, como por ejemplo empleados, contratistas o
partners
Mejoran la productividad al extender la red empresarial y sus aplicaciones
Reducen los costes de las comunicaciones y aumentan la flexibilidad
Los dos tipos de VPN cifradas son:
VPN IPSec de sitio a sitio: Esta alternativa a Frame Relay o a las redes WAN
de lnea alquilada permite a las empresas llevar los recursos de la red a las
sucursales, las oficinas instaladas en casa y los sitios de partners comerciales.
VPN de acceso remoto: Esta modalidad lleva prcticamente cualquier
aplicacin de datos, voz y vdeo al escritorio remoto, emulando el escritorio de
la oficina principal. Una VPN de acceso remoto puede instalarse utilizando VPN
SSL, IPsec o ambas, dependiendo de los requisitos de implementacin.





















Comprendiendo PPTP y VPN`s
Introduccion:
Point-To-Point Tunneling Protocol (PPTP) permite el seguro intercambio de
datos de un cliente a un server formando un Virtual Private Network (VPN red
privada virtual), basado en una red de trabajo va TCP/IP. El punto fuerte del
PPTP es su habilidad para proveer en la demanda, multi-protocolo soporte
existiendo una infraestructura de rea de trabajo, como INTERNET. Esta
habilidad permitir a una compaa usar Internet para establecer una red
privada virtual (VPN) sin el gasto de una lnea alquilada.
Esta tecnologa que hace posible el PPTP es una extensin del acceso remoto
del PPP (point-to-point-protocol......RFC 1171). La tecnologa PPTP encapsula
los paquetes ppp en datagramas IP para su transmisin bajo redes basadas en
TCP/IP. El PPTP es ahora mismo un boceto de protocolo esperando por su
estandarizacin. Las compaas "involucradas" en el desarrollo del PPTP son
Microsoft :P. Ascend Communications, 3com / Primary Access, ECI Telematics
y US Robotics.
PPTP y VPN:
El protocolo Point-To-Point Tunneling Protocol viene incluido con WindowsNT
4.0 Server y Workstation. Los Pc`s que tienen corriendo dentro de ellos este
protocolo pueden usarlo para conectar con toda seguridad a una red privada
como un cliente de acceso remoto usando una red publica como Internet.
Una caracterstica importante en el uso del PPTP es su soporte para VPN. La
mejor parte de esta caracterstica es que soporta VPN`s sobre public-switched
telephone networks (PSTNs) que son los comnmente llamados accesos
telefnicos a redes.
Usando PPTP una compaa puede reducir en un gran porcentaje el coste de
distribucin de una red extensa, la solucin del acceso remoto para usuarios en
continuo desplazamiento porque proporciona seguridad y comunicaciones
encriptadas sobre estructuras de rea de trabajo existentes como PSTNs o
Internet.






PPPoE
Significa Protocolo de Punto a Punto sobre Ethernet, e implementa una capa
IP sobre dos puertos Ethernet, dando la posibilidad de transferir paquetes de
datos entre los dispositivos que estn conectados.



L2TP
Fue diseado por un grupo de trabajo de IETF como el heredero aparente de
los protocolos PPTP y L2F, creado para corregir las deficiencias de estos
protocolos y establecerse como un estndar aprobado por el IETF (RFC 2661).
L2TP utiliza PPP para proporcionar acceso telefnico que puede ser dirigido a
travs de un tnel por Internet hasta un punto determinado. L2TP define su
propio protocolo de establecimiento de tneles, basado en L2F. El transporte
de L2TP est definido para una gran variedad de tipos de paquete de datos,
incluyendo X.25, Frame Relay y ATM.
Al utilizar PPP para el establecimiento telefnico de enlaces, L2TP incluye los
mecanismos de autenticacin de PPP, PAP y CHAP. De forma similar a PPTP,
soporta la utilizacin de estos protocolos de autenticacin, como RADIUS.
A pesar de que L2TP ofrece un acceso econmico, con soporte multiprotocolo
y acceso a redes de rea local remotas, no presenta unas caractersticas
criptogrficas especialmente robustas. Por ejemplo:
Slo se realiza la operacin de autenticacin entre los puntos finales del tnel,
pero no para cada uno de los paquetes que viajan por l. Esto puede dar lugar
a suplantaciones de identidad en algn punto interior al tnel.
Sin comprobacin de la integridad de cada paquete, sera posible realizar
un ataque de denegacin del servicio por medio de mensajes falsos de control
que den por acabado el tnel L2TP o la conexin PPP subyacente.


PPP
(Point to Point Protocol - Protocolo Punto a Punto). El PPP es un protocolo de
nivel de enlace para hacer conexin entre dos puntos (dos computadoras o
nodos). El PPP fue desarrollado por el grupo de trabajo IETF (Internet
Engineering Task Force).

Permite conectar computadoras utilizando cable serial, lnea telefnica, telfono
celular, enlace de fibra ptica, etc. Generalmente es empleado para establecer
la conexin a internet desde un usuario al proveedor de internet a travs de un
mdem telefnico. A veces es usado para conexiones de banda ancha tipo
DSL.

El protocolo PPP permite transporte de datos, autentificacin a travs de una
clave de acceso y asignacin dinmica de IP.

PPP fue diseado para trabajar con mltiples protocolos de capas de red, como
IP, IPX, NetBEUI y AppleTalk.
Detalles tcnicos del Protocolo Punto a Punto

PPP provee un protocolo de encapsulacin tanto sobre enlaces sincrnicos
orientados a bits, como sobre enlaces asincrnicos con 8 bits de datos sin
paridad.

PPP puede operar a travs de cualquier interfaz DTE/DCE. Estos enlaces
deben ser Full-Duplex pero pueden ser dedicados o de circuitos conmutados.

Bsicamente el PPP est conformado por:

* Una forma de encapsulamiento no ambiguo que identifica claramente el
comienzo de un datagrama y el final del anterior.

* Un protocolo de control de enlace para activar y probar lneas, negociar
opciones y desactivar el enlace ordenadamente cuando ste ya no sea
necesario.

* Una familia de NCP (Network Control Protocols), que permiten negociar los
parmetros de la capa de red con independencia del protocolo de red utilizado.


IPsec
IPsec es uno de los protocolos de seguridad ms importantes. Este protocolo
proporciona servicios de seguridad en la capa de red y en la capa de
transporte, tanto en TCP como en UDP.
Gracias a IPsec podemos comunicar diferentes puntos de Internet de forma
segura, es ampliamente utilizado en redes privadas virtuales de nuestros
hogares, pero tambin es utilizado en entornos corporativos donde la seguridad
es lo ms importante. Trabaja en la capa 3 de OSI (capa de red), otros
protocolos de seguridad como TLS trabajan en la capa 4 (capa de transporte).
IPsec proporciona varios servicios necesarios para que la comunicacin sea
segura, estos servicios son los de confidencialidad, integridad, y autenticacin.
Gracias a estos servicios, la seguridad de las comunicaciones estn
garantizadas.


MD5: Encriptacin de claves en MSN
En realidad el algoritmo MD5 no es un algortmo de encriptacin si no que su
principal cualidad es la de generar huellas de documentos, una cadena que
identificad de forma nica a un documento. Pero como vamos a ver, se puede
utilizar tambin para evitar enviar datos en claro.
El sistema de encriptacin de MD5 utiliza un algoritmo criptogrfico de tipo
hash que genera como salida 128 bits. Este algoritmo tiene como principal
utilidad la de generar 128 bits como resumen de un conjunto de caracteres,
independientemente del nmero de caracteres de entrada que se pasen al
algoritmo.
Es por lo tanto un algoritmo til para acompaar a documentos ya que
analizando el MD5 del documento, podemos saber si ha sufrido algn cambio
desde que se le paso el algoritmo. Se podra decir que es una especie de
marca del mensaje ya que si cogemos el mensaje, lo pasamos por MD5 y el
resultado es el mismo que la marca MD5, podemos estar seguros de que el
mensaje no ha sufrido modificaciones.
La gran virtud de MD5 es que es computacionalmente inalcanzable que dos
mensajes tengan el mismo resumen MD5 o generar un mensaje que se ajuste
a un determinado resumen ya existente.
El mayor uso que se le da a este algoritmo es el de aplicaciones de firmas
digital. El procedimiento es coger un documento y resumirlo utilizando MD5
antes de pasar a encriptarlo utilizando una clave privada. Con la clave pblica
luego se puede desencriptar el documento, con lo que conocemos su origen, y
podemos comprobar que el MD5 del documento coincide con el que acompaa
al documento.
Dentro del proceso de envo de login de usuario y clave al servidor de MSN, la
clave debemos de encriptarla para evitar que sea capturada con algn sniffer
en la red. Y se usa un mtodo un tanto artesanal de hacerlo, utilizando MD5.
El servidor de MSN nos enva una cadena, cadena de desafo, que debemos
de aadir a nuestra clave, y luego pasamos el algoritmo MD5 a la cadena
resultante. Este proceso se puede ver detallado dentro de las actuales clases
del canal de MSN.
De esta forma, para poder engaar al servidor de MSN debemos de conocer la
clave del usuario y adems, la cadena de desafo que ha enviado el servidor al
cliente en el momento que ha iniciado la conexin.
Veamos en primer lugar una clase de ejemplo que se ha creado para ayudar a
utilizar las libreras de criptografa de Mono. Es de esperar que esta clase vaya
creciendo en el futuro segn se vaya necesitando ms facilidades.
using System;
using System.Text;
using System.Security.Cryptography;


public class MD5utils
{
public static string ASCII_MD5(string arg)
{
MD5CryptoServiceProvider md5=new
MD5CryptoServiceProvider();
byte[] data=Encoding.ASCII.GetBytes(arg);
byte[] result=md5.ComputeHash(data);

string cadena_res="";
for (int i=0; i<16; i++)
{
cadena_res+=result[i].ToString("x");
}
return cadena_res;
}
}

Vemos que de momento nos sirve para pasarle una cadena de caracteres y
encriptarla utilizando el algoritmo MD5. Para ello hemos tenido que pasar la
cadena de caracteres a una matriz de bytes y utilizar el mtodo esttico
"ComputeHash" de la clase "md5". Lo que obtenemos es de nuevo una matriz
de bytes que debemos de pasar a una cadena de caracteres que es la que
devolvemos como parmetro de retorno de la funcin.
El uso que se hace de esta clase lo podemos observar a continuacin:
SendString (ns, "USR "+TrID.ToString()+" MD5 I "+login+"\r\n");
returnData=ReceiveString (ns,tcp);

char[] separators = { ' ', '\r', '\n' };
string[] parts = returnData.Split (separators);
string hash = parts[4];
//extraemos el hash de la cadena devuelta (parametro 4)

hash = hash + password; //unimos el hash al password

SendString (ns, "USR "+TrID.ToString()+" MD5 S
"+MD5utils.ASCII_MD5 (hash)+"\r\n");
returnData=ReceiveString (ns, tcp);

Este cdigo es parte del proceso de conexin de un cliente de MSN al servidor.
Vemos que envamos al servidor el login con el que accedemos y el servidor de
vuelta nos enva una cadena que debemos de unir a la clave antes de encriptar
la clave con el algortimo MD5.
El mtodo utilizado no es especialmente seguro ya que si se intercepta la
cadena que nos enva el servidor, con esta cadena y el mensaje codificado con
MD5 no debe de ser muy complejo de obtener la clave del usuario. Pero es un
mtodo rpido a nivel computacional y como el servicio se supone que no es
crtico a nivel de seguridad, pues puede ser vlido bajo estas hiptesis.



HASH

un algoritmo de HASH no es un algoritmo de encriptacin, aunque s se utiliza
en esquemas de cifrado, como algoritmos de cifrado asimtrico (por ejemplo en
el RSA).

Ahora bien, tener una funcin de estas caractersticas puede tener muchas
aplicaciones. Algunas de ellas pueden ser las siguientes:

Comprobacin de integridad de ficheros: Supongamos que queremos
transmitir un fichero a un amigo. Si antes de realizar este envo calculamos la
funcin HASH del fichero, para nuestro amigo del otro extremo es posible
verificar la integridad del fichero aplicando el mismo algoritmo al archivo que
recibe. Si ambos coinciden, podemos asegurar que el envo ha sido
satisfactorio. sta es una aplicacin real que se utiliza, por ejemplo, para
comprobar la integridad de muchos paquetes que se descargan en
distribuciones del sistema operativo GNU/Linux.

Seguridad en procesos de identificacin en sistemas: Los procesos de
identificacin (Login+Password) se ven reforzados por estos algoritmos. Se
utilizan de la siguiente forma: cuando un usuario accede a su computadora
debe introducir su nombre de usuario y su password.

Pues bien, si el sistema operativo no registra estos datos como texto claro, si
no que registra el resultado de aplicarles una funcin HASH, en el caso de que
un usuario malicioso logre acceder a nuestro archivo de registros no
conseguir (a menos que el algoritmo utilizado sea malo o disponga de una
supercomputadora) revertir el contenido de dicho registro, y por tanto no puede
acceder a nuestro sistema. Esta misma idea se aplica en identificacin de
usuarios en muchas webs, con la diferencia de que para que este esquema sea
seguro debe incluir informacin adicional y aleatoria, como marcas de tiempo
y redundancias.

Firma digital: Estos algoritmos se utilizan en esquemas de firma digital para
verificar la integridad de la informacin enviada por el canal de
comunicaciones. Algoritmos de cifrado asimtrico, como RSA por ejemplo,
realizan lo siguiente: calculan la funcin HASH del contenido del mensaje que
se va a enviar y luego se firma dicho checksum con la clave privada del emisor.
As se asegura la integridad de la informacin y el no repudio


3DES
Fue emitido por el NIST en 1999 como una versin mejorada de DES. Realiza
tres veces el cifrado DES utilizando tres claves. La figura 4.1.16 muestra el
diagrama que representa al algoritmo 3DES.

Figura 4.1.16 Triple DES
Cuando se descubri que una clave de 56 bits (utilizada en el DES) no era
suficiente para evitar un ataque de fuerza bruta, el 3DES fue elegido para
agrandar la clave sin la necesidad de cambiar el algoritmo de cifrado.
Con tres claves distintas, 3DES tiene una longitud de clave efectiva de 168 bits
aunque tambin se pueden usar dos claves haciendo K1=K3 (ver figura 4.1.16)
con lo que se tiene una longitud de clave efectiva de 112 bits
Actualmente el 3DES sigue siendo utilizado pero cada vez ms est siendo
sustituido por el algoritmo AES que ha demostrado ser muy robusto y ms
rpido.

Вам также может понравиться