SSL / TLS son protocolos.
OpenSSL es una implementación de estos protocolos. Tiene dos bibliotecas: libcrypto
, que implementa un conjunto de algoritmos de cifrado, y libssl
, que implementa los protocolos TLS y su SSL anterior.
Si hay un error en la implementación de un protocolo dado, no significa que el problema es el protocolo en sí. HeartBleed es solo un problema heredado de OpenSSL, pero no existe en otras implementaciones TLS / SSL como LibreSSL , GnuTLS , MatrixSSL y muchos otros .
HeartBleed es el resultado de una implementación incorrecta. HeartBleed fue presentado por primera vez por Stephen Henson solo una hora antes de la víspera del año nuevo de 2011. Para ser más precisos, es Robin Seggelmann, quien era entonces un Ph.D. estudiante de la Universidad de Duisburg-Essen que desarrolló la extensión HeartBeat para OpenSSL (HeartBeat ya estaba presente en la especificación SSL2.0) y lo sugirió al proyecto de desarrollo de OpenSSL, Stephen Henson, quien falló (¿alguna vez comprobó?) para encontrar el error y cometió en su repositorio. Otros sugieren que esta vulnerabilidad fue conocida y explotada hace mucho tiempo antes de que se anuncie públicamente.
Stephen Henson siempre ha sido el único desarrollador permanente de OpenSSL. Solo ha habido un revisor que lo ayudó pero no permanentemente. Los otros 11 miembros del proyecto OpenSSL no tienen nada que ver con el desarrollo correctamente dicho. Como puede adivinar, sea lo que sea un desarrollador inteligente, es propenso a cometer errores siempre que se desarrolle solo.