SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
 
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
Vulnerabilidad OpenSSL
CVE 2014-0160
	
  
A missing bounds check in the handling of the
TLS heartbeat extension can be used to reveal
up to 64k of memory to a connected client or
server ...	
  
	
  
	
  
	
  
	
  
	
  
	
   	
  
 
	
  
INTRODUCCIÓN	
  Y	
  OBJETIVOS	
  
Este informe presenta los resultados obtenidos tras un proceso de
investigación y análisis sobre la vulnerabilidad encontrada en la
librería OpenSSL, descubierta por uno de los expertos en seguridad
de Google y la compañía Codenomicon, que ha sido catalogada con el
código CVE-2014-0160 y bautizada como Heartbleed, al estar
vinculada con un error en la funcionalidad heartbeat de dicha libería.
El objetivo del presente documento es recopilar toda la información
disponible sobre la vulnerabilidad en el paquete de seguridad.
RESUMEN	
  EJECUTIVO	
  
• OpenSSL Consiste en un robusto paquete de herramientas de
administración y bibliotecas relacionadas con la criptografía,
que suministran funciones criptográficas a varios protocolos .
• La vulnerabilidad permitiría a un atacante obtener 64Kb de
memoria, que aunque pudiera parecer una cantidad mínima,
podría comprometer información crítica del sistema afectado.
• Además del foco sobre HTTPS/SSL, no debemos olvidarnos de
que existen muchos otros protocolos que puedieran estar
afectados por esta vulnerabilidad, como XMPP, SMTP / POP3 /
IMAP, STARTTLS, SSL VPNs, VoIP etc.
• Lo realmente preocupante es la extensión que ha podido y
puede tener esta vulnerabilidad, ya que OpenSSL es utilizado,
entre otros muchos protocolos y servicios, por servidores web
como Apache o nginx, que de forma conjunta abarcan el 66%
de los sitios activos en Internet (de acuerdo con la Encuesta de
Netcraft sobre Servidores Web para Abril de 2014):
 
	
  
VERSIONES	
  DEL	
  OPENSSL	
  VULNERABLES	
  
No todas las versiones de OpenSSL se han visto afectadas por la
vunerabilidad, sino que sólamente una parte de la rama 1.0.1, como:
• 1.0.1
• 1.0.1a
• 1.0.1b
• 1.0.1c
• 1.0.1d
• 1.0.1e
• 1.0.1f
Las versiones anteriores de OpenSSL no son vulnerables, y la versión
1.0.1g ha solucionado finalmente el problema.
SISTEMAS	
  OPERATIVOS	
  AFECTADOS	
  
Muchos sistemas operativos Unix/Linux distribuyen por defecto entre
sus componentes las bibliotecas de OpenSSL que se han visto
afectadas por la vulnerabilidad.
Algunos de los sistemas operativos afectados son:
• Debian Wheezy (estable) y OpenSSL 1.0.1e-2 + deb7u4
• Ubuntu 12.04.4 LTS y OpenSSL 1.0.1-4ubuntu5.11
• CentOS 6.5 y OpenSSL 1.0.1e-15
• Fedora 18 y OpenSSL 1.0.1e-4
• OpenBSD 5.3. y 5.4. y OpenSSL 1.0.1c del 10 de mayo 2012
• FreeBSD: y OpenSSL 10.0 – 1.0.1e del 11 de febrero 2013
• NetBSD 5.0.2. y OpenSSL 1.0.1e
• OpenSUSE 12.2 y OpenSSL 1.0.1c
Las siguientes versiones no están afectadas, ya que no incluyen una
versión vulnerable:
• Debian Squeeze y OpenSSL 0.9.8o-4squeeze14.
• SUSE Linux Enterprise Server.
• FreeBSD 8.4 y OpenSSL 0.9.8y
• FreeBSD 9.2 y OpenSSL 0.9.8y
• FreeBSD Ports y OpenSSL 1.0.1g
Además de estos sistemas operativos, debemos tener en cuenta que
si hemos realizado algún tipo de actualización a una versión
vulnerable, estaremos afectados por el problema.
También lo estará cualquier dispositivo embebido que haga uso de
código fuente de estas versiones de OpenSSL.
 
	
  
ANÁLISIS	
  DE	
  LA	
  VULNERABILIDAD	
  
Es muy importante recalcar que ha sido una de las vulnerabilidades
que más ha preocupado a la comunidad de seguridad informático por
la sencillez de su explotación ya que existen herramientas con una
complejidad mínima que podría utilizarse para obtener usuarios y
contraseñas de los servidores afectados.
Dentro de la sección de memoria afectada puede encontrarse
información crítica como:
• Claves privadas
• Usuarios y contraseñas de acceso al dispositivo
• Información sensible sobre servicios de terceros
• Direcciones de memoria y contenido que podría permitir evadir
mecanismos de mitigación de exploits
La vulnerabilidad radica en la implementación de la extensión TLS
Heartbeat, de la cual la vulnerabilidad toma el nombre. Esta
extensión de TLS es habitualmente necesaria para establecer una
sesión y mantenerla durante un periodo largo de tiempo.
Podemos consultar y obtener más información en la propia RFC6520
de la extensión, aunque simplificando mucho el protocolo de
heartbeat, se basa fundamentalmente en una petición y una
respuestá.
El siguiente pseudocódigo muestra la estructura de esta petición:
El primer campo del mensaje, HeartbeatMessageType, muestra el
tipo del mensaje, que puede tener el valor de 1 o 2, depndiente de si
el mensaje es una petición o una respuesta.
A continuación, payload_length, se indica el tamaño del payload
enviado en el mensaje. Al tratarse de un entero sin signo de 16 bits,
su valor máximo es:
216-1
=65535
Si estamos familiarizados con la vulnerabilidad, esta cifra nos será
familiar, ya que se trata de los famosos 64k de memoria que el
atacante será capaz de obtener de memoria cada vez.
 
	
  
Después nos encontramos el payload del mensaje, que tendrá
contenido arbitrario con una longitud correspondiente al tamaño
indicado anteriormente.
Finalmente, nos encontramos el padding. Se trata de contenido
aleatorio, de al menos 16 bytes de longitud, tal y como está definido
en la RFC6520, y debe ser ignorado:
Para entender aún mejor esta estructura, se presenta el siguiente
gráfico donde se puede obtener una representación gráfica:
MessageType Payload_Length Payload Padding
Resaltaremos una condición más del RFC6520, que especifica que si
se recibe una petición válida, el recepto deberá responder al mensaje
con una copia idéntica del payload recibido, lo cual nos ayudará a
entender la razón del envío de bloques de memoria arbitrarios:
A partir de este momento, nos centraremos en parte del código de las
funciones encargadas de gestionar los Heartbeat en la versión de
OpenSSL 1.0.1f, dentro del fichero d1_both.c.
La primera parte del código responsable:
Podemos un puntero p que apunta a la petición de heartbeat que
hemos recibido, hbtype contendrá el valor del tipo de mensaje
(pregunta o respuesta) que hemos visto anteriormente, y el campo
payload que contendrá la longitud del payload que recibamos (no
debemos confundir el campo con los datos de payload recibidos), y el
padding del mensaje, que conocemos que al menos debe ser de 16
bytes.
 
	
  
A continuación comienza a procesarse el mensaje:
El primer byte, tipo de mensaje, es copiado a la variable hbtype y el
el campo que define la longitud del payload se copia a la variable
definida anteriormente como payload, utilizando la función n2s, y
dejamos el puntero pl apuntando a la parte del payload recibido.
Ahora es momento de comprobar si hemos recibido una solicitud de
heartbeat y preparar el contenido en memoria para la respuesta:
Como vemos en el código, crearemos y asignaremos una nueva
variable, llamada buffer, que tendrá el tamaño en memoria del
paquete de respuesta que vamos a crear.
Se asignará como tipo de mensaje una respuesta de heartbeat, y tal
como indica el RFC6520, a continuación se copiará campo del tamaño
del payload y el payload enviado originalmente.
Aquí es donde se encuentra la vulnerabilidad, ya que el campo
payload contiene la longitud del campo, y se utilizará para
determinar exactamente cuantos bytes de memoria deberían ser
copiados en el buffer que utilizaremos para la respuesta, sin
comprobar que en el paquete original:
payload_length < payload
Esto implica que una vez que el atacante modifique estos campos,
puede indicar que la longitud del payload es superior a la del mensaje
enviado, por lo que los datos a continuación en la memoria del
servidor, serán copiados en la respuesta.
Por ejemplo, si el atacante define el campo payload_length a un valor
de 255 bytes y el payload enviado contiene 5 bytes, el resto del
 
	
  
