T2
SEGURIDAD EN LOS SISTEMAS DE INFORMACION DESARROLLADOS VIA WEB
Integrantes:
Angela Inciarte
Cecilmat Moreno
Daniel Infante
1.- Certificados de Seguridad
Un Certificado SSL es una credencial digital que permite a los visitantes de un site verificar la autenticidad del sitio y comunicarse con él de manera segura mediante el protocolo SSL (Secure Socket Layer: capa de conexión segura), Los certificados son otorgados por agencias independientes debidamente autorizada: Verisign, Thawte, etc. Existen dos motivos fundamentales por la cual una organización se le aconseja el uso de un certificado digital:
· Para probar la identidad de su empresa (servidor) en la red y reforzar la confianza de los usuarios en sus páginas.
· Para proteger los datos enviados a su página (o entre servidores) mediante la codificación o encriptamiento, que evita que la información al ser interceptada sea ininteligible.
Para una empresa elegir que tipo de Certificación Digital es el más adecuado, debe considerar:
1. la confidencialidad de los datos que desea proteger, se necesita categorizar los tipos de datos que gestiona según la importancia que maneja en la organización y seleccionar un certificado para las correspondientes tareas.
2. La ubicación geográfica de sus clientes o usuarios, debido a que las versiones de los navegadores a nivel mundial no son compatibles con las codificaciones o cifrados de los certificados.
3. Duración del proyecto, la mayoría de los certificados están disponibles en versiones de uno o dos años (o superiores). Si el proyecto está planificado para una duración superior, es conveniente adquirir un certificado por dos años ya que permite beneficiarse de la reducción de costo, se adquiere el beneficio de reducir la frecuencia del trabajo técnico y de administración que conlleva la instalación al renovar el certificado.
Un Certificado SSL se justifica si se tiene una tienda electrónica que acepta pedidos o tarjetas de créditos en línea, si los socios comerciales acceden a información confidencial en una extranet, si las instalaciones en la que se comparte información confidencial mediante una intranet, si procesan datos confidenciales como direcciones, fechas de nacimiento, número de licencia o de identificación, si necesita cumplir con normativas de confidencialidad o si valora la confidencialidad y espera que otros valoren su confianza.
Seleccionando el nivel de autenticación
Dependiendo del nivel de seguridad que se quiere brindar en la transacción, independientemente de la compañía certificadora los tipo de certificados se clasifican por el tipo de encriptamiento que ofrece:
- tipo de cifrado o llave: hasta 256 bits
- algoritmo de encriptamiento utilizado: AES (American Encryption Standart), DES (Data Encription Standard), RC4,SHA-1 o combinaciones entre ellos.
SSL proporciona servicios de seguridad a la pila de protocolos, encriptando los datos salientes de la capa de Aplicación antes de que estos sean segmentados en la capa de Transporte y encapsulados y enviados por las capas inferiores. Es más, también puede aplicar algoritmos de compresión a los datos a enviar y fragmentar los bloques de tamaño mayor a 214 bytes, volviéndolos a reensamblarlos en el receptor. La versión más actual de SSL es la 3.0. que usa los algoritmos simétricos de encriptación DES, TRIPLE DES, RC2, RC4 e IDEA, el asimétrico RSA, la función hash MD5 y el algoritmo de firma SHA-1.
Los algoritmos, longitudes de clave y funciones hash de resumen usado en SSL dependen del nivel de seguridad que se busque o se permita, siendo los más habituales los siguientes:
· RSA + Triple DES de 168 bits + SHA-1: soportado por las versiones 2.0 y 3.0 de SSL, es uno de los conjuntos más fuertes en cuanto a seguridad, ya que son posibles 3.7 * 1050 claves simétricas diferentes, por lo que es muy difícil de romper. Por ahora sólo está permitido su uso en Estados Unidos, aplicándose sobre todo en transacciones bancarias.
· RSA + RC4 de 128 bits + MD5: soportado por las versiones 2.0 y 3.0 de SSL, permite 3.4 * 10 38 claves simétricas diferentes que, aunque es un número inferior que el del caso anterior, da la misma fortaleza al sistema. Análogamente, en teoría sólo se permite su uso comercial en Estados Unidos, aunque actualmente ya es posible su implementación en los navegadores más comunes, siendo usado por organismos gubernamentales, grandes empresas y entidades bancarias.
· RSA + RC2 de 128 bits + MD5: soportado sólo por SSL 2.0, permite 3.4 * 10 38 claves simétricas diferentes, y es de fortaleza similar a los anteriores, aunque es más lento a la hora de operar. Sólo se permite su uso comercial en Estados Unidos, aunque actualmente ya es posible su implementación en los navegadores más comunes.
· RSA + DES de 56 bits + SHA-1: soportado por las versiones 2.0 y 3.0 de SSL, aunque es el caso de la versión 2.0 se suele usar MD5 en vez de SHA-1. Es un sistema menos seguro que los anteriores, permitiendo 7.2 * 10 16 claves simétricas diferentes, y es el que suelen traer por defecto los navegadores web en la actualidad (en realidad son 48 bits para clave y 8 para comprobación de errores).
· RSA + RC4 de 40 bits + MD5: soportado por las versiones 2.0 y 3.0 de SSL, ha sido el sistema más común permitido para exportaciones fuera de Estados Unidos. Permite aproximadamente 1.1 * 10 12 claves simétricas diferentes, y una velocidad de proceso muy elevada, aunque su seguridad es ya cuestionable con las técnicas de Criptoanálisis actuales.
· RSA + RC2 de 40 bits + MD5: en todo análogo al sistema anterior, aunque de velocidad de proceso bastante inferior.
· Sólo MD5: usado sólamente para autentificar mensajes y descubrir ataques a la integridad de los mismos. Se usa cuando el navegador cliente y el servidor no tienen ningún sistema SSL común, lo que hace imposible el establecimiento de una comunicación cifrada. No es soportado por SSL 2.0, pero si por la versión 3.0.
La clave de encriptación simétrica es única y diferente para cada sesión, por lo que si la comunicación falla y se debe establecer una nueva sesión SSL, la contraseña simétrica se generará de nuevo. SSL proporciona cifrado de alto nivel de los datos intercambiados (se cifran incluso las cabeceras HTTP), autenticación del servidor (y si es necesario también del cliente) e integridad de los datos recibidos.
El nivel de autenticación de un certificado es un indicador de calidad del site de la Organización, mientras más elevado sea el nivel de autenticación, se obtiene un mayor nivel de codificación, es por ello que antes de adquirir un certificado previa consideración de los criterios antes mencionados, se debe tomar en cuenta los niveles de seguridad que se ofrecen y eso depende de la autoridad de certificación emisora o incluso del producto concreto. Las autoridades certificadoras realizan solo una autenticación básica antes de emitir un certificado, mientras que otras llevan a cabo comprobaciones rigurosas para asegurar la identidad de la organización solicitante, entre ellas se encuentra: examen del dominio para conformar que pertenece a la compañía solicitante, comprobación de la existencia de la compañía para confirmar que es una organización legalmente registrada y verificación de la identidad de los individuos que soliciten certificados para confirmar que son representantes autorizados.
2.- Seguridad en la Transmisión de los Datos
Transmitir información a través de la Internet hace
vulnerable a los datos enviados si no se posee el nivel de seguridad lo
suficientemente fuerte que evite que estos puedan ser interceptados por
terceros, es por ello que cuando se adquieren certificados se está consiguiendo
básicamente tres cosas: Confidencialidad, Autentificación y
Integridad. Al final de cuentas esto responde básicamente a técnicas de
cifrados o métodos criptográficos ya sea simétrico, asimétrico, funciones hash o cifrados híbridos. SSL trabaja en una capa
intermedia, encima de TCP y debajo de los protocolos HTTP, IMAP y LDAP, lo que
permite brindar seguridad a diferentes herramientas de la red (FTP, Correo
electrónico, etc) y no sólo a las del comercio
electrónico. Durante el proceso de
comunicación segura SSL existen dos estados fundamentales, el estado de sesión
y el estado de conexión. A cada sesión se le asigna un número identificador
arbitrario, elegido por el servidor, un método de compresión de datos, una
serie de algoritmos de encriptación y funciones hash,
una clave secreta maestra de 48 bytes y un flag de nuevas conexiones, que indica si desde la sesión
actual se pueden establecer nuevas conexiones. Cada conexión incluye un número
secreto para el cliente y otro para el servidor, usados para calcular los MAC
de sus mensajes, una clave secreta de encriptación particular para el cliente y
otra para el servidor, unos vectores iniciales en el caso de cifrado de datos
en bloque y unos números de secuencia asociados a cada mensaje.
En el instante que una persona entra a un Site Web Seguro (https) se
desencadenan procesos de autenticación necesarios para validar el canal de
transmisión y es allí donde entra SSL. Para establecer una sesión segura a
través de SSL, el usuario hace una solicitud al servidor para establecer una
comunicación y ambos acuerdan las condiciones para la autenticación y el
cifrado de la información a intercambiar, este proceso se da sin que el usuario
que se encuentra frente el computador tenga noción del proceso que se está
realizando. Este trámite de negociación es realizado a través del protocolo handshake o saludo, parte importante de SSL y consta de lo
siguiente (figura 1):
· saludo: cliente y servidor intercambian mensajes para establecer el conjunto de algoritmos que utilizarán para mantener la privacidad de las comunicaciones durante la sesión segura. El cliente informa al servidor cual técnica de cifrado puede utilizar, solicita la verificación de la identidad del servidor y le envía un número aleatorio, el servidor responde enviando su identificador digital (un certificado que el administrador debe tramitar previamente con un ente certificador) el cual incluye su clave pública, el conjunto de algoritmos criptográficos (código que va utilizar para cifrar los datos) y de compresión y otro número aleatorio.
· Aprobación del Cliente: el usuario verifica la validez del certificado del servidor, comprobando su vigencia (período de validez) y procedencia (ente emisor), para ello el cliente desencripta la información recibida usando la clave pública del emisor, si éste aprueba al servidor, le envía una clave maestra encriptada con la clave pública del servidor, la misma servirá para que ambos se reconozcan durante la sesión segura, en el caso de que el handshake concluya con éxito.
·
Verificación: Cliente y servidor se reenvían los mensajes
encriptados, con la clave maestra establecida y si ambas partes confirman que
no ha habido interrupción en sus comunicaciones culmina exitosamente el proceso
de handshake y se inicia la sesión segura.
Mientas dure la sesión, cliente y servidor
intercambian datos fragmentando la información y comprimiéndola, cada parte del
bloque dividido se le adjunta un mensaje necesario para que el receptor logre
organizarlo.
Aunque los métodos de cifrado que utiliza SSL para
codificar los datos compartidos en una comunicación segura son conocidos, el
interceptor debe conseguir descifrar cuál está usando en una sesión determinada
mientras dura la misma.
Al finalizar el handshake ambas partes han acordado la clave secreta o privada y los métodos de encriptamiento y compresión a ser utilizados para compartir información en forma segura, cada clave secreta es generada para cada sesión, de esta manera se garantiza que si la misma es descifrada por un tercero, ésta no podrá utilizarla para interceptar datos para nuevas sesiones.

