注册登录

微信小程序HTTPS 这是微信小程序开发者必须注意(1)

2020-09-28
导读:微信小程序HTTPS已经是当下最热门的话题,下面将从多方面来谈谈微信小程序HTTPS相关的内容,下面从小程序是否必须要用https,小程序https证书配置,小程序https证书问题等。...

微信小程序HTTPS已经是当下最热门的话题,下面将从多方面来谈谈微信小程序HTTPS相关的内容,下面从小程序是否必须要用https,小程序https证书配置,小程序https证书问题,小程序https post等七篇系列来讲解。
 

一、微信小程序接入的困境

开发者在接入微信小程序过程中,会遇到以下问题:

微信小程序要求必须通过 HTTPS 完成与服务端通信,若开发者选择自行搭建 HTTPS 服务,那需要自行 SSL 证书申请、部署,完成 https 服务搭建,效率低流程冗长;且 HTTPS 的 SSL 加解析,对服务器的 CPU 有极大的开销。

不仅仅是小程序,苹果 iOS 平台,Google Android 在 2017 也逐步强制要求开发者使用 HTTPS 接入。HTTPS 似乎是一个绕不开的门槛,让不少开发者头痛不已。

针对以上问题,腾讯云的负载均衡服务(cloud load balance),希望通过对 HTTPS 的性能优化,提供一键式的 SSL 证书申请服务,降低 HTTPS 的应用门槛和使用成本,让开发者能快速接入微信小程序等服务。首先,先让我们看看 HTTP 与 HTTPS 的对比,逐一解开您的谜团。

二、为什么要接入 HTTPS—HTTP 的安全风险

前面我们已经说到了HTTP 协议是一个非常简单和高效的协议,互联网大部分的主流应用默认都是使用的HTTP。由于性能和上个世纪 90 年代使用环境的限制,HTTP 协议本身并不是一个为了安全设计的协议,既没有身份认证,也没有一致性检验,最头疼的是,HTTP 所有的内容都是明文传输的。

另外一方面,互联网的发展也是日新月异,各种 HTTP 应用不断地渗透到人们生活的方方面面。不管是社交、购物、金融、游戏、还是搜索,这些 HTTP 服务都能带给人们极大的便捷,提升生活质量和效率。

 

显然,HTTP 和人们生活及经济利益密切相关,遗憾的是,它不安全。也就意味着这里一 定潜藏着巨大的安全隐患。这些隐患又集中表现在如下两方面:

1、隐私泄露

由于 HTTP 本身是明文传输,用户和服务端之间的传输内容都能被中间者查看。也就是说 你在网上搜索、购物、访问的网点、点击的页面等信息,都可以被「中间人」获取。由于国人大多不太重视隐私的保护,这里的风险比较隐性,伤害后果也不太好定量评估。已知的一些比较严重的隐私泄露事件包括:

1、QQ 登陆态被不法分子窃取,然后在异地登陆,进行广告和欺诈行为。

2、用户手机号和身份信息泄露。

3、用户网上行为泄露。比如搜索了一所医院,很快就会有人打电话进行推广(非效果广告)。

2、页面劫持

隐私泄露的风险比较隐蔽,用户基本感知不到。但另外一类劫持的影响就非常明显非常直接了——页面劫持,也就是直接篡改用户的浏览页面。有很多页面劫持很简单粗暴,直接插入第三方广告或者运营商的流量提示信息。

微信小程序HTTPS 这是微信小程序开发者必须注意(1)

但也有一些劫持做得比较隐蔽,比如下面的京东页面劫持:其中上图是使用 HTTP 方面的页面,顶部箭头所示的地方出现了一个购物推荐,很逼真,就像京东或者浏览器官方的工具。

微信小程序HTTPS 这是微信小程序开发者必须注意(1)

但换成 HTTPS 访问,就没有这个工具页面,显然是被劫持了。

微信小程序HTTPS 这是微信小程序开发者必须注意(1)

3、劫持路径及分类

那劫持到底是如何产生的呢?从技术上来讲比较简单,在内容经过的地方进行监听篡改就行了。但要想把整个劫持的产业链条摸清楚,需要深入黑产内部,比较困难。有一点可以肯定的是,劫持大部分都是在中间的网络节点发生的,又叫「中间人」(MITM, man in the middle)。如下图所示:

微信小程序HTTPS 这是微信小程序开发者必须注意(1)

由于信息传输都需要经过上述的「中间人节点」,它们又拥有信息的读写权限,如果信息没有加密,也没有校验,那么想要查看隐私,篡改页面,对于「中间人」来说可谓是轻而易举。

那劫持又有哪些主要的分类呢?根据劫持路径划分的话,主要是下图所示的三类:

微信小程序HTTPS 这是微信小程序开发者必须注意(1)

DNS 劫持,客户端劫持和链路劫持。 根据我们的不完全统计,业务遇到的绝大部分劫持 (90%)都属于链路劫持。

重磅推荐:小程序开店目录

第一部分:小商店是什么

第二部分:如何开通一个小商店

第三部分:如何登录小商店

第四部分:开店任务常见问题

第五部分:小商店可以卖什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收货/物流

第九部分:小程序怎么结算

第十部分:小程序客服

第十一部分:电商创业

第十二部分:小程序游戏开发

电话咨询 微信咨询 预约演示 0元开店