研发:http协议,什么是混合内容

什么是混合内容?

混合内容在以下情况下出现:初始 HTML 内容通过安全的 HTTPS 连接加载,但其他资源(例如,图像、视频、样式表、脚本)则通过不安全的 HTTP 连接加载。之所以称为混合内容,是因为同时加载了 HTTP 和 HTTPS 内容以显示同一个页面,且通过 HTTPS 加载的初始请求是安全的。现代浏览器会针对此类型的内容显示警告,以向用户表明此页面包含不安全的资源。

TL;DR

  • HTTPS 对于保护您的网站和用户免受攻击非常重要。
  • 混合内容会降低您的 HTTPS 网站的安全性和用户体验。

资源请求和网络浏览器

当浏览器访问网站的页面时,它将请求 HTML 资源。然后,网络服务器返回 HTML 内容,浏览器进行解析并显示给用户。通常,一个 HTML 文件不足以显示一个完整页面,因此,HTML 文件包含浏览器需要请求的其他资源的引用。这些子资源可以是图像、视频、额外 HTML、CSS 或 JavaScript 之类的资源;每个资源均使用单独的请求获取。

HTTPS 的优势

当浏览器通过 HTTPS(HTTP Secure 的缩写形式)请求资源时,它使用一个已加密连接与网络服务器进行通信。

使用 HTTPS 有三个主要优势:

  • 身份验证
  • 数据完整性
  • 保密性

身份验证

我正在访问的网站是正确的吗?

HTTPS 让浏览器检查并确保其已打开正确的网站,并且没有被重定向到恶意的网站。 当导航到您的银行网站时,您的浏览器对该网站进行身份验证,从而防止攻击者冒充您的银行窃取您的登录凭据。

数据完整性

是否有人篡改我正在发送或接收的内容?

HTTPS 让浏览器检测是否有攻击者更改了浏览器接收的任何数据。 使用您的银行网站转账时,这样做可防止当您的请求在传输中时攻击者更改目标帐号。

保密性

是否有人能看到我正在发送或接收的内容?

HTTPS 可防止攻击者窃取浏览器的请求,跟踪访问的网站或窃取已发送或接收的信息。

HTTPS、传输层安全协议 (TLS) 和 SSL

HTTPS 是 HTTP Secure 的缩写,即超文本传输安全协议。此处的 secure 部分来自于添加到浏览器发送和接收的请求的加密。目前大多数浏览器都使用传输层安全协议 (TLS) 提供加密;TLS有时称为 SSL。

本文不会详细介绍 HTTPS、传输层安全协议 (TLS) 和 SSL,但是,如果您想了解更多信息,可以先从以下资源入手:

  • Wikipedia HTTPS
  • Wikipedia TLS
  • 可汗学院 (Khan Academy) 的加密课程
  • 高性能浏览器网络(作者:Ilya Grigorik)中的传输层安全协议 (TLS) 章节

混合内容会降低 HTTPS 的安全性

使用不安全的 HTTP 协议请求子资源会降低整个页面的安全性,因为这些请求容易受到中间人攻击,攻击者窃听网络连接,查看或修改双方的通信。通过使用这些资源,攻击者通常可以完全控制页面,而不只是泄露的资源。

尽管许多浏览器向用户报告混合内容警告,但出现警告时为时已晚:不安全的请求已被执行,且页面的安全性被破坏。遗憾的是,这种情况在网络中很普遍,正因如此,浏览器不能简单地阻止所有混合请求,否则将会限制许多网站的功能。

原文发布于微信公众号 - 云计算与大数据(heidcloud)

原文发表时间:2018-10-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏优启梦

emlog后台登录失败邮件通知

前面说到emlog后台登录参数加密,下面我们说说如何给emlog添加后台登录失败邮件通知的功能,本次我们需要用到mail函数,当然也就是需要25端口发信,如果是...

64812
来自专栏云计算教程系列

如何在Ubuntu 18.04上安装Webmin

Webmin是适用于任何Linux机器的基于Web的控制面板,可让您通过基于Web的现代界面管理服务器。使用Webmin,您可以动态更改常用软件包的设置,包括W...

2151
来自专栏酷玩时刻

自动获取/更新HTTPS证书并实现Nginx代理WSS协议

如果说我比别人看得更远些,那是因为我站在了巨人的肩上-----牛顿 有了轮子就会事半功倍,此篇文章就是站在巨人的肩膀上做一个简单的总结。

1032
来自专栏技术博客

VS2010链接TFS遇见错误:TF204017,没有访问工作区域,需要一个或者多个必须权限

  最近刚刚搭建好服务器,然后准备将VSS源代码迁移到TFS源代码管理服务器上面。在我本机先用的服务器帐号来上传初始化源代码数据库,然后我又用自己的帐号进行迁出...

1182
来自专栏漏斗社区

你们尽管绕dogByPass,绕不过算我输!

0x00 背景 这周学弟学妹经常提问到如何绕过安全防护软件的检测,那么本篇就以dog为例子带大家走一遍dogByPass的一条龙服务流程,本篇仅提供思路,后续可...

4088
来自专栏Youngxj

emlog管理员密码重置工具

2852
来自专栏云计算教程系列

如何在Ubuntu 18.04上为用户目录设置vsftpd

FTP是文件传输协议的缩写,是一种曾经广泛用于在客户端和服务器之间移动文件的网络协议。它已被更快,更安全,更方便的文件传输方式所取代。许多普通网民希望通过htt...

1190
来自专栏快乐八哥

Angular企业级开发(9)-前后端分离之后添加验证码

1.背景介绍 团队开发的项目,前端基于Bootstrap+AngularJS,后端Spring MVC以RESTful接口给前端调用。开发和部署都是前后端分离。...

40210
来自专栏谷歌二次验证码

二次验证码是什么,如何使用?

“二次验证码”是国外谷歌Google二次验证的“微信小程序”的实现,可以让您在微信上很方便的使用二次验证码,保护你的账户安全。

8800
来自专栏黑泽君的专栏

Oracle 10G安装指导

1、 解压文件10201_database_win32.zip,并双击解压目录下的setup.exe,出现安装界面,如下: 

1582

扫码关注云+社区

领取腾讯云代金券