SSL和中间人攻击

3
我认为自签名证书存在中间人攻击的风险,因为中间人可以向客户端呈现不同的自签名证书。我的问题如下。
如果我在服务器上使用自签名证书(使用SelfSSL),并在运行ssl页面时(它是管理页面而不是公共页面),浏览器会给我一个警告,并且我将自签名证书安装在受信任的存储中(假设这个请求没有被中间人拦截),那么是否会有中间人攻击的风险?对于我的测试,我改变了服务器上的证书,保持所有参数相同,它创建了一个不同的指纹,浏览器再次在运行ssl页面时给我警告。这意味着如果有人更改证书,我会收到警告,表明证书已从我添加到受信任存储中的证书发生了变化。我所做的有什么缺陷吗?我不想为自己的一个页面购买任何ssl证书。
2个回答

5

是的,那样做可以正常工作。

只要浏览器能够验证您拥有正确的自签名证书,您就可以放心使用。

但是,在第一次连接时如果遭受了中间人攻击并信任了伪造的证书,那就麻烦了。(因为您最终会相信攻击者的证书而不是自己的证书)


确保初始证书正确的一种方法是检查其内容(特别是公钥),并将其与服务器上设置的内容进行比较,如浏览器所示。 - Bruno
谢谢。我确实检查了服务器使用的证书的Thumbprint与我信任的证书是相同的。 - Kumar

3
如果这个Web应用程序有多个用户(不仅是您自己),则从您的帖子中无法确定。那么,您难道不是在训练用户忽略浏览器安全警告吗?那么,如果有人在进行中间人攻击时尝试注入新证书,他们会忽略警告,你如何保证他们不会呢? 你希望他们忽略第一个警告,但是如果他们以后再收到警告,他们应该知道这是一个问题吗?
用户并不那么复杂。使用自签名SSL基本上意味着你不关心用户的安全。

正如我所说,这不是公共页面,而是仅供我作为管理员使用的页面。 - Kumar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接