contenido de respuesta pertenecerá a zonas de memoria que pueden
incluir mensajes sin cifrar, credenciales, claves privadas etc.
En el momento actual, los exploits que se encuentran en circulación
tratan de capturar el máximo contenido de memoria para optimizar el
ataque, indicando que la longitud del payload es el máximo
permitido:
216-1
=65535
En atacante enviaría el siguiente paquete a la víctima, indicando una
longitud de payload diferente al introducido finalmente:
La victima procesará el mensaje de acuerdo al código vulnerable,
respondiento con un mensaje en el que volcará el byte recibido, más
los datos localizados en la memoria en el momento del ataque, hasta
generar los 65535 bytes:
Es importante recalcar que los datos a los que puede tener acceso un
atacante corresponden y dependen exclusivamente del contenido de
la memoria en el momento del ataque, no siendo posible su
determinación.
Para corregir este fallo, en la última actualización de OpenSSL (1.0.1f
en el momento de publicación de este informe), se ha introducido un
cheque para la longitud de escritura en la respuesta:
 
	
  
COMPROBACIÓN	
  DE	
  LA	
  VULNERABILIDAD	
  
Para comprobar de forma online si un servidor puede estar afectado
por la vulnerabilidad CVE-2014-0160, existen posibilidades para
realizar el chequeo en diferentes páginas de Internet, con sólo
introducir el nombre de dominio correspondiente, como:
• http://filippo.io/Heartbleed/
Portal original para la comprobación de la vulnerabilidad, que
también permite descargarnos el código fuente desde el sitio de
GitHub, pudiendo adaptarlo a nuestras necesidades o
implantarlo como herramienta en nuestra Intranet
• http://www.ssllabs.com/ssltest/
Debemos prestar atención en activar la opción "Do not show
the results on the boards" y no mostrar el resultado de forma
pública en la página.
Dentro de las diferentes pruebas de concepto y herramientas
publicadas para detectar y explotar la vulnerabilidad, destacaremos:
• Prueba de concepto original
http://s3.jspenguin.org/ssltest.py
• Metasploit
https://github.com/rapid7/metasploit-
framework/blob/master/modules/auxiliary/scanner/
ssl/openssl_heartbleed.rb
• Prueba de concepto que permite tunelizar los datos filtrados
a través de SSL para evadir IDS/IPS y forenses
http://pastebay.net/1422064
 
	
  
• Script NSE para nmap
https://svn.nmap.org/nmap/scripts/ssl-
heartbleed.nse
• Plugin oficial NASL de Tenable
http://www.tenable.com/plugins/index.php?view=si
ngle&id=73404
Si no disponemos de conexión a Internet para realizar el chequeo de
forma online o descargar la herramienta adecuada, podemos
comprobarlo desde la propia línea de comandos haciendo uso del
cliente de OpenSSL:
$ openssl s_client -connect <ip>:<puerto>
Y desde la interfaz, pulsar B. Si recibimos un error, el servicio no es
vulnerable. En otro caso, el servicio es potencialmente vulnerable.
Veamos como ejemplo una salida real de un servicio vulnerable:
New, TLSv1/SSLv3, Cipher is AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1.2
Cipher : AES256-GCM-SHA384
Session-ID:
1907E866C9EA711CBCC79990A42A3397F42C18187E134C1D45F127D2892D
Session-ID-ctx:
Master-Key:
1879E87ED22A69961A769C09CC7BBD920CD274D26D4856AD21A162DA5B9
754415204E737F3AD6D1C658E486D6F1FDB17
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
TLS session ticket lifetime hint: 300 (seconds)
TLS session ticket:
0000 - db cb 01 bb d5 55 70 90-0a 23 3e 5c 21 e1 f1 f6 .....Up..#>!...
0010 - 7f 84 fe b3 1a f3 6f f7-82 ea b3 be ff b2 8d 14 ......o.........
0020 - dc 9c e6 d4 fc ed 8a 0d-f9 64 59 1d 2e e3 5b 25 .........dY...[%
0030 - a0 cb 45 c7 bd fd 74 8e-a3 1d 4e 9f 03 2f 30 b9 ..E...t...N../0.
0040 - 1e fa 84 36 bd ba 36 21-5c cc 18 00 18 bb 0a 1a ...6..6!.......
0050 - b2 01 87 d1 bc cd 11 cb-2e 64 62 36 50 51 89 57 .........db6PQ.W
0060 - e6 d3 19 a8 5e 01 2e 3d-6d ec bc 13 ce fb ee 52 ....^..=m......R
0070 - bc b4 5c 16 92 93 8a a5-bd d7 01 9d 5e a9 84 1e ...........^...
0080 - 37 d2 15 93 bf 9d 22 93-06 fb e6 b9 16 18 61 f8 7.....".......a.
0090 - 3b b8 df 77 f9 2e 8c 81-e4 10 e2 3c 07 40 c7 81 ;..w.......<.@..
00a0 - 13 e2 91 1f 69 a6 7e 64-93 28 30 78 55 34 6b 5e ....i.~d.(0xU4k^
00b0 - f6 99 78 ba 7c 9f 13 51-d8 2b b3 1f bc e5 7e b1 ..x.|..Q.+....~.
Start Time: 1396986311
Timeout : 300 (sec)
Verify return code: 20 (unable to get local issuer certificate)
---
B
HEARTBEATING
read R BLOCK
 
	
  
ACTUALIZACIÓN	
  DE	
  PAQUETES	
  AFECTADOS	
  
Para solucionar la vulnerabilidad, es necesario actualizar los paquetes
de OpenSSL siguiendo las indicaciones y recomendaciones del
fabricante.
Como normal general, será necesario actualizar la versión de
OpenSSL a una versión que no sea vulnerable (en este momento la
1.0.1f) utilizando el gestor de paquetes correspondiente de nuestro
sistema operativo.
Es importante reiniciar los servicios correspondientes que utilicen las
librerias vulnerables para asegurarnos de que la actualización
produce el efecto deseado de inmediato.
Por ejemplo, en el caso de Ubuntu, el procedimiento sería el
siguiente:
$ sudo apt-get update
$ sudo apt-get install -y libssl1.0.0 openssl
Ahora confirmaremos la versión instalada:
$ openssl version -a
OpenSSL 1.0.1 14 Mar 2012
built on: Mon Apr 7 20:33:29 UTC 2014
platform: debian-amd64 options: bn(64,64) rc4(16x,int) des(idx,cisc,16,int)
blowfish(idx)
compiler: cc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -
D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -
DTERMIO -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -
Wformat-security -Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,-
Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -
DOPENSSL_NO_TLS1_2_CLIENT -
DOPENSSL_MAX_TLS1_2_CIPHER_LENGTH=50 -DMD32_REG_T=int -
DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -
DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -
DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -
DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM OPENSSLDIR:
"/usr/lib/ssl"
Procedemos a reiniciar todos los servicios que lo utilicen:
$ lsof -n | grep ssl | grep DEL
A continuación se presenta una lista con los enlaces a las
recomendaciones de las principales plataformas:
Ubuntu
http://www.ubuntu.com/usn/usn-2165-1/
Redhat
https://rhn.redhat.com/errata/RHSA-2014-0376.html
CentOS
http://lists.centos.org/pipermail/centos-announce/2014-
April/020249.html
 
	
  
Fedora
https://lists.fedoraproject.org/pipermail/announce/2014-
April/003205.html
OpenSUSE
http://lists.opensuse.org/opensuse-security-announce/2014-
04/msg00005.html
OpenBSD
http://ftp.openbsd.org/pub/OpenBSD/patches/5.5/common/00
2_openssl.patch.sig
Gentoo
http://www.gentoo.org/security/en/glsa/glsa-201404-07.xml
Si no nos es posible utilizar las fuentes y procedimientos oficiales de
actualización, tenemos como alternativa recompilarlo desde cero,
deshabilitando el soporte de Heartbeat con la opción:
-DOPENSSL_NO_HEARTBEATS
REGLAS	
  DE	
  DETECCIÓN	
  DE	
  LA	
  AMENAZA	
  PARA	
  IDS/IPS	
  
Para poder además detectar posibles ataques que exploten la
vulnerabilidad descrita en este reporte, se recomiendan una serie de
reglas para incluir en los diferentes sistemas de IPS/IDS, que nos
alertaran cuando un posible atacante realice algún intento malicioso.
A continuación se detallan una serie de reglas oficiales dentro del
paquete oficial de suscripción para clientes del Sourcefire
Vulnerability Research Team:
alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER
OpenSSL SSLv3 heartbeat read overrun attempt";
flow:to_server,established; content:"|18 03 00|"; depth:3; dsize:>40;
detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced-
ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160;
classtype:attempted-recon; sid:30510; rev:2;)
alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER
OpenSSL TLSv1 heartbeat read overrun attempt";
flow:to_server,established; content:"|18 03 01|"; depth:3; dsize:>40;
detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced-
ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160;
classtype:attempted-recon; sid:30511; rev:2;)
alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER
OpenSSL TLSv1.1 heartbeat read overrun attempt";
flow:to_server,established; content:"|18 03 02|"; depth:3; dsize:>40;
detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced-
ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160;
classtype:attempted-recon; sid:30512; rev:2;)
alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER
OpenSSL TLSv1.2 heartbeat read overrun attempt";
flow:to_server,established; content:"|18 03 03|"; depth:3; dsize:>40;
 
	
  
detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced-
ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160;
classtype:attempted-recon; sid:30513; rev:2;)
alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER
SSLv3 large heartbeat response - possible ssl heartbleed attempt";
flow:to_client,established; content:"|18 03 00|"; depth:3;
byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds
60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl;
reference:cve,2014-0160; classtype:attempted- recon; sid:30514; rev:3;)
alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER
TLSv1 large heartbeat response - possible ssl heartbleed attempt";
flow:to_client,established; content:"|18 03 01|"; depth:3;
byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds
60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl;
reference:cve,2014-0160; classtype:attempted- recon; sid:30515; rev:3;)
alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER
TLSv1.1 large heartbeat response - possible ssl heartbleed attempt";
flow:to_client,established; content:"|18 03 02|"; depth:3;
byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds
60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl;
reference:cve,2014-0160; classtype:attempted- recon; sid:30516; rev:3;)
alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER
TLSv1.2 large heartbeat response - possible ssl heartbleed attempt";
flow:to_client,established; content:"|18 03 03|"; depth:3;
byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds
60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl;
reference:cve,2014-0160; classtype:attempted- recon; sid:30517; rev:3;)
También se ha publicado un módulo de detección para Bro, disponible
en la URL oficial:
https://github.com/bro/bro/blob/topic/bernhard/heartbeat/scripts/policy/pro
tocols/ssl/heartbleed.bro
La correspondiente regla para Suricata:
alert tls any any -> any any ( msg:"TLS HEARTBLEED malformed heartbeat
record"; flow:established,to_server; dsize:>7; content:"|18 03|"; depth:2;
lua:tls-heartbleed.lua; classtype:misc-attack; sid:3000001; rev:1;)
Y el script necesario:
function init (args)
local needs = {}
needs["payload"] = tostring(true)
return needs
end
function match(args)
local p = args['payload']
if p == nil then
--print ("no payload")
return 0
end
 
	
  
if #p < 8 then
--print ("payload too small")
end
if (p:byte(1) ~= 24) then
--print ("not a heartbeat")
return 0
end
-- message length
len = 256 * p:byte(4) + p:byte(5)
--print (len)
-- heartbeat length
hb_len = 256 * p:byte(7) + p:byte(8)
-- 1+2+16
if (1+2+16) >= len then
print ("invalid length heartbeat")
return 1
end
-- 1 + 2 + payload + 16
if (1 + 2 + hb_len + 16) > len then
print ("heartbleed attack detected: " .. (1 + 2 + hb_len + 16) .. " > "
.. len)
return 1
end
--print ("no problems")
return 0
end
return 0
MITIGAR	
  LOS	
  EFECTOS	
  DE	
  LA	
  AMENAZA	
  
En última instancia, además de actualizar los paquetes afectados por
la vulnerabilidad, será necesario gestionar los datos que hayan
podido ser comprometidos por terceras personas, para evitar ataques
posteriores.
Debido a que la vulnerabilidad permite acceder a bloques de memoria
en los servidores afectados, es posible que información como la
detallada a continuación, se haya visto comprometida:
• Credenciales (login y password) de usuarios del sistema
• Claves privadas de los certificados TLS/SSL
• Información sensible sobre servicios de terceros
• Direcciones de memoria y contenido que podría permitir
evadir mecanismos de mitigación de exploits
	
  
Solamente una vez actualizado y corregido el problema, se
recomendará comenzar con el proceso de mitigación, que pueden
afectar tanto a la seguridad de los usuarios, como a la del servidor y
los certificados instalados.
 
	
  
CLAVES	
  PRIVADAS	
  DE	
  LOS	
  CERTIFICADOS	
  SSL	
  
En la siguiente captura, podremos demostrar que es posible bajo
ciertas condiciones, acceder a la clave privada SSL de forma parcial o
total de un sistema vulnerable:
Será necesario actuar de la siguiente manera en relación las claves
privadas SSL del servidor afectado:
1. Revocar los certificados instalados, ya que un atacante podría
haber podido acceder a ellas, y por tanto estar comprometidas
2. Generar nuevas claves y nuevos certificados para los servicios
que que hayan estado expuestos
3. Mantener una copia de los certificados y claves antiguas, por si
fuera necesario en un futuro acceder a información protegida
por los mismos
 
	
  
CLAVES	
  Y	
  DATOS	
  DE	
  USUARIOS
En lo referente a las claves y datos de los usuarios, y con el objetivo
claro de salvaguardar la información, así como de generar confianza
en los clientes, se recomienda regenerar las contraseñas de los
usuarios o comunicarles que será necesario un cambio en la
contraseña, forzándolo en el siguiente acceso a la plataforma.
Esta acción es de vital importancia, ya que el acceso a todas estas
credenciales es más factible en su totalidad en los fragmentos de
memoria devueltos por el servidor afectado:
	
  
OTROS	
  SERVICIOS	
  
Finalmente, deberemos tener en cuenta que la posible afectación de
plataformas intermedias, como los VPN SSLs, han podido exponer a
un atacante el tráfico en claro que se encontrara cursando durante la
explotación del ataque, revelando credenciales de servicios de
terceros, cookies, así como otra información sensible:
	
  
REFERENCIAS	
  
Puede	
  encontrarse	
  más	
  información	
  de	
  utilidad	
  sobre	
  esta	
  vulnerabilidad	
  en	
  los	
  
siguientes	
  enlaces	
  proporcionados:	
  
• http://cert.inteco.es/securityAdvice/Actualidad/Avisos_seguridad_tecnicos
/grave_vulnerabilidad_funcionalidad_heartbeat_openssl_20140	
  408	
  
• https://cve.mitre.org/cgi-­‐bin/cvename.cgi?name=CVE-­‐2014-­‐0160	
  
http://heartbleed.com	
  
• http://www.openssl.org/news/secadv_20140407.txt	
  
 
	
  
• http://vrt-­‐blog.snort.org/2014/04/heartbleed-­‐memory-­‐disclosure-­‐
upgrade.html	
  
• http://doc.emergingthreats.net/bin/search/Main/?search=heartbleed	
  
http://www.blackploit.com/2014/04/vulnerabilidad-­‐critica-­‐en-­‐openssl-­‐
cve.html	
  
• http://www.kb.cert.org/vuls/id/720951	
  
• https://github.com/musalbas/heartbleed-­‐
masstest/blob/master/top1000.txt	
  
• http://www.circl.lu/pub/tr-­‐21/	
  

Weitere ähnliche Inhalte

Was ist angesagt?

Instalacion del servidor proxy para conectar una red lan a una pc con salid...
Instalacion del  servidor  proxy para conectar una red lan a una pc con salid...Instalacion del  servidor  proxy para conectar una red lan a una pc con salid...
Instalacion del servidor proxy para conectar una red lan a una pc con salid...Fragatacante
 
Vc4 nm73 eq#6-tls
Vc4 nm73 eq#6-tlsVc4 nm73 eq#6-tls
Vc4 nm73 eq#6-tlsYare LoZada
 
los seguridad puertos
 los seguridad  puertos  los seguridad  puertos
los seguridad puertos jhordy2000
 
Manual de configuracion de proxy SQUID
Manual de configuracion de proxy SQUIDManual de configuracion de proxy SQUID
Manual de configuracion de proxy SQUIDAndres Ldño
 
92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como Cgi92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como CgiJosé M. Padilla
 
Configuracion proxy Windows server 2008
Configuracion proxy Windows server 2008Configuracion proxy Windows server 2008
Configuracion proxy Windows server 2008teresi0101
 
Unidad didactica cortafuegos_final
Unidad didactica cortafuegos_finalUnidad didactica cortafuegos_final
Unidad didactica cortafuegos_finalCrisMB27
 
Unidad iii seguridad de redes bmos
Unidad iii seguridad de redes bmosUnidad iii seguridad de redes bmos
Unidad iii seguridad de redes bmosBenjamin Ortiz
 
