前不久小米等六家互联网公司发表联合声明,呼吁运营商打击流量劫持。流量劫持Z直观的表现,就是网页上被插入了一些乱七八糟的广告/弹窗之类的内容。比如这样:
前不久小米等六家互联网公司发表联合声明,呼吁运营商打击流量劫持。流量劫持Z直观的表现,就是网页上被插入了一些乱七八糟的广告/弹窗之类的内容。比如这样:
网页右下角被插入了游戏的广告
流量劫持总体来说属于中间人攻击(Man-in-the-Middle Attack,MITM)的一种,本质上攻击者在通信两端之间对通信内容进行嗅探和篡改,以达到插入数据和获取关键信息的目的。目前互联网上发生的流量劫持基本是两种手段来实现的:
-
域名劫持:通过劫持掉域名的DNS解析结果,将HTTP请求劫持到特定IP上,使得客户端和攻击者的直接流量修改:在数据通路上对页面进行固定的内容插入,比如广告弹窗等。在这种情况下,虽然客户端和
能够实施流量劫持的根本原因,是HTTP协议没有办法对通信对方的身份进行校验以及对数据完整性进行校验。如果能解决这个问题,则流量劫持将无法轻易发生。
关于流量劫持的更多危害案例,可以参考:《六公司关于抵制流量劫持等违法行为的联合声明》《流量劫持首次被认定为犯罪》
HTTPS如何防止劫持 HTTPS,是HTTP over SSL的意思,提到HTTPS就不得不先简单描述一下SSL/TLS协议。SSL协议是Netscape在1995年首次提出的用于解决传输层安全问题的网络协议,其核心是基于公钥密码学理论实现了对
SSL协议在HTTP请求开始之前增加了握手的阶段,其粗略流程如下图所示:
-
在SSL握手阶段,客户端浏览器会认证SSL握手阶段结束之后,
如何部署HTTPS 要将网站进行HTTPS支持以达到防劫持的效果,首先需要的是为网站的域名搞一张证书。这个证书必须是由知名CA所签发的,这是因为知名CA的根证书广泛的存在于大多数浏览器和操作系统中,因此可以被客户端用来校验网站证书是否合法。
传统CA的证书签发流程大体相同,基本上都是根据证书认证的级别,进行一系列不同流程的认证,然后认证通过后申请者缴纳相应的费用就可以或得到证书。这个流程相对比较繁琐,尤其是对于个人和小型网站管理者来说搞起来也确实麻烦。这里推荐一种新型的方法——使用Let's Encrypt的自动化服务获取免费的证书。
Let's Encrypt项目是由ISRG提供的免费CA服务,其主要目的是减少证书获取的难度,将证书的签发/续签/作废等操作进行自动化处理。Let's Encrypt的使用方法非常简单,按照文档中步骤操作即可。如需进一步了解如何使用Let's Encrypt自动获取免费证书,可以参考:用Let’s Encrypt获取免费证书: https://www.paulyang.cn/blog/archives/39?spm=5176.blog2666.yqblogcon1.11.i02BAh
在获得到证书(以及对应的私钥)之后,主要有如下几种方法来使用:
阿里云的HTTPS支持 阿里巴巴在2015年的双11期间,成功的使用了全站范围(包括淘宝、天猫等核心电商域名)的HTTPS为广大买家提供安全的购物体验,这种体量的HTTPS服务在业界也极为少见。我们在进行电商业务的HTTPS改造时,在密码学、SSL/TLS协议以及PKI体系等领域进行了一系列的
阿里云做为底层基础设施的提供者,在阿里全站HTTPS化的过程中提供了大量的技术支撑,阿里云的CDN和SLB等产品在HTTPS的加速以及卸载等环节发挥了重要的作用。我们希望能将在淘宝/天猫业务上积累的HTTPS领域的经验和成果,借助阿里云的平台,让更多人来使用,籍此希望跟多的互联网流量能够HTTPS化,让流量劫持再无可能。
交付内容如同江湖走镖,流量劫持形同拦路劫镖,Z后借用我们同事的强图来结束本文,那就是:
-
转载请注明:成都SEO 原创文章,作者:鲁 大师seo,如若转载,请注明出处:http://www.luseo.cn/archives/2917.html