Figura 1: Proceso de autenticación
fuente: http://www.euraltia.com/img/llave.gif
3.- Estrategias de Confianza
Para generar la confianza de los clientes al visitar una página Web, se debe asegurar que el sitio despliegue todo su potencial de esta forma aumentará la confianza de los clientes en el momento de realizar transacciones on-line, incorporando un certificado de seguridad permite a los visitantes acceder a información de la empresa verificando:
1. El dominio al que se le concedió el certificado: de esta forma los visitantes podrán comprobar que la URL posee un certificado vigente.
2. El Propietario del certificado: esta opción incrementa la confianza del usuario sobre el sitio web, ya que puede conocer en cualquier momento con qué persona o empresa real está llevando a cabo sus transacciones.
3. Localización geográfica del propietario del dominio y el sitio Web.
4. Validez del Certificado.
¿Cómo podemos saber si una conexión se está realizando mediante SSL?. Generalmente los navegadores disponen de un icono que lo indica, generalmente un candado en la parte inferior de la ventana. Si el candado está abierto se trata de una conexión normal, y si está cerrado de una conexión segura. Si se hace doble click sobre el candado cerrado nos aparecerá el Certificado Digital del servidor web seguro. Además, las páginas que proceden de un servidor SSL vienen implementadas mediante protocolo HTTP seguro, por lo que su dirección, que veremos en la barra de direcciones del navegador, empezará siempre por https, como por ejemplo: https://.....com. cuando se está en presencia de una conexión segura se puede ver el certificado del servidor acudiendo al menú "Archivo" del navegador y pinchando en "Propiedades". En la parte inferior tenemos una opción "Certificados", que nos mostrará el del servidor actual. (ver figuras 2,3, y 4)º

Figura 2: Esquema de un Certificado Digital

Figura 3: Identidad de un Sitio Web




Figura 4: Emblemas de seguridad
INFOGRAFIA
http://www.mipunto.com/temas/3er_trimestre04/ssl.html
http://www.tualojamientoweb.com/contenido/certificado-de-seguridad-ssl.htm
http://www.cryptoforge.com.ar/seguridad.htm
http://www.verisign.es/ssl/index.html?sl=t13620207730000018&set=b032626
http://www.abanys.com/certificados_seguridad_que_son.html
http://www.tualojamientoweb.com