Filtrado der contenido web con GNU/Linux y Squid
Filtrado der contenido web con GNU/Linux y SquidFiltrado der contenido web con GNU/Linux y Squid
Filtrado der contenido web con GNU/Linux y SquidJorge Medina
 

Was ist angesagt? (20)

Instalacion del servidor proxy para conectar una red lan a una pc con salid...
Instalacion del  servidor  proxy para conectar una red lan a una pc con salid...Instalacion del  servidor  proxy para conectar una red lan a una pc con salid...
Instalacion del servidor proxy para conectar una red lan a una pc con salid...
 
PROXY CENTOS 6.5
PROXY CENTOS 6.5PROXY CENTOS 6.5
PROXY CENTOS 6.5
 
VC4NM73-EQ#6-TLS
VC4NM73-EQ#6-TLSVC4NM73-EQ#6-TLS
VC4NM73-EQ#6-TLS
 
Vc4 nm73 eq#6-tls
Vc4 nm73 eq#6-tlsVc4 nm73 eq#6-tls
Vc4 nm73 eq#6-tls
 
Sockets tcp
Sockets tcpSockets tcp
Sockets tcp
 
los seguridad puertos
 los seguridad  puertos  los seguridad  puertos
los seguridad puertos
 
Manual de configuracion de proxy SQUID
Manual de configuracion de proxy SQUIDManual de configuracion de proxy SQUID
Manual de configuracion de proxy SQUID
 
Introduccion a la tecnologia web
Introduccion a la tecnologia webIntroduccion a la tecnologia web
Introduccion a la tecnologia web
 
Protocolos redes
Protocolos redesProtocolos redes
Protocolos redes
 
Tutorial Instalacion Openvpn
Tutorial Instalacion OpenvpnTutorial Instalacion Openvpn
Tutorial Instalacion Openvpn
 
Resumen Servidor Proxy
Resumen Servidor ProxyResumen Servidor Proxy
Resumen Servidor Proxy
 
92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como Cgi92 Php. Instalar Php4 Como Cgi
92 Php. Instalar Php4 Como Cgi
 
Configuracion proxy Windows server 2008
Configuracion proxy Windows server 2008Configuracion proxy Windows server 2008
Configuracion proxy Windows server 2008
 
Unidad didactica cortafuegos_final
Unidad didactica cortafuegos_finalUnidad didactica cortafuegos_final
Unidad didactica cortafuegos_final
 
Manual
ManualManual
Manual
 
Servidor proxy en centos
Servidor proxy en centosServidor proxy en centos
Servidor proxy en centos
 
Unidad iii seguridad de redes bmos
Unidad iii seguridad de redes bmosUnidad iii seguridad de redes bmos
Unidad iii seguridad de redes bmos
 
Filtrado der contenido web con GNU/Linux y Squid
Filtrado der contenido web con GNU/Linux y SquidFiltrado der contenido web con GNU/Linux y Squid
Filtrado der contenido web con GNU/Linux y Squid
 
Configuracion del servidor vsftpd en linux
Configuracion del servidor vsftpd en linuxConfiguracion del servidor vsftpd en linux
Configuracion del servidor vsftpd en linux
 
Http net gui preguntas y soluciones
Http net gui preguntas y solucionesHttp net gui preguntas y soluciones
Http net gui preguntas y soluciones
 

Andere mochten auch

16 Administración Android - EMM
16 Administración Android  -  EMM16 Administración Android  -  EMM
16 Administración Android - EMMguidotic
 
Software social y comunicaciones integradas en telefónica
Software social y comunicaciones integradas en telefónicaSoftware social y comunicaciones integradas en telefónica
Software social y comunicaciones integradas en telefónicaTelefónica Grandes Clientes
 
eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...
eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...
eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...Telefónica Grandes Clientes
 
Raquel Pinillos, Congreso DEC. Informe sobre nivel de la "operativización" d...
Raquel Pinillos, Congreso DEC.  Informe sobre nivel de la "operativización" d...Raquel Pinillos, Congreso DEC.  Informe sobre nivel de la "operativización" d...
Raquel Pinillos, Congreso DEC. Informe sobre nivel de la "operativización" d...Asociación DEC
 
The 2015 U.S. Mobile App Report - COMSCORE
The 2015 U.S. Mobile App Report - COMSCOREThe 2015 U.S. Mobile App Report - COMSCORE
The 2015 U.S. Mobile App Report - COMSCORERomain Fonnier
 
Ponencia Andrés Laseca en el evento Cloud Media de Telefónica
Ponencia Andrés Laseca en el evento Cloud Media de TelefónicaPonencia Andrés Laseca en el evento Cloud Media de Telefónica
Ponencia Andrés Laseca en el evento Cloud Media de TelefónicaTelefónica Grandes Clientes
 
Aprende a crear y desplegar una aplicación de python que use APIs de BlueVia
Aprende a crear y desplegar una aplicación de python que use APIs de BlueViaAprende a crear y desplegar una aplicación de python que use APIs de BlueVia
Aprende a crear y desplegar una aplicación de python que use APIs de BlueViaBlueVia
 
Una completa y pionera guía sobre Bitcoin, la moneda virtual
Una completa y pionera guía sobre Bitcoin, la moneda virtualUna completa y pionera guía sobre Bitcoin, la moneda virtual
Una completa y pionera guía sobre Bitcoin, la moneda virtualTelefónica Grandes Clientes
 
Gamification in 2012: Trends in Consumer and Enterprise Markets with Metrics
Gamification in 2012: Trends in Consumer and Enterprise Markets with MetricsGamification in 2012: Trends in Consumer and Enterprise Markets with Metrics
Gamification in 2012: Trends in Consumer and Enterprise Markets with MetricsWanda Meloni
 
Informe Ostelea Turismo Colaborativo 2015
Informe  Ostelea Turismo Colaborativo 2015Informe  Ostelea Turismo Colaborativo 2015
Informe Ostelea Turismo Colaborativo 2015Albert Canigueral
 
Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...
Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...
Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...Telefónica Grandes Clientes
 
Observatorio de Redes Sociales: 4ª ola
Observatorio de Redes Sociales: 4ª olaObservatorio de Redes Sociales: 4ª ola
Observatorio de Redes Sociales: 4ª olaDolores Vela
 

Andere mochten auch (20)

16 Administración Android - EMM
16 Administración Android  -  EMM16 Administración Android  -  EMM
16 Administración Android - EMM
 
Telefónica I Jornada Economia y Sociedad Digital
Telefónica I Jornada Economia y Sociedad DigitalTelefónica I Jornada Economia y Sociedad Digital
Telefónica I Jornada Economia y Sociedad Digital
 
Cloud computing Autelsi
Cloud computing AutelsiCloud computing Autelsi
Cloud computing Autelsi
 
Innovation Security Day FAAST
Innovation Security Day FAASTInnovation Security Day FAAST
Innovation Security Day FAAST
 
Software social y comunicaciones integradas en telefónica
Software social y comunicaciones integradas en telefónicaSoftware social y comunicaciones integradas en telefónica
Software social y comunicaciones integradas en telefónica
 
eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...
eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...
eCongress 2015: El nuevo consumidor. Ponencia de Manuel López Pérez, de Telef...
 
Innvovation Security Day Metashield
Innvovation Security Day MetashieldInnvovation Security Day Metashield
Innvovation Security Day Metashield
 
Revolution Banking: Banca en un Futuro Digital
Revolution Banking: Banca en un Futuro DigitalRevolution Banking: Banca en un Futuro Digital
Revolution Banking: Banca en un Futuro Digital
 
Raquel Pinillos, Congreso DEC. Informe sobre nivel de la "operativización" d...
Raquel Pinillos, Congreso DEC.  Informe sobre nivel de la "operativización" d...Raquel Pinillos, Congreso DEC.  Informe sobre nivel de la "operativización" d...
Raquel Pinillos, Congreso DEC. Informe sobre nivel de la "operativización" d...
 
Social Engagement
Social EngagementSocial Engagement
Social Engagement
 
The 2015 U.S. Mobile App Report - COMSCORE
The 2015 U.S. Mobile App Report - COMSCOREThe 2015 U.S. Mobile App Report - COMSCORE
The 2015 U.S. Mobile App Report - COMSCORE
 
Ponencia Andrés Laseca en el evento Cloud Media de Telefónica
Ponencia Andrés Laseca en el evento Cloud Media de TelefónicaPonencia Andrés Laseca en el evento Cloud Media de Telefónica
Ponencia Andrés Laseca en el evento Cloud Media de Telefónica
 
Aprende a crear y desplegar una aplicación de python que use APIs de BlueVia
Aprende a crear y desplegar una aplicación de python que use APIs de BlueViaAprende a crear y desplegar una aplicación de python que use APIs de BlueVia
Aprende a crear y desplegar una aplicación de python que use APIs de BlueVia
 
