我最近学到了有关ocsp的知识。
我通过以下命令检查站点的ocsp装订:$openssl s_client -connect www.stackoverflow.com:443 -status -servername www.stackoverflow.com
我发现自己的站点和stackoverflow以及其他一些小型站点都有ocsp设置。它们在命令响应中具有OCSP Response Data
字段。
但是,当我检查一些大型网站(例如google.com,github.com,facebook.com)时,它们没有这样的字段。我得到OCSP response: no response sent
。
那么为什么他们不使用它呢?
最佳答案
为了保护用户,作为Web服务器,必须使用OCSP must staple
。但是,即使在这种情况下,您也需要考虑到给出的OCSP响应通常在多天内有效,因此攻击者可以在证书被吊销之前获得服务器证书的OCSP有效状态,并将其作为OCSP装订插入在对Web客户端进行MitM攻击期间的状态(当然,攻击者必须与破解证书的身份相同,并且证书已被撤销)。因此,将保护不支持OCSP装订且需要OCSP的浏览器。不会支持OCSP装订的浏览器。这是OCSP装订不是最终选择的原因之一。在某些情况下,它是避免安全漏洞的不太安全的方法,而在另一些情况下,它是无用的。当然,即使这不是在互联网上获得更多信任的不错尝试。
因此,像Google这样的大公司还提供了其他保护浏览器用户和用户的方法:与其他浏览器相比,他们希望为用户提供更安全的体验,因为他们的目标是吸引更多用户。为此,谷歌浏览器实现了专有的CRLSets机制。
相同的公司和其他公司也希望推广其他方式来使人们在Internet上获得(重新)信任。例如,一些公司跟随Google推广Certificate Transparency机制。因此,从政治上来讲,在他们的站点上实施OCSP装订并为Internet建立另一个信任机制是一个坏主意。
我所读过的有关证书吊销和保护用户的最佳文献是:https://arstechnica.com/information-technology/2017/07/https-certificate-revocation-is-broken-and-its-time-for-some-new-tools/
关于facebook - 为什么大型网站不使用ocsp装订?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46128085/