根据 W3Techs 的调查数据显示,目前大约有 11% 的网站使用了新型的互联网通信协议–HTTP/2,而在一年之前,其占比只有 2.3%。
没错,这个新的协议的确可以提供更好的性能,而且也可以与之前的 HTTP/1.1 兼容,但是我们真的有必要急于升级到 HTTP/2 吗?虽然协议本身暂时还没有漏洞,但是很多网站在使用这个协议时所采用的实现方法是存在安全漏洞的,这将导致网站的数据流量很可能会被攻击者嗅探到。所以各位网站管理员们在没有十足把我的情况下,建议以观望为主。
安全公司 Corvil 产品管理部门的主管 Graham Ahearne 认为:
“很多网站之所以会升级协议,主要是企业业务规划所决定的。他们希望自己的电子商务门户网站能够给客户提供性能更好的服务和体验。但是,由于现在网站所需处理的数据量非常的大,而且各种新型的安全漏洞也在不断涌现,企业必须时刻关注网站信息安全方面的问题。新的东西固然是好的,但是新的东西同样也意味着它们还没有经历过时间的考验,而这就会导致很多意想不到的安全风险出现。”
作为请求网页数据和网站资源时的底层信息传输标准,HTTP/1.1 协议诞生至今已经有 16 年多了。协议只允许一次发送一个请求,所以某些浏览器会使用多条链接来并行发送网站请求,而这样就有可能导致服务器发生拥堵。与此同时,Web 网站也会采用各种技术来提高数据内容的传输速度。
HTTP/2 旨在引入多路复用技术来解决请求数量受限的问题,而这对于那些页面拥有大量小工具的网站来说绝对是一个福音。
Limelight Networks 公司的高级产品经理 Brett Mertens 认为:
“HTTP/1.1 是一个非常棒的协议,但是它并不是为性能而生的。但是现在,人们更加关注的是网站的性能和用户的体验度。在 HTTP/1.1 时代,一个浏览器可能会打开四到六个链接来获取 Web 服务器中的数据内容。但是在 HTTP/2 时代,一条链接再加上多路复用技术,我们就可以获取到所需的全部数据,所以效率得到了大幅提升。但是这对于用户来说,其实并没有多大的改变,只是网站的加载速度稍微快了一点而已。”
仍需进行加密,但并非强制要求
协议本身并不要求进行强制加密,但是目前所有的浏览器都需要 TLS 加密。Mertens 表示:“很多网站在实现协议本身的基本要求之后,还会使用很多其他的安全技术。这对于整体安全性而言,这是一种非常好的现象。”
但是对于某些公司而言,加密很可能会成为一把双刃剑,安全公司 Fireglass 的首席执行官 GuyGuzner 认为:
“在客户端和服务器之间,还有很多类似入侵防御系统和防火墙这样的安全保护设备,它们可以分析网站的通信数据,并检测恶意流量。所以我担心的是,这些设备是否能够适应 HTTP/2。某些厂商现在已经在提供 HTTPS 和 SSL 加密解决方案了,但是如果要改为使用 HTTP/2 的话,那么目前的很多方案很可能都要从底层开始修改了。HTTP/2 允许会话复用,以及将文件以内容和资源的形式进行发送。这样一来,现在很多的安全产品和反病毒引擎将更加难以进行安全检测,它们将无法追踪会话线程,而且也无法有效地检测其中的恶意内容。”
解决这个问题其实并不容易,厂商如果要使用 HTTP/2,那么就必须要更新他们的产品,但是产品碎片化等问题使得整个升级过程会非常困难。而且有的用户并不想升级,因此某些产品的升级周期很可能会持续数年之久。
因此,企业在决定采用 HTTP/2 之前,最好先检测一下自家产品是否真的能够有效地检测 HTTP/2 流量,如果不行的话,我们建议这些企业先“按兵不动”。
新的漏洞也随之出现
安全公司 Imperva 在今年夏天的 BlackHat 黑客大会上报告了多个与 HTTP/2 有关的安全漏洞,相应的厂商已经收到了漏洞信息,并且也在已经修复了这些漏洞。
该公司的首席安全研究专家 ItsikMantin 说到:
“HTTP/2 协议本身并不存在安全问题,主要是协议的实现方式有问题。Imperva 的安全专家对目前主流的 Web 服务器进行了分析,包括 Apache、IIS、Jetty、Nghttpd 和 Nginx 在内,并且发现每一款服务器都存在一定的问题。在某些情况下,攻击者甚至只需要发送一个请求,就足以让服务器崩溃。这也就意味着,攻击者可能只需要一台笔记本电脑就可以发动类似大规模 DDoS 这样的攻击了。
虽然漏洞都已经被修复了,但是这也并不意味着所有的 Web 服务器都安装了更新补丁。因为安装补丁是需要一定成本的,管理员必须知道自己的设备中存在安全问题,他们必须要被通知到位。当他们拿到更新补丁之后,还要评估这些补丁会给自己的服务器带来怎样的影响,所以并非所有人都会急于安装更新补丁。”
HTTP/2 的现状如何?
虽然 11% 的占比看起来是一个非常低的采用率,但考虑到 HTTP/2 是一个在 2015 年刚刚诞生的新协议,而且目前所有主流的 PC 端和移动端浏览器都支持 HTTP/2,所以现在的情况也算不错了。
Akamai 技术公司的首席 Web 架构师 Stephen Ludin 认为:“目前包括 Google 和 Twitter 在内的很多大型网站都开始使用 HTTP/2 了,而升级协议的主要驱动力在于网站希望给用户提供更好地性能体验。使用 HTTP/2 之后,网站性能平均可以提升 10%,而有的网站其效率甚至可以提升 30-50 个百分点。如果网站开发人员希望使用 HTTP/2 的话,他们应该从网站的底层架构开始着手。”
参考来源:networkworld,FB 小编 Alpha_h4ck 编译,转载请注明来自 FreeBuf.COM