网上订票惊爆信息泄露风险,你还敢在网上订票吗?
尤其是当用户使用不可靠的公用互联网接入,如咖啡馆、商场的免费 WIFI,通过手机浏览器或 app 客户端访问这些没有采用 HTTPS 的服务时,就存在很大的被截获各种私人敏感信息的风险,比如身份信息、用户名、密码,乃至于信用卡号码等。这些数据泄露风险从何时开始,造成了多大的数据泄露已不可考。报告披露后,已有公司采取技术手段解决了该安全风险。
该调查主要针对欧美国家,并未涉及到中国国内情况。但是据我们对国内的网站、移动网站及 app 客户端的 HTTPS 部署情况的了解,这种风险同样存在,甚至会更严重。
而另一方面,据 CNNIC 调查数据显示,截止至 2015 年上半年,手机支付、手机网购、手机旅行预订用户规模分别达到 2.76 亿、 2.70 亿和 1.68 亿。同样据 CNNIC 数据,超过 40% 的人会使用网吧、公共场所等场所的 WIFI 接入互联网。
综合来看,采用移动客户端进行网上交易,当使用不安全的网络接入时,如果所访问的网站又没有做好必要的安全措施时,就有很大的风险泄露访问者的个人敏感信息。
怎样才能避免这样的风险?难道不能网上订票了吗?
其实,避免这样的安全风险的解决方案已经有了,那就是网站服务商应该向用户提供符合安全标准的 HTTPS 服务,而不是采用老旧的、不安全的 HTTP 服务。这样,即便访问者所处的环境并非十分安全可靠,依旧可以极大地降低用户的风险。
什么是 HTTPS 呢?
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标建立客户浏览器端与服务器端进行数据传输的通道,简单来说就是 HTTP 的安全版。它最初由网景公司创建出来并内置在其浏览器中。
HTTPS 之所以能够做到数据的安全传输,是通过 SSL/TLS 协议完成的。只有通信的双方才具备数据的加解密功能,而数据在中间通道的传输时已经加密。加密算法一般使用 AES 或 RSA 等,并且通过目前的科学分析,不大可能通过计算能力提升而使得正确配置的密码算法得到轻易地破解。
因此我们说,HTTPS是安全的。
为什么越来越多的网站选择 HTTPS?
近年来,重视安全的大厂商都在逐步加快网站部署 HTTPS 的速度。搜索引擎巨头 Google、淘宝天猫、百度等均全站启用 HTTPS,相信在未来,会有越来越多的网站加入全站 HTTPS 化的行列中。
为什么 HTTPS 如此受到青睐? 答案不言而喻,自然是因为 HTTPS 能够给网站带来更多的价值。这些价值主要体现在:
- 确保了流量的安全性,被拦截窃听后也无法获取真实信息,避免了隐私数据在网络上外泄的可能。这也是为什么所有的金融、支付类网站强制要求必须为 HTTPS 服务的原因。
- 安全性较高的网站往往在搜索引擎同类型中有着较高的排名。
- 浏览器的可信标识能够加强普通用户对网站的信任感。
既然 HTTPS 能够对网站带来非常实用的价值,可以预测的是,在安全这个需求越来越受到网民以及网站管理者重视的趋势下,未来 HTTPS 将彻底取代 HTTP,成为网站数据通信的主流方式。
如何部署 HTTPS ?
简单来说,作为网站服务提供方,你首先需要购买被主流浏览器所认可的 CA 颁发的 HTTPS 证书;然后依据你的 Web 服务器的不同,如 apache、nginx ,采用不同的配置,提供监听在 TCP/443 端口 HTTPS 服务;最后,要测试你的 HTTPS 服务是否功能正常、性能是否受到影响、是否影响了用户体验等方面。
具体的技术描述,就不在这里逐一展开了,请根据你的 IT 基础架构进行部署。一般而言,对于小型网站来说, 部署 HTTPS 服务还是比较简单的,但是对于规模较大、业务复杂的网站来说,部署 HTTPS 服务还是一项艰巨的工程。此外,据闻阿里云准备推出进行 HTTPS 服务封装的分布式服务,可以将你的 HTTP 服务无缝地封装成 HTTPS 服务,并且同时提供了服务加速(CDN)、攻击防护(WAF)和流量清洗(DDoS/CC)等功能。
部署了 HTTPS 服务,终于可以放心了?
当你终于部署好了 HTTPS 服务后,看到浏览器地址栏中的绿色标示,是不是感觉成就满满——妈妈再也不用担心我的用户信息被偷走了 😀
但是,且慢,其实你还只是接上了一块短板,还有一块短板依旧在流淌着水呢。
由于 HTTPS 服务对传输的内容进行了加密,理论上说,只有服务器端和客户端才能正确加密和解密数据,因此,你以前所用的基于云的 WAF (Web 应用防火墙)可能不支持 HTTPS,从而没法为你提供对 XSS 、SQL 注入等应用攻击层面的防护能力了。
通常的安全产品不能很好的支持 HTTPS 网站防护。其原因主要有:
- 目前的云防护或者是传统安全防护一般都是采用代理的模式。即采用将流量引入到安全防护产品中,通过检测分析,发现异常攻击,然后采取防护措施。但由于 HTTPS 对数据进行了加密,因此防护产品不能在应用层详细的解析出 HTTP 报文内容,自然不能识别攻击与合法流量,从而对威胁攻击束手无策。
- 由于涉及到建立连接的握手加解密协商,HTTPS 需要消耗的性能通常是 HTTP 的数倍。一般的防护产品没有搭建大规模防护集群的能力,因此无力做到大流量的 HTTPS 防护。
那好吧,你还可以购买硬件的 WAF 防火墙,但是,当 DDoS/CC 攻击和流量攻击如洪水般涌来时,你的 WAF 和线路能支撑多久?
是不是感觉踩下一块板,又翘起来另外一块?由于部署了 HTTPS ,从而导致原本可以防护应用层面攻击的分布式 WAF 服务反而不能用了?
另外,还有一件可能令你感到悲伤的事情,作为访问量蒸蒸日上的你的网站,采用 CDN 提供分布式的访问支持那简直是一定的,但是,目前支持 HTTPS 的 CDN 服务商还很少。
怎么办?难道使用 HTTPS 服务是个错误吗?
我来告诉你一个完整的解决方案……
以下是广告时间,阿里云云盾高防产品……什么,原来是软文?!
好吧,我们来谈谈技术问题。
本质上来说,云防护产品支持 HTTPS 是可行的,但是这里需要解决几个问题:
- 如何透明的解析 HTTPS 流量,并针对流量特征进行分析和处置?
- 如何避免升级到 HTTPS 所带来的处理能力降低、性能衰减的问题?
针对此种情况,阿里云云盾高防产品特别推出了支持 HTTPS 的应用层防护功能。其技术原理图如下:
实现的步骤为:
- 用户在云盾高防控制台中导入对应域名的证书和私钥、配置域名信息。
- 客户端与云盾高防进行 SSL 握手协商,协商通过后,使用云盾颁发的证书及公钥加密数据。
- 云盾高防进行数据解密,进行安全防护分析后,将合法的流量重新加密传至服务器端,同时阻断掉非法的攻击流量。
- 服务器端进行数据解密,实现正常业务。
通过以上方式,在客户业务无任何改造的情况下,云盾帮助用户实现了全链路端到端的数据加密。与此同时,由于进行了数据解密,云盾具备了分析应用层数据的能力,因此具备了转发流量到指定地址,进行细粒度安全防护的能力。包括且不限于:
- 高达 300G 的 DDoS 防护能力。
- 海量的 CC 攻击防护能力(集群可支持千万级 QPS 的攻击流量清洗)。
- Web 应用漏洞攻击的阻断防护能力(包括 SQL 注入、XSS、命令注入、木马 Shell 等通用 Web 攻击形式)。
- 提供丰富多样的应用层数据报表,不仅包括安全的详细报表,同时也会覆盖到业务访问的数据情况。
- 支持对部署在阿里云之外的主机的安全防护。
当然,如果您对数据隐私安全性要求比较高,可能会比较担心私钥放在云盾上的安全性。针对这种顾虑,也有对应的私钥安全解决方案。
另外,如果您对于自己部署 HTTPS 服务感觉棘手,阿里云云盾也有计划在近期推出 HTTP 直接变身 HTTPS 的服务,支持 HTTP 用户在无需更改自身业务的前提下,升级变为 HTTPS。
更多详情,可以戳戳这个链接看看。
本文转载来自 Linux 中国: https://github.com/Linux-CN/archive