作者:经伦,阿里云安全专家
相关阅读:
从日常开发说起,浅谈HTTP协议是做什么的
常见通信协议HTTP、TCP、UDP的简单介绍
去年,淘宝、天猫也启动了规模巨大的数据“迁徙”,目标就是将百万计的页面从HTTP切换到HTTPS,实现互联网加密、可信访问。
更安全、更可信,是HTTP后面这个“S”最大的意义。HTTPS在HTTP的基础上加入了SSL/TLS协议,依靠SSL证书来验证服务器的身份,并为客户端和服务器端之间建立“SSL加密通道”,确保用户数据在传输过程中处于加密状态,同时防止服务器被钓鱼网站假冒。
HTTP为什么过时了?
很多网民可能并不明白,为什么自己的访问行为和隐私数据会被人知道,为什么域名没输错,结果却跑到了一个钓鱼网站上?互联网世界暗流涌动,数据泄露、数据篡改、流量劫持、钓鱼攻击等安全事件频发。
而未来的互联网网络链路日趋复杂,加重了安全事件发生。可能在星巴克被隔壁桌坐着的黑客嗅探走了口令,或者被黑了家庭路由器任由电子邮件被窃听,又或者被互联网服务提供商秘密注入了广告。这一切都是由互联网开始之初面向自由互联开放的HTTP传输协议导致的。
➤HTTP数据在网络中裸奔
HTTP明文协议的缺陷,是导致数据泄露、数据篡改、流量劫持、钓鱼攻击等安全问题的重要原因。HTTP协议无法加密数据,所有通信数据都在网络中明文“裸奔”。通过网络的嗅探设备及一些技术手段,就可还原HTTP报文内容。
➤网页篡改及劫持无处不在
篡改网页推送广告可以谋取商业利益,而窃取用户信息可用于精准推广甚至电信欺诈,以流量劫持、数据贩卖为生的灰色产业链成熟完善。即使是技术强悍的知名互联网企业,在每天数十亿次的数据请求中,都不可避免地会有小部分流量遭到劫持或篡改,更不要提其它的小微网站了。
➤智能手机普及,WIFI接入常态化
WIFI热点的普及和移动网络的加入,放大了数据被劫持、篡改的风险。开篇所说的星巴克事件、家庭路由器事件就是一个很有意思的例子。
➤自由的网络无法验证网站身份
HTTP协议无法验证通信方身份,任何人都可以伪造虚假服务器欺骗用户,实现“钓鱼欺诈”,用户根本无法察觉。
HTTPS,强在哪里?
我们可以通过HTTPS化极大的降低上述安全风险。
从上图看,加密从客户端出来就已经是密文数据了,那么你的用户在任何网络链路上接入,即使被监听,黑客截获的数据都是密文数据,加小编微信:AMEPRE,无法在现有条件下还原出原始数据信息。
各类证书部署后浏览器呈现效果,
免费SSL数字证书(IE上,Chrome下)
OV SSL数字证书(IE上,Chrome下)
EV SSL数字证书(IE上,Chrome下)
全世界都对HTTPS抛出了橄榄枝
➤浏览器们对HTTP页面亮出红牌
谷歌、火狐等主流浏览器将对HTTP页面提出警告。火狐浏览器将对“使用非HTTPS提交密码”的页面进行警告,给出一个红色的阻止图标;Google Chrome浏览器则计划将所有HTTP网站用“Not secure”显注标识。
图片来源:Googleblog
对于一般用户来讲,如果是这样标识的网站,可能会直接放弃访问。
➤苹果iOS强制开启ATS标准
苹果宣布2017年1月1日起,所有提交到App Store 的App必须强制开启ATS安全标准(App Transport Security),所有连接必须使用HTTPS加密。包括Android也提出了对HTTPS的要求。
➤HTTP/2协议只支持HTTPS
Chrome、火狐、Safari、Opera、IE和Edge都要求使用HTTPS加密连接,才能使用HTTP/2协议。
➤HTTPS提升搜索排名
谷歌早在2014年就宣布,将把HTTPS作为影响搜索排名的重要因素,并优先索引HTTPS网页。百度也公告表明,开放收录HTTPS站点,同一个域名的http版和https版为一个站点,优先收录https版。
只有部分网页可不够,全站HTTPS才是最佳方案
很多网站所有者认为,只有登录页面和交易页面才需要HTTPS保护,而事实上,全站HTTPS化才是确保所有用户数据安全可靠加密传输的最佳方案。局部部署HTTPS,在HTTP跳转或重定向到HTTPS的过程中,仍然存在受到劫持的风险[1]。
➤情况一:从HTTP页面跳转访问HTTPS页面
事实上,在 PC 端上网很少有直接进入 HTTPS 网站的。例如:支付宝网站大多是从淘宝跳转过来,如果淘宝使用不安全的 HTTP 协议,通过在淘宝网的页面里注入 XSS,屏蔽跳转到 HTTPS 的页面访问,那么用户也就永远无法进入安全站点了。
图片来源:EtherDream《安全科普:流量劫持能有多大危害?》
尽管地址栏里没有出现 HTTPS 的字样,但域名看起来也是正确的,大多用户都会认为不是钓鱼网站,因此也就忽视了。也就是说,只要入口页是不安全的,那么之后的页面再安全也无济于事。
➤情况二:HTTP页面重定向到HTTPS页面
有一些用户通过输入网址访问网站,他们输入了 www.alipaly.com 就敲回车进入了。然而,浏览器并不知道这是一个 HTTPS 的站点,于是使用默认的 HTTP 去访问。不过这个 HTTP 版的支付宝的确也存在,其唯一功能就是重定向到自己 HTTPS 站点上。劫持流量的中间人一旦发现有重定向到 HTTPS 站点的,于是拦下重定向的命令,自己去获取重定向后的站点内容,然后再回复给用户。于是,用户始终都是在 HTTP 站点上访问,自然就可以无限劫持了。
图片来源:EtherDream《安全科普:流量劫持能有多大危害?》
而全站HTTPS化可以确保用户在访问网站时全程HTTPS加密,不给中间人跳转劫持的机会。国外各大知名网站(PayPal,Twitter,Facebook,Gmail,Hotmail等)都通过Always on SSL(全站https)技术措施来保证用户机密信息和交易安全,防止会话劫持和中间人攻击。[2]
图片来源:Symantec《Protect the Entire Online User Experience: with Always On SSL》
关于Java和Android大牛频道
Java和Android大牛频道是一个数万人关注的探讨Java和Android开发的公众号,分享和原创最有价值的干货文章,让你成为这方面的大牛!
我们探讨android和Java开发最前沿的技术:android性能优化 ,插件化,跨平台,动态化,加固和反破解等,也讨论设计模式/软件架构等。由一群来自BAT的工程师组成的团队。
关注即送红包,回复:“百度” 、“阿里”、“腾讯” 有惊喜!!!关注后可用入微信群。群里都是来自百度阿里腾讯的大牛。
欢迎关注我们,一起讨论技术,扫描和长按下方的二维码可快速关注我们。或搜索微信公众号:JANiubility。
公众号:JANiubility