有https就够安全了吗?
Posted 程序猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有https就够安全了吗?相关的知识,希望对你有一定的参考价值。
来自:恒生技术之眼 - 恒生研发
链接:http://rdcqii.hundsun.com/portal/article/421.html(点击尾部阅读原文前往)
已获得转载授权
摘要:安全问题一直是互联网用户心头的一块大石。很多人将https与安全画上了等号。实则不然,今天,研发中心信息安全专家跟大家聊聊https的那些事。
在平时工作和日常生活中, “https=安全”这样的观点在大多数人的思维中根深蒂固,甚至很多人根本不认为自己会被攻击。那这个观点到底对不对呢?难道真的是 too young too simple, sometimes naïve么?
下面就由笔者来打破人们的这些鬼https的信任吧、(注:本文只讨论前端以及中间人的手段来获取信息,因为https主要是为了防止信息被监听。至于黑站等相关问题,本文暂不讨论,大家如有兴趣请持续关注。)
第一部分:https降级攻击
降级攻击这项技术历史悠久,但由于操作简单便捷,所以使用率一直很高。这项技术与证书伪造殊途同归,为了让读者能直观感受这一类直接劫持类型的攻击,在此做一个简单的演示。
为了让大家对整个演示过程印象深刻,把BAT的产品拿来做演示对象应该是最有效的。另外,个人觉得搜索引擎应该也是大家用的最多的产品,那不妨就让baidu身先士卒,先上笔者的手术台被我解剖下。
工具:一台受害者的电脑或者虚拟机,另一台装有sslstrip或者一堆高度集成的自带sslstrip功能的中间人工具框架。具体操作请看下面演示 :
在受害者电脑上,这个是正常访问baidu的样子。有小锁图标,有https协议,然后我们看看如果受到了降级攻击之后,受害者的百度:
在攻击者的电脑上:
由上图可见,受害者电脑上输入的用户名和加密后的密码都已经被截取到。幸好密码是加密的,攻击者无法直接获取受害者的用户名和密码。由上可知,即使有了https,对密码加密也是必不可少的步骤。紧急关头,这也能给自己加一道最后的防护。
那接下来,我们继续介绍些更隐蔽、更直接地拿到明文密码的方法。
第二部分:js中间人投毒
这个名字其实是笔者根据攻击原理形象化的描述。其原理是先开展中间人攻击,然后在用户请求的时候修改返回的数据包,插入有攻击性的js代码。具体步骤请看下面的演示:
工具:一台受害者的电脑,一台攻击者的电脑,为了方便,直接使用mitmf这个中间人攻击框架进行操作。
攻击者电脑开启mitmf,调用jskeylogger模块:
看看日志:
已经开始注入恶意的js了。
受害者继续登录baidu:
密码是“xiaobaitu”,攻击者这边已经收到,如下图所示。
登录凭证窃取计划完成,这个方法比第一个方法要方便得多,直接窃取到明文密码,而且https以及安全图标都还在。
除了中间人攻击的方法,攻击者还可以结合xss,js缓存投毒等一系列攻击手段开展类似的攻击,危害不可谓不大。
第三部分:浏览器恶意插件
浏览器恶意插件,和中间人关系不大。因为中国有Great Firewall的存在,我们基本可以不用担心一些恶意插件能窃取我们的资料。但是由于习惯原因,很多人喜欢用chrome,并且大家也都知道chrome可以装很多有用的插件,然而由于Great Firewall的存在,通过正常渠道是访问不到谷歌应用商店的。于是,很多有需要的用户会通过各种方法去下载类似的插件。而对插件原理不甚明了的用户,就很有可能下载到带有恶意js的插件。通常来说,大部分的杀毒软件对带有恶意js的插件是没有特别好的检测方案的。而无论是谷歌还是火狐的官方插件商店,都曾经出现过带有恶意代码的插件,造成了巨大的损失。
背景介绍完了,演示如下:
工具:一台受害者的电脑,一个笔者写的chrome插件,一台可以访问接收的web服务器。
首先,攻击者在经不住诱惑的情况下(如“美女图片”插件,“一元钱抢6s”插件等描述),下载了恶意的插件,然后又登录baidu(为了增强大家印象),现在,我们换一个比较“致命”的应用,支付宝。
密码是“woshidahuilang”。
接收服务器:
由上图可以看出,攻击者端已接收到全部的信息。
该方法的原理就是通过浏览器插件,在点击登录时,将登录框的信息通过ajax表单的形式提交的远程服务器,无声无息间账号密码已经泄露。
下面贴个实现代码:
主要是通过监听表单的submit事件来实现。
Http安全问题其实是当前的一个重点问题,很多人的账户密码都是由以上攻击方式而被窃取的。除上三种方式外之外,攻击方法还有很多,本文就不一一列举了。用户必须要理解一个概念:安全是一个需要积累的过程,就像打补丁。
一个补丁刚打上时,暂时可以保证安全。但是时间一久,系统仍有可能出现其他的漏洞。你可能认为某个小补丁不起眼,能一击而破,可是别忘了,补丁也不是独自战斗。因此,各项安全工作一起合力,就能很好的延长防护的纵深以及拉长防护的战线,给予我们以及用户更好的保护。
本文编号1705,以后想阅读这篇文章直接输入1705即可。
●本文分类“黑客”,搜索分类名可以获得相关文章。
●输入m可以获取到文章目录
黑客技术与网络安全↓↓↓
Web开发↓↓↓
更多推荐请看《》
涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、ios开发、C/C++、.NET、Linux、数据库、运维等。传播计算机学习经验、推荐计算机优秀资源:点击前往《》
以上是关于有https就够安全了吗?的主要内容,如果未能解决你的问题,请参考以下文章
Kubernetes 已经成为云原生时代的安卓,这就够了吗?