Heartbleed 检查器如何确定网站是否易受攻击?

信息安全 tls openssl 心血来潮
2021-08-24 12:53:11

据我所知,没有办法从网站获取 OpenSSL 的版本。那么 Heartbleed 检查器会获得什么样的信息,以便确定网站是否可以安全地免受 Heartbleed 的影响?

1个回答

Heartbleed 错误涉及要求服务器返回一块大于返回的实际信息的内存块。易受攻击的服务器将返回内存中超出其返回的数据结构的任何内容。因此,如果您要求服务器返回额外的内存并且它确实返回了,那么服务器很容易受到攻击。

您可以在此处检查补丁代码差异代码中有很多重复,但基本的更改是添加以下内容:

if (1 + 2 + payload + 16 > s->s3->rrec.length)
    return 0; /* silently discard */

因此,如果您请求的缓冲区大于实际大小,您可以看到它现在是如何失败的。