Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 当网页已经通过HTTPS提供服务时,浏览器为什么禁止非SSL连接?_Security_Ssl_Browser - Fatal编程技术网

Security 当网页已经通过HTTPS提供服务时,浏览器为什么禁止非SSL连接?

Security 当网页已经通过HTTPS提供服务时,浏览器为什么禁止非SSL连接?,security,ssl,browser,Security,Ssl,Browser,一旦一个网页通过HTTPS提供,我们就可以相当肯定他们就是我们想要的人 此时,剩下的唯一安全风险是网站本身是恶意的或存在安全漏洞 例如,您可以输入发送到他们服务器的信用卡详细信息,他们的服务器可以向公众发布这些详细信息 我现在正试图找出浏览器不允许非SSL连接的原因,而网页已经通过HTTPS提供了服务 例如,浏览器将停止允许非SSL HTTP和WS内容,并且不公开UDP或TCP套接字API 对我来说,他们在服务器上不使用SSL的风险是完全相同的。如果说有什么区别的话,HTTPS现在可能给人一种

一旦一个网页通过HTTPS提供,我们就可以相当肯定他们就是我们想要的人

此时,剩下的唯一安全风险是网站本身是恶意的或存在安全漏洞

例如,您可以输入发送到他们服务器的信用卡详细信息,他们的服务器可以向公众发布这些详细信息


我现在正试图找出浏览器不允许非SSL连接的原因,而网页已经通过HTTPS提供了服务

例如,浏览器将停止允许非SSL HTTP和WS内容,并且不公开UDP或TCP套接字API

对我来说,他们在服务器上不使用SSL的风险是完全相同的。如果说有什么区别的话,HTTPS现在可能给人一种虚假的安全感

我只能找出两个原因:

  • 防止网页意外使用非SSL连接。所以我可以理解表单或图像应该只允许HTTPS。但我认为浏览器应该允许,例如UDP套接字,但必须这样创建(确认程序员意识到安全风险):
  • 客户端开发人员不必担心安全风险,而应该担心UI等。由于被迫通过SSL与服务器通信,后端开发人员只需担心安全问题。然而,无论如何,情况已经不是这样了。如果您是客户端开发人员,您可以轻松编写恶意客户端代码,读取密码输入并将其发送到您自己的服务器,只要您自己的服务器也通过SSL(尽管SSL可能至少允许您确定谁负责)

  • 还有其他原因吗?我的理由/解决方案/信息正确吗?

    谷歌的Web基础知识中有一个基本帖子:

    它非常基本,但列出了三个主要威胁:数据身份验证、数据完整性和数据机密性

    当您通过UDP连接时,您不知道

  • 谁真正为你的关系服务。它可能被敌人截获
  • 接收的数据是否实际是发送的数据。它可能被中间的一个人篡改了
  • 还有谁读过你的留言。老大哥在看着你

  • 混合内容破坏了安全网页的概念

    谢谢你的回答。我可以理解UDP的这些问题。然而,由于该网站已经通过HTTPS提供服务,我们知道该网站的JavaScript正在您的浏览器上运行。该网站显然不会通过UDP发送敏感数据,除非他们不知道安全问题。但是,如果他们没有意识到安全问题,那么他们可能在服务器上进行不安全的操作,因此在客户端支持UDP似乎没有任何额外的风险。不管怎样,你都不应该信任这个网站。我说的有意义吗?如果必要的话,一个合适的网站会在UDP之上实施定制的安全措施。嗯,开发人员试图构建安全的现代浏览器。他们不相信“让我做一些不安全的事情,我知道我在做什么”的说法。我不能责怪他们。在您的情况下,正确的解决方案可能是围绕UDP源创建一个web套接字包装器。然后JS可以在没有不安全的UDP套接字的情况下高效地读/写。好吧,我正在根据我的需要创建一个浏览器扩展。关于“UDP.amawareth”,顺便说一句,您可能想看看它,它表明许多“SSL”库的默认值都是错误的,或者公开一个API,该API可能会被误用,甚至是非自愿的,因此坏事情会发生。PS:SSL从20年前就已经死了,该协议现在被称为TLS。
    udp = new SomeBrowserAPI.CreateUDPSocket()
    udp.amAwareThat("Nothing is encrypted over UDP and I should not send any sensitive data here")
    udp.amAwareThat("I cannot confirm the identity of who I am sending data to or receiving data from")