Una completa y pionera guía sobre Bitcoin, la moneda virtual
Una completa y pionera guía sobre Bitcoin, la moneda virtualUna completa y pionera guía sobre Bitcoin, la moneda virtual
Una completa y pionera guía sobre Bitcoin, la moneda virtual
 
Gamification in 2012: Trends in Consumer and Enterprise Markets with Metrics
Gamification in 2012: Trends in Consumer and Enterprise Markets with MetricsGamification in 2012: Trends in Consumer and Enterprise Markets with Metrics
Gamification in 2012: Trends in Consumer and Enterprise Markets with Metrics
 
Informe Ostelea Turismo Colaborativo 2015
Informe  Ostelea Turismo Colaborativo 2015Informe  Ostelea Turismo Colaborativo 2015
Informe Ostelea Turismo Colaborativo 2015
 
Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...
Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...
Resultados Proyecto Valcronic presentados en Congreso Crónicos 2014. Más info...
 
Predicciones cloud Telefónica para 2016
Predicciones cloud Telefónica para 2016Predicciones cloud Telefónica para 2016
Predicciones cloud Telefónica para 2016
 
Observatorio de Redes Sociales: 4ª ola
Observatorio de Redes Sociales: 4ª olaObservatorio de Redes Sociales: 4ª ola
Observatorio de Redes Sociales: 4ª ola
 
Cloud Híbrida de Telefónica
Cloud Híbrida de TelefónicaCloud Híbrida de Telefónica
Cloud Híbrida de Telefónica
 

Ähnlich wie Análisis heart bleed

C documents and settings_pc10_configuración local_datos de programa_mozilla_...
C  documents and settings_pc10_configuración local_datos de programa_mozilla_...C  documents and settings_pc10_configuración local_datos de programa_mozilla_...
C documents and settings_pc10_configuración local_datos de programa_mozilla_...ORLANDO LOPEZ
 
Seguridad: Ataque Unicode Solución
Seguridad: Ataque Unicode SoluciónSeguridad: Ataque Unicode Solución
Seguridad: Ataque Unicode SoluciónFrancesc Perez
 
3.1. intro wirehsark
3.1. intro wirehsark3.1. intro wirehsark
3.1. intro wirehsarklibros007
 
Unidad iii seguridad de redes stew
Unidad iii seguridad de redes stewUnidad iii seguridad de redes stew
Unidad iii seguridad de redes stewsthewardleon
 
Seguridad: Backtrack1_bis
Seguridad: Backtrack1_bisSeguridad: Backtrack1_bis
Seguridad: Backtrack1_bisFrancesc Perez
 
Guia basica-securizacion-apache
Guia basica-securizacion-apacheGuia basica-securizacion-apache
Guia basica-securizacion-apacheERWIN AGUILAR
 
Redes del computador unidad 3
Redes del computador unidad 3Redes del computador unidad 3
Redes del computador unidad 3AngelSoto104
 
Sistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la WebSistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la WebTensor
 
Clase17(introduccion a la web)
Clase17(introduccion a la web)Clase17(introduccion a la web)
Clase17(introduccion a la web)Tensor
 
Webshelldetector
WebshelldetectorWebshelldetector
WebshelldetectorTensor
 
Capa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasCapa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasJesus Jimenez
 

Ähnlich wie Análisis heart bleed (20)

Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Unidad_2
Unidad_2Unidad_2
Unidad_2
 
C documents and settings_pc10_configuración local_datos de programa_mozilla_...
C  documents and settings_pc10_configuración local_datos de programa_mozilla_...C  documents and settings_pc10_configuración local_datos de programa_mozilla_...
C documents and settings_pc10_configuración local_datos de programa_mozilla_...
 
Seguridad: Ataque Unicode Solución
Seguridad: Ataque Unicode SoluciónSeguridad: Ataque Unicode Solución
Seguridad: Ataque Unicode Solución
 
3.1. intro wirehsark
3.1. intro wirehsark3.1. intro wirehsark
3.1. intro wirehsark
 
Unidad iii seguridad de redes stew
Unidad iii seguridad de redes stewUnidad iii seguridad de redes stew
Unidad iii seguridad de redes stew
 
Seguridad: Backtrack1_bis
Seguridad: Backtrack1_bisSeguridad: Backtrack1_bis
Seguridad: Backtrack1_bis
 
Guia basica-securizacion-apache
Guia basica-securizacion-apacheGuia basica-securizacion-apache
Guia basica-securizacion-apache
 
Servidores, seguridad y autenticación
Servidores, seguridad y autenticaciónServidores, seguridad y autenticación
Servidores, seguridad y autenticación
 
Curso de php
Curso de phpCurso de php
Curso de php
 
Redes del computador unidad 3
Redes del computador unidad 3Redes del computador unidad 3
Redes del computador unidad 3
 
Egsi Sesion2
Egsi Sesion2Egsi Sesion2
Egsi Sesion2
 
Http al descubierto
Http al descubiertoHttp al descubierto
Http al descubierto
 
Http al descubierto
Http al descubiertoHttp al descubierto
Http al descubierto
 
Sistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la WebSistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la Web
 
Clase17(introduccion a la web)
Clase17(introduccion a la web)Clase17(introduccion a la web)
Clase17(introduccion a la web)
 
Modelo tcp ip
Modelo tcp ipModelo tcp ip
Modelo tcp ip
 
Webshelldetector
WebshelldetectorWebshelldetector
Webshelldetector
 
Capa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasCapa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de Computadoras
 
Autenticacion unica
Autenticacion unicaAutenticacion unica
Autenticacion unica
 

Mehr von Telefónica Grandes Clientes

Infografía con las claves para ser excelente en experiencia de cliente
Infografía con las claves para ser excelente en experiencia de clienteInfografía con las claves para ser excelente en experiencia de cliente
Infografía con las claves para ser excelente en experiencia de clienteTelefónica Grandes Clientes
 
Infografía profesiones con futuro. Más información http://bit.ly/2bSDVNN
Infografía profesiones con futuro. Más información http://bit.ly/2bSDVNNInfografía profesiones con futuro. Más información http://bit.ly/2bSDVNN
Infografía profesiones con futuro. Más información http://bit.ly/2bSDVNNTelefónica Grandes Clientes
 
Infografía innovación a nivel global. Más info: http://bit.ly/2900oaC
Infografía innovación a nivel global. Más info: http://bit.ly/2900oaCInfografía innovación a nivel global. Más info: http://bit.ly/2900oaC
Infografía innovación a nivel global. Más info: http://bit.ly/2900oaCTelefónica Grandes Clientes
 
Ponencia Firstvision startup wayra en #cloudmediaday
Ponencia Firstvision startup wayra en #cloudmediadayPonencia Firstvision startup wayra en #cloudmediaday
Ponencia Firstvision startup wayra en #cloudmediadayTelefónica Grandes Clientes
 
Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...
Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...
Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...Telefónica Grandes Clientes
 
Infografía Cloud Privada. Más información en http://ow.ly/F1Y7t
Infografía Cloud Privada. Más información en http://ow.ly/F1Y7tInfografía Cloud Privada. Más información en http://ow.ly/F1Y7t
Infografía Cloud Privada. Más información en http://ow.ly/F1Y7tTelefónica Grandes Clientes
 
Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...
Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...
Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...Telefónica Grandes Clientes
 

Mehr von Telefónica Grandes Clientes (20)

Inspiration Day
Inspiration Day Inspiration Day
Inspiration Day
 
IT Sourcing towards the Cloud
IT Sourcing towards the Cloud IT Sourcing towards the Cloud
IT Sourcing towards the Cloud
 
eBook Emprendimiento digital
eBook Emprendimiento digital eBook Emprendimiento digital
eBook Emprendimiento digital
 
Infografía con las claves para ser excelente en experiencia de cliente
Infografía con las claves para ser excelente en experiencia de clienteInfografía con las claves para ser excelente en experiencia de cliente
Infografía con las claves para ser excelente en experiencia de cliente
 
Infografía profesiones con futuro. Más información http://bit.ly/2bSDVNN
Infografía profesiones con futuro. Más información http://bit.ly/2bSDVNNInfografía profesiones con futuro. Más información http://bit.ly/2bSDVNN
Infografía profesiones con futuro. Más información http://bit.ly/2bSDVNN
 
El eCommerce español en cifras
El eCommerce español en cifrasEl eCommerce español en cifras
El eCommerce español en cifras
 
Infografía innovación a nivel global. Más info: http://bit.ly/2900oaC
Infografía innovación a nivel global. Más info: http://bit.ly/2900oaCInfografía innovación a nivel global. Más info: http://bit.ly/2900oaC
Infografía innovación a nivel global. Más info: http://bit.ly/2900oaC
 
