– root@injetionsec:~#

Falha no OpenSSL deixa milhões de sites vulneráveis

09.04.2014 (3:00 pm) – Filed under: Vulnerabilidade ::

O OpenSSL é uma implementação em código aberto dos protocolos SSL e o TLS. Uma das funcionalidades consiste na criação de certificados X.509 que permitem confidencialidade em ligações com SSL (HTTPS) entre outros serviços. Os certificados digitais X.509 representam para o utilizador, o mecanismo de segurança mais visível no âmbito da certificação digital, ontem(8/04/2014), o OpenSSL até a versão 1.0.1f está vulnerável, e os atacantes podem conseguir ler até 64 KB de informação numa comunicação cifrada.

O SSL é um protocolo criptográfico baseado em cifras assimétricas (chave privada e chave publica) que tem como principal objectivo providenciar segurança e integridade dos dados transmitidos em redes inseguras como é o caso da Internet. Quando um usuário acessa um site que recorre ao SSL, o servidor envia ao cliente a chave publica para que esta possa cifrar a informação que vai ser passada ao servidor,quando o servidor recebe essa informação, usa a sua chave privada para decifrar a informação transmitida pelo usuário que fez a requisição.

Varias aplicações podem ser vista nesse protocolo, como no  comércio eletrónico, servidores web, servidores FTP, VPNs, etc.

Chave pública é Chave privada

A chave pública, que está presente no certificado digital, é usada para cifrar os dados para  serem enviados para o servidor. Já a chave privada é aquela que só o dono do certificado conhece, serve para decifrar a informação que foi cifrada com a sua chave pública.

qe90fe

 

Certificado digital

Um certificado é um documento digital que contém informação acerca de quem o possui, nome, morada, localidade, e-mail, duração do certificado, domínio (Common Name) e nome da entidade que assina o certificado. Contém ainda uma chave pública e um hash que permite verificar a integridade do próprio certificado, e ele e emitido por entidades certificadoras,no topo dessas entidades temos  Entidade Certificadora (CA Root Certificate).

Esta entidade certificadora confirma que o possuidor do certificado é quem afirma ser, e assina o certificado, impossibilitando desta forma a sua modificação.

Bug Heartbleed é uma vulnerabilidade grave que afecta a popular biblioteca criptográfica OpenSSL. Explorando este bug, é possível ler até 64 KB de informação de informação numa sessão SSL/TLS. No entanto, os 64 KB não é o limite de informação que pode ser lida já que o atacante pode restabelecer a ligação, várias vezes,  durante uma sessão TLS ativa, obtendo assim vários “pedaços” de 64 KB de informação, comprometendo a chave privada, usada para decifrar toda a informação. 

Mais informações : web.nvd.nist.gov & cve.mitre.org
Exploit: 1337day
Para testar  se algum site está vulnerável: filippo.io
Para verificar se seu servidor openssl esta vulnerável :
openssl s_client -connect google.com:443 -tlsextdebug 2>&1| grep ‘server extension “heartbeat” (id=15)’ || echo safe
Essa falha é grave, e requer um update das versões vulneráveis.
Entendendo mais de segurança: heartbleed
Sites que foram encontrados vulneráveis : aqui
Quais versões do OpenSSL esta vulnerável:
OpenSSL 1.0.1 through 1.0.1f (inclusive) are vulnerable
OpenSSL 1.0.1g is NOT vulnerable
OpenSSL 1.0.0 branch is NOT vulnerable
OpenSSL 0.9.8 branch is NOT vulnerable
Bug was introduced to OpenSSL in December 2011 and has been out in the wild since OpenSSL release 1.0.1 on 14th of March 2012. OpenSSL 1.0.1g released on 7th of April 2014 fixes the bug.