Una de les vulnerabilitats més conegudes de mitjans de la dècada de 2010 es va anomenar "Heartbleed". Heartbleed va ser especialment greu perquè va ser el programari que va afectar "OpenSSL", la principal biblioteca criptogràfica per a connexions HTTPS, que s'utilitzen molt àmpliament. Per empitjorar les coses, la vulnerabilitat havia estat present a OpenSSL durant més de dos anys abans de ser descoberta, publicitada i aplicada, la qual cosa significava que molta gent feia servir una versió vulnerable.
Heartbleed era una vulnerabilitat de filtració de dades a l'extensió de batecs del cor que, quan s'aprofitava, filtrava dades de la memòria RAM del servidor al client. L'extensió de ritme cardíac s'utilitza per mantenir una connexió entre el servidor web i el client sense fer una sol·licitud de pàgina normal.
En el cas d'OpenSSL, el client envia un missatge al servidor i informa al servidor de quant de temps és el missatge, fins a 64KB. Aleshores se suposa que el servidor tornarà a fer ressò del mateix missatge. De manera crucial, però, el servidor en realitat no va comprovar que el missatge fos tan llarg com el client afirmava que ho era. Això significava que un client podia enviar un missatge de 10 KB, afirmar que era de 64 KB i obtenir una resposta de 64 KB, amb els 54 KB addicionals formats pels següents 54 KB de RAM, independentment de les dades emmagatzemades allà. Aquest procés està ben visualitzat pel còmic XKCD #1354 .
Imatge cortesia de xkcd.com .
En fer moltes sol·licituds de batecs del cor petites i afirmant que eren grans, un atacant podria crear una imatge de la majoria de la memòria RAM del servidor unint les respostes. Les dades que s'emmagatzemen a la memòria RAM que es podrien filtrar inclouen claus de xifratge, certificats HTTPS, així com dades POST no xifrades, com ara noms d'usuari i contrasenyes.
Nota: és menys conegut, però el protocol de batecs cardíacs i l'explotació també van funcionar en l'altra direcció. Es podria haver configurat un servidor maliciós per llegir fins a 64 KB de memòria d'usuari per sol·licitud de batec.
El problema va ser descobert per diversos investigadors de seguretat de manera independent el primer d'abril de 2014 i es va revelar de manera privada a OpenSSL perquè es pogués crear un pedaç. L'error es va fer públic quan es va publicar el pedaç el 7 d'abril de 2014. La millor solució per resoldre el problema va ser aplicar el pedaç, però també va ser possible solucionar el problema desactivant l'extensió de batec del cor si l'aplicació immediata no era un problema. opció.
Malauradament, tot i que l'explotació era pública i generalment coneguda, molts llocs web encara no es van actualitzar immediatament, i la vulnerabilitat encara es trobava ocasionalment fins i tot anys després. Això va provocar que s'utilitzessin una sèrie de casos de l'explotació per accedir als comptes o filtrar dades.