混合内容页面:全域https下里面的http请求浏览器的安全处理
Author:zhoulujun Date:
当用户访问使用HTTPS的页面时,他们与web服务器之间的连接是使用SSL加密的,从而保护连接不受嗅探器和中间人攻击。
混合内容页面
如果HTTPS页面包括由普通明文HTTP连接加密的内容,那么连接只是被部分加密:非加密的内容可以被嗅探者入侵,并且可以被中间人攻击者修改,因此连接不再受到保护。当一个网页出现这种情况时,它被称为混合内容页面。简而言之:https页面里面包含http请求内容
混合内容的类型
主要有两种类型的混合内容:混合被动/显示内容和混合活动内容。区别在于最坏情况的危险级别,假如内容重写是中间人攻击的一部分。
混合被动/显示内容
被动混合内容指的是不与页面其余部分进行交互的内容,从而使中间人攻击在拦截或更改该内容时能够执行的操作受限。被动混合内容包括图像、视频和音频内容,以及无法与页面其余部分进行交互的其他资源。
在被动内容的情况下,威胁很低(网页可能出现损坏或误导性的内容)。
HTTPS页面内,http的请求不能改变网页的其他部分。
被动内容列表
<audio> (
src
attribute)<img> (
src
attribute)<video> (
src
attribute)<object> subresources (when an <object> performs HTTP requests)
主动混合内容
主动混合内容作为整体与页面进行交互,并且几乎允许攻击者对页面进行任何操作。 主动混合内容包括浏览器可下载和执行的脚本、样式表、iframe、flash 资源及其他代码。
在活动内容的情况下,威胁会导致网络钓鱼、敏感数据披露,重定向到恶意网站,等等。
https页面的里面的http请求,会改访问或修改 页面的内容,从而窃取或修改数据,甚至黑客攻击。
活动内容列表
<script> (
src
attribute)<link> (
href
attribute) (this includes CSS stylesheets)XMLHttpRequest object requests
<iframe> (
src
attributes)All cases in CSS where a url value is used (@font-face, cursor, background-image, etc.)
<object> (
data
attribute)Navigator.sendBeacon
(url
attribute)
具有混合内容的浏览器行为
鉴于上述威胁,浏览器最好是阻止所有混合内容。 但是,这将破坏大量网站,而数百万用户每天都要访问这些网站。 当前的折衷做法是阻止最危险的混合内容类型,同时仍允许请求不太危险的混合内容类型。
现代浏览器遵循混合内容规范,其定义了可选择性地阻止的内容和可阻止的内容类别。
根据此规范,“当破坏网络重要部分的风险超过允许此资源作为混合内容使用的风险时”,该资源有资格成为可选择性阻止的内容;这是上述被动混合内容类别的子集。在撰写本文时,可选择性阻止的内容中仅包括图像、视频和音频资源以及预获取的链接这些资源类型。随着时间的推移,此类别可能会缩小。
可选择性阻止的内容以外的所有内容被视为可阻止的内容,将被浏览器阻止。
前端能做做操作
混合内容 强制https请求 Content-Security-Policy: block-all-mixed-content;
看参看《前端安全配置xss预防针Content-Security-Policy(csp)配置详解..》、《HTTP严格安全传输之HSTS:HTTP Strict Transport Security》
转载本站文章《混合内容页面:全域https下里面的http请求浏览器的安全处理》,
请注明出处:https://www.zhoulujun.cn/html/webfront/SGML/web/2020_0702_8502.html