ebook con las últimas tendencias en Cloud
ebook con las últimas tendencias en Cloudebook con las últimas tendencias en Cloud
ebook con las últimas tendencias en Cloud
 
eBook Big Data 2016
eBook Big Data 2016eBook Big Data 2016
eBook Big Data 2016
 
El nuevo paradigma de la educación digital
El nuevo paradigma de la educación digitalEl nuevo paradigma de la educación digital
El nuevo paradigma de la educación digital
 
Ponencia Telefónica Europa en #cloudmediaday
Ponencia Telefónica Europa en #cloudmediadayPonencia Telefónica Europa en #cloudmediaday
Ponencia Telefónica Europa en #cloudmediaday
 
Ponencia rtve en #cloudmediaday
Ponencia rtve en #cloudmediadayPonencia rtve en #cloudmediaday
Ponencia rtve en #cloudmediaday
 
Ponencia Firstvision startup wayra en #cloudmediaday
Ponencia Firstvision startup wayra en #cloudmediadayPonencia Firstvision startup wayra en #cloudmediaday
Ponencia Firstvision startup wayra en #cloudmediaday
 
Ponencia 89bits startup Wayra en #CloudMmediaDay
Ponencia 89bits startup Wayra en #CloudMmediaDayPonencia 89bits startup Wayra en #CloudMmediaDay
Ponencia 89bits startup Wayra en #CloudMmediaDay
 
Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...
Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...
Caso éxito de la solución Archivo Digital Cloud de Telefónica. Más informació...
 
Infografía Cloud Privada. Más información en http://ow.ly/F1Y7t
Infografía Cloud Privada. Más información en http://ow.ly/F1Y7tInfografía Cloud Privada. Más información en http://ow.ly/F1Y7t
Infografía Cloud Privada. Más información en http://ow.ly/F1Y7t
 
Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...
Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...
Ponencia Datos abiertos en educación SIMO Educación 2014. Más información sob...
 
Genesys en Contact Center Telefónica
Genesys  en Contact Center TelefónicaGenesys  en Contact Center Telefónica
Genesys en Contact Center Telefónica
 
Verbio en Contact Center Telefónica
Verbio en Contact Center TelefónicaVerbio en Contact Center Telefónica
Verbio en Contact Center Telefónica
 
Oracle en Contact Center Telefónica
Oracle en Contact Center TelefónicaOracle en Contact Center Telefónica
Oracle en Contact Center Telefónica
 

Kürzlich hochgeladen

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 

Kürzlich hochgeladen (13)

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 

