Answers:
许多人认为此系统已损坏。
当SSL证书无效时,您的浏览器会向您发出这样的警报警告的逻辑如下:
SSL基础结构的原始设计目的之一是提供Web服务器的身份验证。基本上,如果您访问www.bank.com,则SSL允许响应的Web服务器证明它确实属于您的银行。这可以阻止冒名顶替者操纵DNS或使用其他方法使恶意服务器响应。
SSL中的“信任”是通过让受信任的第三方(例如VeriSign和Thawte Consulting等公司)对证书进行签名来提供的,表明他们已经验证了该证书的拥有者(理论上通过访问IT管理员)人或其他建立直接信任的方法,尽管有证据表明他们实际上对此并不满意-获得签名的SSL证书所需的全部时间通常是800码和一些演技。
因此,如果您连接到提供SSL证书但未由受信任的第三方签名的Web服务器,则从理论上讲,这可能意味着您正在与冒名顶替者进行通信,该冒名顶替者冒充是属于其他组织的服务器。
实际上,自签名证书通常仅意味着运行服务器的组织选择不支付已签名证书的费用(根据您想要的功能,它们可能会非常昂贵),或者缺乏配置一个证书的技术专长(一些小型企业解决方案提供了一种用于自签名证书的一键式机制,但是要获得受信任的证书,则需要更多的技术步骤。
我个人认为该系统已损坏,与不提供加密的服务器通信比与提供带有自签名证书的SSL的服务器通信要危险得多。造成这种情况的三个原因是浏览器不这样做:
从页面到页面发送凭据基本上是在进行HTTP POST。与通过POST发送搜索词相比,发送凭据没有什么特别的。如果任何发布到不安全页面的帖子会触发警告,则用户将被毫无意义的警告轰炸。
使用安全通道表示程序员打算保护传输。在这种情况下,使用自签名证书警告是正确的做法。
我无法发表评论,因此我将发布此信息,以补充user40350的正确信息。
但是,同一浏览器没有问题,可以跨不安全的页面发送凭据。
实际上,这甚至不是事实。大多数浏览器会显示警告,就像您初次尝试通过不安全的连接提交数据时一样,但是您可以将其关闭,以使其不再显示,我敢打赌,这正是您所做的...
米罗A写道:
从页面到页面发送凭据基本上是在进行HTTP POST。与通过POST发送例如搜索字词相比,发送凭据没有什么特别的
这也是不正确的,例如,密码字段是特殊的html标签。最重要的是,诸如“用户名”和“密码”之类的标签也表现出了很多敏感性。对于浏览器来说,考虑此类信息是完全可行的。
必须在可信证书(由您信任的权威机构签名)和不可信证书之间进行区分。否则,有人可能会使用具有相对有罪不罚现象的自签名证书来冒充您的银行(例如)。
在这种情况下,面部警告优于微妙警告,因为潜在风险相对较高。人们可能单击https链接,甚至没有想到可能有人坐在中间来监视连接。如果证明证书不受信任的迹象很微妙(例如用红色代替绿色图标,等等),那么人们很容易被愚弄,从而消除了SSL的好处。
列出了许多充分的理由。还有一个:
考虑一个安全网页嵌入另一元素的元素的情况。攻击者可以检测到哪些请求是针对外部网页的(例如,通过查看时间,它必须首先出现),哪些请求是针对内部网页的。他可以将自己作为MITM注入到内部元素中,使用自签名证书并控制页面的各个部分。除非使用SSL但不使用受信任的证书对内部元素发出警告,否则外部页面的安全性将受到损害。
这是一个现实的例子。假设我是供应商,并且有一个“使用PayPal付款”链接。您单击它,我知道。我将您重定向到PayPal,并让您获得合法,安全的PayPal页面。如果我正在监视您的网络,我知道这将是您从PayPal发出的第一个请求,此后不久您将提交密码。因此,我在MITM中submit
包含您的电子邮件地址和密码,用我的自签名证书替换了PayPal的证书。
您会看到不警告内页证书是自签名的,从而如何损害外页的安全性?因此,它必须警告来自链接的自签名证书。
而且,当然,如果您https
手动输入,它必须警告您。因为您期望它是安全的。