Tema 5.- BASES DE DATOS Y GESTIÓN DE LA INF. PARA EL MARKETING.pdf
Openssl
1. Pachuca Hgo. 28 de Noviembre del 2013
OPEN SSL
Unidad 4
MATERIA: SEGURIDAD EN TECNOLOGIAS DE LA INFORMACION
CATEDRATICO: JAVIER HERNANDEZ OROZCO
ALUMNA: ANA KAREN VELASCO SOTO
N.C. 09200867
2. Contenido
INTRODUCCIÓN ..................................................................................................................................... 2
SEGURIDAD EN COMUNICACIONES WEB: SSL ............................................................................................... 2
¿COMO ES EL MODELO DE CONFIANZA? .................................................................................................................. 2
DESVENTAJAS .................................................................................................................................................... 5
Uso de certificados comodín ...................................................................................................................... 5
Protección ante ataques ............................................................................................................................ 5
SSLCop ............................................................................................................................................................................. 6
OPEN SSL (LA NAVAJA SUIZA DE LA ENCRIPTACIÓN) ................................................................................ 7
REQUISITOS DE INSTALACIÓN ................................................................................................................................. 7
PROCEDIMIENTO DE INSTALACION .......................................................................................................................... 7
Generado claves......................................................................................................................................... 8
CONCLUSIÓN........................................................................................................................................ 13
REFERENCIAS ....................................................................................................................................... 14
3. Introducción
SEGURIDAD EN COMUNICACIONES WEB: SSL
Es esta época donde todo circula por internet y la información importante puede ser sustraída con
facilidad es necesario tener herramientas y habilitar procedimientos para la protección de los datos
en tránsito. En la red Internet actual, la gran mayoría de las comunicaciones a nivel de usuario son
comunicaciones vía web, hablamos de Facebook, Twitter, acceso a banca online, etc. Con la
intención de asegurar las conexiones del mayor número de personas posibles se ve interesante
profundizar exclusivamente en la protección de comunicaciones web. Es por tanto necesario
asegurar que cuando interactuamos con una página web estamos realmente intercambiando
información con la página legítima y no con un atacante. Para ello, se ha implementado un modelo
de seguridad basado en una infraestructura de clave pública (PKI, del inglés Public Key
Infrastructure) en el protocolo SSL.
¿Como es el Modelo de confianza?
Cuando nos conectamos a una página web mediante el protocolo HTTPS (HTTP sobre SSL), nuestro
navegador se conecta al servidor web e intenta establecer una sesión segura mediante SSL. Para
ello, se llevan a cabo los siguientes pasos:
1. Obtención del certificado del servidor. En primer lugar, el servidor nos envía un certificado digital.
Esto sería equivalente a un pasaporte o documento de identidad generado por las autoridades de
nuestro país. Básicamente, el certificado incluye el dominio de la página web, el período de validez,
la parte pública del par de claves que el servidor va a usar para establecer la comunicación y una
firma digital creada por una Autoridad de Certificación (CA, Certification Authority).
2. Comprobación del certificado. Una vez se tiene el certificado, se obtiene la clave pública de la CA
y se verifica la validez del mismo. Para que este paso sea válido, la CA debe estar dentro de una lista
de autoridades de confianza (por ejemplo, equivaldría a ser generado por un país de la EUA en el
mundo real). Para ello, los navegadores contienen una lista de CA de confianza. Si el certificado no
ha sido generado por una CA de confianza, es posible no obstante que haya sido por generado por
una CA subordinada. En este caso se procede a comprobar la firma digital sobre el certificado de la
CA subordinada. Con esto se genera una cadena de certificados, que debe acabar en una autoridad
de confianza. Si es posible verificar todos los certificados de la cadena, entonces se asume que la
clave pública expuesta por el servidor es de confianza.
3. Comprobación de la identidad del servidor. Una vez establecida la confianza de la clave pública,
es necesario establecer la identidad del servidor. Para ello, se utiliza el protocolo SSL para asegurar
que el servidor con el que estamos hablando efectivamente tiene conocimiento de la clave privada
4. correspondiente. Además, el protocolo SSL se asegura de introducir datos aleatorios en la
comprobación para evitar que un atacante pueda estar reusando comunicaciones almacenadas con
anterioridad.
4. Generación de claves simétricas. Finalmente, se utilizan los datos intercambiados entre cliente y
servidor para generar dos claves simétricas. Éstas se usarán para asegurar la confidencialidad y la
integridad de las comunicaciones durante la sesión web.
Sin embargo, SSL no protege frente atacantes capaces de comprometer la seguridad de cualquiera
de los dos extremos de la información. Si el cliente ha sido comprometido, es obvio que el atacante
tendrá acceso a cualquier comunicación del mismo con un servidor web por mucho que éste utilice
SSL. Por otra parte, si un servidor web es comprometido, el atacante sería capaz de inyectar
información en las sesiones SSL así como acceder a toda la información a la que tiene acceso el
sistema comprometido. Por último, si el atacante es capaz de obtener la clave privada
correspondiente al servidor, éste sería capaz también de descifrar las comunicaciones protegidas
vía SSL puesto que tendría acceso a toda la información necesaria para derivar las claves simétricas
utilizadas en las sesiones web. Así pues, SSL protege la confidencialidad y la integridad de la
comunicación pero no puede proteger al usuario ante servidores maliciosos o comprometidos.
Generalmente, cuando se accede a un servicio web vía SSL, el navegador se encarga de verificar el
certificado y establecer la sesión si dicha verificación se realiza con éxito. Los navegadores más
comunes disponen de mecanismos para notificar al usuario que la verificación se ha realizado con
éxito, generalmente mediante el uso de un pequeño candado.
En la siguiente imagen se muestra un ejemplo del certificado de identidad de gmail, ha sido
verificado.
5. La información sobre el certificado:
Detalles más a fondo del certificado de identidad:
6. Desventajas
Uso de certificados comodín
En los certificados utilizados para garantizar la autenticidad de los servidores web existe la
posibilidad de utilizar comodines dentro del dominio web. Así pues, se pueden generar certificados
válidos para cualquier dominio. Obviamente, para generar dicho certificado se necesitaría la
colaboración de CAs o el acceso ilegítimo a ellas.
Por ejemplo, en las agencias de espionaje de determinados gobiernos tengan acceso a este tipo de
certificados para realizar labores de vigilancia e investigación.
Protección ante ataques
En vista de los ataques más comunes ante SSL, existen dos formas principales de protegerse como
usuario: limitando la lista de CAs de confianza y/o vigilando los certificados de aquellas páginas webs
con las que interactuamos. Puesto que la verificación manual de certificados cada vez que visitamos
una página web es una tarea tediosa, en esta sección vamos a ver algunas utilidades que nos pueden
ayudar en este cometido.
7. SSLCop
SSLCop es una herramienta desarrollada con el objetivo de limitar el número de CAs de confianza
en sistemas Windows. El concepto básico detrás de esta herramienta es que en general, un usuario
español, por ejemplo, no tiene ninguna necesidad de acceder a sitios web con certificados emitidos
en Macao. Siguiendo este concepto, la herramienta SSLCop nos permite elegir en qué CAs queremos
confiar basándonos en el país de origen de la misma. Cómo se puede ver en esta imagen, la interfaz
nos permite seleccionar CAs por países y bloquear aquellos países seleccionados.
Una vez presionado el botón BLOCK!, estas CAs son eliminadas de la lista de CAs de confianza de
Windows, que es usada entre otros por Internet Explorer y Google Chrome.
Cabe aclarar que el certificado se ha borrado pero esto no impide que se pueda visualizar la página.
8. OPEN SSL (la navaja suiza de la encriptación)
Requisitos de instalación
•
•
•
•
Instalar OpenSSL
Acceder a la página www.openssl.org
Buscar el ejecutable de Windows en la sección Related/binaries
Para poder trabajar en d:temp hay que definir el path:
c:opensslbin
Procedimiento de instalacion
Despues de descargar el setup de OPENSSL le damos doble clic y seguimos le procedimiento como
se muestra en las siguientes imagenes:
2.1.-
3.-
4.-
9. 5.-
6.-
Generado claves
Para realizar una encriptacion se necesitan dos claves ya sean asimetricas (diferentes entre ellas) o
simetricas(iguales entre ellas) una debe ser de caracter publico y otra privada.
Con OPENSSL se generan dichas claves, de forma sencilla y con opciones de nivel de encriptacion
(las “vueltas” de cifrado que se le dan al archivo a encriptar).
En cmd escribimos el comando openssl?
Y observamos que entre ellos aparecen los comandos genrsa y rsa, que nos permitirán generar las claves
publica y privada.
10. Como primer ejercicio, vamos a generar una clave privada de 1.024 bits de nombre c4yRSA1 como
se observa en la siguiente figura. Para ello usaremos el siguiente comando:
C:OpenSSL-Win32bin>openssl genrsa -out c4yRSA1 1024
Seguramente te preguntarás qué significan esos puntos y esas cruces que aparecen en dos líneas
mientras se calcula la clave. Se trata de la indicación que nos hace el programa que está intentando
encontrar un primo p y luego un primo q, y comprobando que ambos son primos. Más adelante
tendrás ocasión de comprobarlo cuando calcules una clave muy grande y por tanto tarde bastante
tiempo en generarse. Además comprobamos que si no especificamos nada al respecto, OpenSSL usa
como clave pública estándar el número 4 de Fermat: 65.537 ó 0x10001.
Ejecutando el siguiente comando se va a generar esta clave “muygrande” de 8.192 bits el programa
tarda varios segundos, lo que se observa en la velocidad en que van apareciendo los puntos y las
cruces.
Esto depende del nivel de cifrado que se le ha dado a la clave, por eso es que tarda unos mili
segundos más en encriptar que con la clave anterior.
11. C:OpenSSL-Win32bin>openssl genrsa -out muygrande 8192
Para ver la clave pública, deberemos ejecutar antes el siguiente comando:
C:OpenSSL-Win32bin>openssl rsa -in c4yRSA1 -pubout
12. En esta imagen se muestra la diferencia del nivel de cifrado en la clave que se llama “muygrande”.
En la ruta siguiente se puede visualizar la clave privada, se debe abrir con wordpad el archivo
c4yRSA1 almacenado en la siguiente ruta:
C:OpenSSL-Win32bin
14. Conclusión
OPENSSL es una herramienta para encriptación de datos que normalmente se utiliza para crear
certificados digitales que sirve para que el navegador identifique si la página a donde se está
accesando es auténtica, estos certificados se utilizan principalmente es páginas que necesitan
seguridad extra como lo son Gmail, Outlook, twitter y de banca electrónica entre otras.
Cabe destacar que esta herramienta proporciona también claves privadas y públicas para cifrar
archivos comunes, con diferentes niveles de encriptación.
OPENSSL al ser una herramienta de encriptación podría utilizarse en la última capa de nuestro
sistema de seguridad web, pero no por eso debemos subestimarlo sobre lo útil que puede ser al
proteger información muy valiosa.
15. Referencias
Bioinformatiquillo. (26 de 11 de 2013). Obtenido de
http://bioinformatiquillo.wordpress.com/2007/12/16/encriptacion-sencilla-de-ficheroscon-openssl/
Criptored. (20 de 11 de 2013). Obtenido de
http://www.criptored.upm.es/crypt4you/temas/RSA/leccion7/leccion07.html
INFOW. (24 de 11 de 2013). Obtenido de http://infow.wordpress.com/2009/01/11/openssl-lanavaja-suiza-del-cifrado/
LINGUEE. (20 de 11 de 2013). Obtenido de http://www.linguee.es/inglesespanol/traduccion/openssl+toolkit.html
OPENSSL . (24 de 11 de 2013). Obtenido de http://www.openssl.org/docs/apps/genrsa.html
Wikipedia. (18 de 11 de 2013). Obtenido de http://en.wikipedia.org/wiki/Convergence_(SSL)