鉴于最近的心脏缺陷,我正在尝试对我连接的各种系统(电子邮件,登录页面等)进行一些分析。我正在尝试使用OpenSSL命令行工具来验证我连接的系统正在使用哪些协议。
部分回复是:
...
SSL-Session:
Protocol : TLSv1
...
我需要验证此服务是否未使用Openssl(特别是有缺陷的1.0.1版本)? (我认为它已经足够了,因为我连接了一台服务器,我知道它正在使用Openssl 0.9.8并且它响应了上面显示的相同字符串。)
答案 0 :(得分:2)
TLSv1是指协议TLS版本1,而openssl,NSS,GnuTLS,PolarSSL ......是协议的实现。您通常无法从正常的TLS对话框中检测到哪个SSL实现或另一方面正在运行哪个版本的实现,因此您最好使用任何可用的工具来检查服务器是否容易受到攻击。
您可以尝试使用-tlsextdebug
的{{1}}选项查找对方支持的TLS扩展名。易受攻击的版本通常表明它们支持心跳扩展,但我不会指望它。当然,修复版本也支持此扩展。如果广告支持扩展,您可以在openssl s_client
的输出中找到它:
TLS服务器扩展"心跳" (id = 15),len = 1