Análisis heart bleed

  • 1.                   Vulnerabilidad OpenSSL CVE 2014-0160   A missing bounds check in the handling of the TLS heartbeat extension can be used to reveal up to 64k of memory to a connected client or server ...                
  • 2.     INTRODUCCIÓN  Y  OBJETIVOS   Este informe presenta los resultados obtenidos tras un proceso de investigación y análisis sobre la vulnerabilidad encontrada en la librería OpenSSL, descubierta por uno de los expertos en seguridad de Google y la compañía Codenomicon, que ha sido catalogada con el código CVE-2014-0160 y bautizada como Heartbleed, al estar vinculada con un error en la funcionalidad heartbeat de dicha libería. El objetivo del presente documento es recopilar toda la información disponible sobre la vulnerabilidad en el paquete de seguridad. RESUMEN  EJECUTIVO   • OpenSSL Consiste en un robusto paquete de herramientas de administración y bibliotecas relacionadas con la criptografía, que suministran funciones criptográficas a varios protocolos . • La vulnerabilidad permitiría a un atacante obtener 64Kb de memoria, que aunque pudiera parecer una cantidad mínima, podría comprometer información crítica del sistema afectado. • Además del foco sobre HTTPS/SSL, no debemos olvidarnos de que existen muchos otros protocolos que puedieran estar afectados por esta vulnerabilidad, como XMPP, SMTP / POP3 / IMAP, STARTTLS, SSL VPNs, VoIP etc. • Lo realmente preocupante es la extensión que ha podido y puede tener esta vulnerabilidad, ya que OpenSSL es utilizado, entre otros muchos protocolos y servicios, por servidores web como Apache o nginx, que de forma conjunta abarcan el 66% de los sitios activos en Internet (de acuerdo con la Encuesta de Netcraft sobre Servidores Web para Abril de 2014):
  • 3.     VERSIONES  DEL  OPENSSL  VULNERABLES   No todas las versiones de OpenSSL se han visto afectadas por la vunerabilidad, sino que sólamente una parte de la rama 1.0.1, como: • 1.0.1 • 1.0.1a • 1.0.1b • 1.0.1c • 1.0.1d • 1.0.1e • 1.0.1f Las versiones anteriores de OpenSSL no son vulnerables, y la versión 1.0.1g ha solucionado finalmente el problema. SISTEMAS  OPERATIVOS  AFECTADOS   Muchos sistemas operativos Unix/Linux distribuyen por defecto entre sus componentes las bibliotecas de OpenSSL que se han visto afectadas por la vulnerabilidad. Algunos de los sistemas operativos afectados son: • Debian Wheezy (estable) y OpenSSL 1.0.1e-2 + deb7u4 • Ubuntu 12.04.4 LTS y OpenSSL 1.0.1-4ubuntu5.11 • CentOS 6.5 y OpenSSL 1.0.1e-15 • Fedora 18 y OpenSSL 1.0.1e-4 • OpenBSD 5.3. y 5.4. y OpenSSL 1.0.1c del 10 de mayo 2012 • FreeBSD: y OpenSSL 10.0 – 1.0.1e del 11 de febrero 2013 • NetBSD 5.0.2. y OpenSSL 1.0.1e • OpenSUSE 12.2 y OpenSSL 1.0.1c Las siguientes versiones no están afectadas, ya que no incluyen una versión vulnerable: • Debian Squeeze y OpenSSL 0.9.8o-4squeeze14. • SUSE Linux Enterprise Server. • FreeBSD 8.4 y OpenSSL 0.9.8y • FreeBSD 9.2 y OpenSSL 0.9.8y • FreeBSD Ports y OpenSSL 1.0.1g Además de estos sistemas operativos, debemos tener en cuenta que si hemos realizado algún tipo de actualización a una versión vulnerable, estaremos afectados por el problema. También lo estará cualquier dispositivo embebido que haga uso de código fuente de estas versiones de OpenSSL.
  • 4.     ANÁLISIS  DE  LA  VULNERABILIDAD   Es muy importante recalcar que ha sido una de las vulnerabilidades que más ha preocupado a la comunidad de seguridad informático por la sencillez de su explotación ya que existen herramientas con una complejidad mínima que podría utilizarse para obtener usuarios y contraseñas de los servidores afectados. Dentro de la sección de memoria afectada puede encontrarse información crítica como: • Claves privadas • Usuarios y contraseñas de acceso al dispositivo • Información sensible sobre servicios de terceros • Direcciones de memoria y contenido que podría permitir evadir mecanismos de mitigación de exploits La vulnerabilidad radica en la implementación de la extensión TLS Heartbeat, de la cual la vulnerabilidad toma el nombre. Esta extensión de TLS es habitualmente necesaria para establecer una sesión y mantenerla durante un periodo largo de tiempo. Podemos consultar y obtener más información en la propia RFC6520 de la extensión, aunque simplificando mucho el protocolo de heartbeat, se basa fundamentalmente en una petición y una respuestá. El siguiente pseudocódigo muestra la estructura de esta petición: El primer campo del mensaje, HeartbeatMessageType, muestra el tipo del mensaje, que puede tener el valor de 1 o 2, depndiente de si el mensaje es una petición o una respuesta. A continuación, payload_length, se indica el tamaño del payload enviado en el mensaje. Al tratarse de un entero sin signo de 16 bits, su valor máximo es: 216-1 =65535 Si estamos familiarizados con la vulnerabilidad, esta cifra nos será familiar, ya que se trata de los famosos 64k de memoria que el atacante será capaz de obtener de memoria cada vez.
  • 5.     Después nos encontramos el payload del mensaje, que tendrá contenido arbitrario con una longitud correspondiente al tamaño indicado anteriormente. Finalmente, nos encontramos el padding. Se trata de contenido aleatorio, de al menos 16 bytes de longitud, tal y como está definido en la RFC6520, y debe ser ignorado: Para entender aún mejor esta estructura, se presenta el siguiente gráfico donde se puede obtener una representación gráfica: MessageType Payload_Length Payload Padding Resaltaremos una condición más del RFC6520, que especifica que si se recibe una petición válida, el recepto deberá responder al mensaje con una copia idéntica del payload recibido, lo cual nos ayudará a entender la razón del envío de bloques de memoria arbitrarios: A partir de este momento, nos centraremos en parte del código de las funciones encargadas de gestionar los Heartbeat en la versión de OpenSSL 1.0.1f, dentro del fichero d1_both.c. La primera parte del código responsable: Podemos un puntero p que apunta a la petición de heartbeat que hemos recibido, hbtype contendrá el valor del tipo de mensaje (pregunta o respuesta) que hemos visto anteriormente, y el campo payload que contendrá la longitud del payload que recibamos (no debemos confundir el campo con los datos de payload recibidos), y el padding del mensaje, que conocemos que al menos debe ser de 16 bytes.
  • 6.     A continuación comienza a procesarse el mensaje: El primer byte, tipo de mensaje, es copiado a la variable hbtype y el el campo que define la longitud del payload se copia a la variable definida anteriormente como payload, utilizando la función n2s, y dejamos el puntero pl apuntando a la parte del payload recibido. Ahora es momento de comprobar si hemos recibido una solicitud de heartbeat y preparar el contenido en memoria para la respuesta: Como vemos en el código, crearemos y asignaremos una nueva variable, llamada buffer, que tendrá el tamaño en memoria del paquete de respuesta que vamos a crear. Se asignará como tipo de mensaje una respuesta de heartbeat, y tal como indica el RFC6520, a continuación se copiará campo del tamaño del payload y el payload enviado originalmente. Aquí es donde se encuentra la vulnerabilidad, ya que el campo payload contiene la longitud del campo, y se utilizará para determinar exactamente cuantos bytes de memoria deberían ser copiados en el buffer que utilizaremos para la respuesta, sin comprobar que en el paquete original: payload_length < payload Esto implica que una vez que el atacante modifique estos campos, puede indicar que la longitud del payload es superior a la del mensaje enviado, por lo que los datos a continuación en la memoria del servidor, serán copiados en la respuesta. Por ejemplo, si el atacante define el campo payload_length a un valor de 255 bytes y el payload enviado contiene 5 bytes, el resto del
  • 7.     contenido de respuesta pertenecerá a zonas de memoria que pueden incluir mensajes sin cifrar, credenciales, claves privadas etc. En el momento actual, los exploits que se encuentran en circulación tratan de capturar el máximo contenido de memoria para optimizar el ataque, indicando que la longitud del payload es el máximo permitido: 216-1 =65535 En atacante enviaría el siguiente paquete a la víctima, indicando una longitud de payload diferente al introducido finalmente: La victima procesará el mensaje de acuerdo al código vulnerable, respondiento con un mensaje en el que volcará el byte recibido, más los datos localizados en la memoria en el momento del ataque, hasta generar los 65535 bytes: Es importante recalcar que los datos a los que puede tener acceso un atacante corresponden y dependen exclusivamente del contenido de la memoria en el momento del ataque, no siendo posible su determinación. Para corregir este fallo, en la última actualización de OpenSSL (1.0.1f en el momento de publicación de este informe), se ha introducido un cheque para la longitud de escritura en la respuesta:
  • 8.     COMPROBACIÓN  DE  LA  VULNERABILIDAD   Para comprobar de forma online si un servidor puede estar afectado por la vulnerabilidad CVE-2014-0160, existen posibilidades para realizar el chequeo en diferentes páginas de Internet, con sólo introducir el nombre de dominio correspondiente, como: • http://filippo.io/Heartbleed/ Portal original para la comprobación de la vulnerabilidad, que también permite descargarnos el código fuente desde el sitio de GitHub, pudiendo adaptarlo a nuestras necesidades o implantarlo como herramienta en nuestra Intranet • http://www.ssllabs.com/ssltest/ Debemos prestar atención en activar la opción "Do not show the results on the boards" y no mostrar el resultado de forma pública en la página. Dentro de las diferentes pruebas de concepto y herramientas publicadas para detectar y explotar la vulnerabilidad, destacaremos: • Prueba de concepto original http://s3.jspenguin.org/ssltest.py • Metasploit https://github.com/rapid7/metasploit- framework/blob/master/modules/auxiliary/scanner/ ssl/openssl_heartbleed.rb • Prueba de concepto que permite tunelizar los datos filtrados a través de SSL para evadir IDS/IPS y forenses http://pastebay.net/1422064
  • 9.     • Script NSE para nmap https://svn.nmap.org/nmap/scripts/ssl- heartbleed.nse • Plugin oficial NASL de Tenable http://www.tenable.com/plugins/index.php?view=si ngle&id=73404 Si no disponemos de conexión a Internet para realizar el chequeo de forma online o descargar la herramienta adecuada, podemos comprobarlo desde la propia línea de comandos haciendo uso del cliente de OpenSSL: $ openssl s_client -connect <ip>:<puerto> Y desde la interfaz, pulsar B. Si recibimos un error, el servicio no es vulnerable. En otro caso, el servicio es potencialmente vulnerable. Veamos como ejemplo una salida real de un servicio vulnerable: New, TLSv1/SSLv3, Cipher is AES256-GCM-SHA384 Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE SSL-Session: Protocol : TLSv1.2 Cipher : AES256-GCM-SHA384 Session-ID: 1907E866C9EA711CBCC79990A42A3397F42C18187E134C1D45F127D2892D Session-ID-ctx: Master-Key: 1879E87ED22A69961A769C09CC7BBD920CD274D26D4856AD21A162DA5B9 754415204E737F3AD6D1C658E486D6F1FDB17 Key-Arg : None PSK identity: None PSK identity hint: None SRP username: None TLS session ticket lifetime hint: 300 (seconds) TLS session ticket: 0000 - db cb 01 bb d5 55 70 90-0a 23 3e 5c 21 e1 f1 f6 .....Up..#>!... 0010 - 7f 84 fe b3 1a f3 6f f7-82 ea b3 be ff b2 8d 14 ......o......... 0020 - dc 9c e6 d4 fc ed 8a 0d-f9 64 59 1d 2e e3 5b 25 .........dY...[% 0030 - a0 cb 45 c7 bd fd 74 8e-a3 1d 4e 9f 03 2f 30 b9 ..E...t...N../0. 0040 - 1e fa 84 36 bd ba 36 21-5c cc 18 00 18 bb 0a 1a ...6..6!....... 0050 - b2 01 87 d1 bc cd 11 cb-2e 64 62 36 50 51 89 57 .........db6PQ.W 0060 - e6 d3 19 a8 5e 01 2e 3d-6d ec bc 13 ce fb ee 52 ....^..=m......R 0070 - bc b4 5c 16 92 93 8a a5-bd d7 01 9d 5e a9 84 1e ...........^... 0080 - 37 d2 15 93 bf 9d 22 93-06 fb e6 b9 16 18 61 f8 7.....".......a. 0090 - 3b b8 df 77 f9 2e 8c 81-e4 10 e2 3c 07 40 c7 81 ;..w.......<.@.. 00a0 - 13 e2 91 1f 69 a6 7e 64-93 28 30 78 55 34 6b 5e ....i.~d.(0xU4k^ 00b0 - f6 99 78 ba 7c 9f 13 51-d8 2b b3 1f bc e5 7e b1 ..x.|..Q.+....~. Start Time: 1396986311 Timeout : 300 (sec) Verify return code: 20 (unable to get local issuer certificate) --- B HEARTBEATING read R BLOCK
  • 10.     ACTUALIZACIÓN  DE  PAQUETES  AFECTADOS   Para solucionar la vulnerabilidad, es necesario actualizar los paquetes de OpenSSL siguiendo las indicaciones y recomendaciones del fabricante. Como normal general, será necesario actualizar la versión de OpenSSL a una versión que no sea vulnerable (en este momento la 1.0.1f) utilizando el gestor de paquetes correspondiente de nuestro sistema operativo. Es importante reiniciar los servicios correspondientes que utilicen las librerias vulnerables para asegurarnos de que la actualización produce el efecto deseado de inmediato. Por ejemplo, en el caso de Ubuntu, el procedimiento sería el siguiente: $ sudo apt-get update $ sudo apt-get install -y libssl1.0.0 openssl Ahora confirmaremos la versión instalada: $ openssl version -a OpenSSL 1.0.1 14 Mar 2012 built on: Mon Apr 7 20:33:29 UTC 2014 platform: debian-amd64 options: bn(64,64) rc4(16x,int) des(idx,cisc,16,int) blowfish(idx) compiler: cc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS - D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN - DTERMIO -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat - Wformat-security -Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,- Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall - DOPENSSL_NO_TLS1_2_CLIENT - DOPENSSL_MAX_TLS1_2_CIPHER_LENGTH=50 -DMD32_REG_T=int - DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT - DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM - DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM - DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM OPENSSLDIR: "/usr/lib/ssl" Procedemos a reiniciar todos los servicios que lo utilicen: $ lsof -n | grep ssl | grep DEL A continuación se presenta una lista con los enlaces a las recomendaciones de las principales plataformas: Ubuntu http://www.ubuntu.com/usn/usn-2165-1/ Redhat https://rhn.redhat.com/errata/RHSA-2014-0376.html CentOS http://lists.centos.org/pipermail/centos-announce/2014- April/020249.html
  • 11.     Fedora https://lists.fedoraproject.org/pipermail/announce/2014- April/003205.html OpenSUSE http://lists.opensuse.org/opensuse-security-announce/2014- 04/msg00005.html OpenBSD http://ftp.openbsd.org/pub/OpenBSD/patches/5.5/common/00 2_openssl.patch.sig Gentoo http://www.gentoo.org/security/en/glsa/glsa-201404-07.xml Si no nos es posible utilizar las fuentes y procedimientos oficiales de actualización, tenemos como alternativa recompilarlo desde cero, deshabilitando el soporte de Heartbeat con la opción: -DOPENSSL_NO_HEARTBEATS REGLAS  DE  DETECCIÓN  DE  LA  AMENAZA  PARA  IDS/IPS   Para poder además detectar posibles ataques que exploten la vulnerabilidad descrita en este reporte, se recomiendan una serie de reglas para incluir en los diferentes sistemas de IPS/IDS, que nos alertaran cuando un posible atacante realice algún intento malicioso. A continuación se detallan una serie de reglas oficiales dentro del paquete oficial de suscripción para clientes del Sourcefire Vulnerability Research Team: alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER OpenSSL SSLv3 heartbeat read overrun attempt"; flow:to_server,established; content:"|18 03 00|"; depth:3; dsize:>40; detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced- ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted-recon; sid:30510; rev:2;) alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER OpenSSL TLSv1 heartbeat read overrun attempt"; flow:to_server,established; content:"|18 03 01|"; depth:3; dsize:>40; detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced- ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted-recon; sid:30511; rev:2;) alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER OpenSSL TLSv1.1 heartbeat read overrun attempt"; flow:to_server,established; content:"|18 03 02|"; depth:3; dsize:>40; detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced- ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted-recon; sid:30512; rev:2;) alert tcp $EXTERNAL_NET any -> $HOME_NET 443 (msg:"SERVER-OTHER OpenSSL TLSv1.2 heartbeat read overrun attempt"; flow:to_server,established; content:"|18 03 03|"; depth:3; dsize:>40;
  • 12.     detection_filter:track by_src, count 3, seconds 1; metadata:policy balanced- ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted-recon; sid:30513; rev:2;) alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER SSLv3 large heartbeat response - possible ssl heartbleed attempt"; flow:to_client,established; content:"|18 03 00|"; depth:3; byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds 60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted- recon; sid:30514; rev:3;) alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER TLSv1 large heartbeat response - possible ssl heartbleed attempt"; flow:to_client,established; content:"|18 03 01|"; depth:3; byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds 60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted- recon; sid:30515; rev:3;) alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER TLSv1.1 large heartbeat response - possible ssl heartbleed attempt"; flow:to_client,established; content:"|18 03 02|"; depth:3; byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds 60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted- recon; sid:30516; rev:3;) alert tcp $HOME_NET 443 -> $EXTERNAL_NET any (msg:"SERVER-OTHER TLSv1.2 large heartbeat response - possible ssl heartbleed attempt"; flow:to_client,established; content:"|18 03 03|"; depth:3; byte_test:2,>,128,0,relative; detection_filter:track by_dst, count 5, seconds 60; metadata:policy balanced-ips drop, policy security-ips drop, service ssl; reference:cve,2014-0160; classtype:attempted- recon; sid:30517; rev:3;) También se ha publicado un módulo de detección para Bro, disponible en la URL oficial: https://github.com/bro/bro/blob/topic/bernhard/heartbeat/scripts/policy/pro tocols/ssl/heartbleed.bro La correspondiente regla para Suricata: alert tls any any -> any any ( msg:"TLS HEARTBLEED malformed heartbeat record"; flow:established,to_server; dsize:>7; content:"|18 03|"; depth:2; lua:tls-heartbleed.lua; classtype:misc-attack; sid:3000001; rev:1;) Y el script necesario: function init (args) local needs = {} needs["payload"] = tostring(true) return needs end function match(args) local p = args['payload'] if p == nil then --print ("no payload") return 0 end
  • 13.     if #p < 8 then --print ("payload too small") end if (p:byte(1) ~= 24) then --print ("not a heartbeat") return 0 end -- message length len = 256 * p:byte(4) + p:byte(5) --print (len) -- heartbeat length hb_len = 256 * p:byte(7) + p:byte(8) -- 1+2+16 if (1+2+16) >= len then print ("invalid length heartbeat") return 1 end -- 1 + 2 + payload + 16 if (1 + 2 + hb_len + 16) > len then print ("heartbleed attack detected: " .. (1 + 2 + hb_len + 16) .. " > " .. len) return 1 end --print ("no problems") return 0 end return 0 MITIGAR  LOS  EFECTOS  DE  LA  AMENAZA   En última instancia, además de actualizar los paquetes afectados por la vulnerabilidad, será necesario gestionar los datos que hayan podido ser comprometidos por terceras personas, para evitar ataques posteriores. Debido a que la vulnerabilidad permite acceder a bloques de memoria en los servidores afectados, es posible que información como la detallada a continuación, se haya visto comprometida: • Credenciales (login y password) de usuarios del sistema • Claves privadas de los certificados TLS/SSL • Información sensible sobre servicios de terceros • Direcciones de memoria y contenido que podría permitir evadir mecanismos de mitigación de exploits   Solamente una vez actualizado y corregido el problema, se recomendará comenzar con el proceso de mitigación, que pueden afectar tanto a la seguridad de los usuarios, como a la del servidor y los certificados instalados.
  • 14.     CLAVES  PRIVADAS  DE  LOS  CERTIFICADOS  SSL   En la siguiente captura, podremos demostrar que es posible bajo ciertas condiciones, acceder a la clave privada SSL de forma parcial o total de un sistema vulnerable: Será necesario actuar de la siguiente manera en relación las claves privadas SSL del servidor afectado: 1. Revocar los certificados instalados, ya que un atacante podría haber podido acceder a ellas, y por tanto estar comprometidas 2. Generar nuevas claves y nuevos certificados para los servicios que que hayan estado expuestos 3. Mantener una copia de los certificados y claves antiguas, por si fuera necesario en un futuro acceder a información protegida por los mismos
  • 15.     CLAVES  Y  DATOS  DE  USUARIOS En lo referente a las claves y datos de los usuarios, y con el objetivo claro de salvaguardar la información, así como de generar confianza en los clientes, se recomienda regenerar las contraseñas de los usuarios o comunicarles que será necesario un cambio en la contraseña, forzándolo en el siguiente acceso a la plataforma. Esta acción es de vital importancia, ya que el acceso a todas estas credenciales es más factible en su totalidad en los fragmentos de memoria devueltos por el servidor afectado:   OTROS  SERVICIOS   Finalmente, deberemos tener en cuenta que la posible afectación de plataformas intermedias, como los VPN SSLs, han podido exponer a un atacante el tráfico en claro que se encontrara cursando durante la explotación del ataque, revelando credenciales de servicios de terceros, cookies, así como otra información sensible:   REFERENCIAS   Puede  encontrarse  más  información  de  utilidad  sobre  esta  vulnerabilidad  en  los   siguientes  enlaces  proporcionados:   • http://cert.inteco.es/securityAdvice/Actualidad/Avisos_seguridad_tecnicos /grave_vulnerabilidad_funcionalidad_heartbeat_openssl_20140  408   • https://cve.mitre.org/cgi-­‐bin/cvename.cgi?name=CVE-­‐2014-­‐0160   http://heartbleed.com   • http://www.openssl.org/news/secadv_20140407.txt  
  • 16.     • http://vrt-­‐blog.snort.org/2014/04/heartbleed-­‐memory-­‐disclosure-­‐ upgrade.html   • http://doc.emergingthreats.net/bin/search/Main/?search=heartbleed   http://www.blackploit.com/2014/04/vulnerabilidad-­‐critica-­‐en-­‐openssl-­‐ cve.html   • http://www.kb.cert.org/vuls/id/720951   • https://github.com/musalbas/heartbleed-­‐ masstest/blob/master/top1000.txt   • http://www.circl.lu/pub/tr-­‐21/