Heartbleed
folcloresegurançacriptografia
A falha de 2014 no OpenSSL que permitia a atacantes ler trechos da memória de um servidor, incluindo chaves e senhas.
A ausência de uma verificação de limites na extensão de heartbeat do TLS permitia que um cliente pedisse mais dados do que enviara e recebesse o que estivesse adjacente na memória. Foi um dos primeiros bugs com logotipo e nome, e forçou uma corrida global para corrigir servidores e trocar segredos.
O Heartbleed foi uma verificação de limites ausente na implementação da extensão heartbeat do TLS pelo OpenSSL. Um cliente podia alegar que sua mensagem tinha sessenta e quatro kilobytes enquanto enviava um byte, e o servidor devolvia aquele byte mais o que por acaso estivesse adjacente na memória: chaves de sessão, credenciais, chaves privadas, requisições de outros usuários.
Duas propriedades o tornaram excepcionalmente grave. Ele não deixava rastro, porque um heartbeat é mensagem legítima e nada na troca parecia anômalo nos logs, então ninguém conseguia estabelecer se havia sido explorado. E estivera presente por cerca de dois anos num software que sustentava boa parte do HTTPS da internet, o que significou tratar toda chave afetada como comprometida e reemitir todo certificado.
Ele também mudou como a indústria financia suas fundações. O OpenSSL era então mantido por pouquíssimas pessoas com quase nenhum dinheiro, apesar de ser estrutural para o comércio global, e a descoberta de que isso era normal, e não excepcional, levou à Core Infrastructure Initiative e às suas sucessoras. O Heartbleed é a razão de "com olhos suficientes, todos os defeitos são superficiais" hoje ser citada com ressalva.
Também conhecido como: Heartbleed, CVE-2014-0160, OpenSSL heartbeat bug
Fontes
- CVE-2014-0160 (2014)