本文由 伯乐在线 - 黄利民 翻译。未经许可,禁止转载!
英文出处:howtogeek。欢迎加入翻译组

【2013-08-09 更新】:最近又开始讨论“Chrome浏览器明文保存密码这个话题了,国外一位软件工程师 Elliott Kember 在他博客上写文提了这个问题,他认为这是一个安全漏洞。随后,Chrome 浏览器安全技术主管  Justin Schuh 在 HackerNews 发帖做了解释,他的意见和下文提到的『主密码提供了一种虚假的安全感,保护敏感数据的最可行保护方式是要取决于系统的整体安全性』相同。

导读:2012年12月3日晚上,有网友在Hacker News提交了一个关于可以在Chrome浏览器“密码管理器”查看已保存密码的帖子,可能那位提交的网友之前不了解Chrome的这个特性及其背后的机制,导致这个贴子在Hacker News首页停留的时间还不短。之后国内网友在微博上发布相关消息后,同样引起不少讨论(链接1链接2链接3)。很多之前不了解Chrome保存密码机制的朋友惊呼 Chrome 坑爹。伯乐在线编译了 howtogeek 网站上的一篇文章,应当可以解除这些朋友的疑问。

关于 Google Chrome 浏览器也有一个常见问题,“为什么它没有一个主密码(master password)?” Google 支持论坛中有个非官方的回复,说了Google的立场:主密码提供了一种虚假的安全感,保护敏感数据的最可行保护方式是要取决于系统的整体安全性。

那用户在Chrome浏览器上保存的密码的安全性有多高呢?请见下文。

如何查看已保存的密码

Chrome 密码管理器的进入方式:右侧扳手图标→设置→显示高级设置→密码和表单→管理已保存的密码。或者直接在地址栏中复制粘贴:chrome://chrome/settings/passwords,然后回车进入。

如果你允许Chrome保存密码,看到这个界面应该没什么稀奇,或许你早已知道这个特性了。从昨晚微博转发来看,很多用户还是并不知道这个特性。

点击密码区域,显示一个“显示”按钮,再点击“显示”按钮,可看到密码。如果其他人可以无阻碍使用你的电脑,那他就可以拿到你的这些已保存的密码。

(本文配图中的用户名和密码为测试所用)

密码数据保存在哪里了?

已保存的密码数据存储在一个 SQLite 数据库中,位置是:

[系统盘]:\Documents and Settings$$!用户名]\Local Settings\Application Data\Google\Chrome\User Data\Default\Login Data (这个路径是 Win XP 系统)

你可以用  SQLite Database Browser 打开这个文件(文件名就是“Login Data”),查看“logins”表格,该表就包含了被保存的密码。但你会看到“password_value” 域的值是不可读,因为值已加密。(PS:SQLite数据库查看器的SourceForge下载链接

加密后的数据的安全性如何?

为了执行加密(在Windows操作系统上),Chrome使用了Windows提供的API,该API允许用于加密密码的Windows用户账户去解密已加密的数据。所以基本上来说,你的主密码就是你的Windows账户密码。所以,只要你登录了用自己的账号Windows,Chrome就可以解密加密数据。

不过,因为你的Windows账户密码是一个常量,并不是只有Chrome才能读取“主密码”,其他外部工具也能获取加密数据,同样也可以解密加密数据。比如使用NirSoft的免费工具ChromePassNirSoft官方下载,就可以看得你已保存的密码数据,并可以轻松导出为文本文件。

既然 ChromePass 可以读取加密的密码数据,那恶意软件也能读取的。当ChromePass.exe被上传至VirusTotal时,超过半数的反病毒(AV)引擎会标记这一行为是危险级别。不过在这个例子中,这个工具是安全的。不过有点囧,微软的Security Essentials并没有把这一行为标记为危险。

可以绕过保护机制么?

假设你的电脑被盗,小偷重设了Windows账号密码。如果他们随后尝试在Chrome中查看你的密码,或用ChromePass来查看,密码数据都是不可用。原因很简单,因为“主密码”并不匹配,所以解密失败。

此外,如果有人把那个SQLite数据库文件复制走了,并尝试在另外一台电脑上打开,ChromePass也将显示空密码,原因同上。

结论

Chrome浏览器中已保存密码的安全性,完全取决于用户本身。这里有些建议:

●使用一个极高强度的Windows账号密码。必须记住,有不少工具可以解密Windows账号密码。如果有人获取了你的Windows账号密码,那他也就可以知道你在Chrome已保存的密码。

●让你自己远离各种各样的恶意软件吧。如果工具可以轻易获取你已保存的密码,那恶意软件和那些伪安全软件同样可以做到。如果非得下载软件,请到软件官方网站去下载。

●把密码保存至密码管理软件中(比如:KeePass)。当然了,如此一来,浏览器就不能帮你自动填充密码了。

●使用可以整合到Chrome中的第三方工具(比如:LastPass),使用主密码来管理你的那些密码。推荐阅读:《用LastPass管理好你的密码

●用工具(比如:TrueCrypt)完全加密整个硬盘。

●非私人电脑上,一定不能让浏览器保存密码。(原文没有,额外补充)

如果经常用浏览器保存登录用户名和密码,离开电脑时最好锁定屏幕。总之一句话,把家里(操作系统)的安全工作做好,家中物件的安全性也应当有保障了。

补充信息:如果允许 Firefox 浏览器保存站点密码,同样可以很方便查看。

Firefox 浏览器虽然采用了主密码机制,但默认并不开启。如果用户启用,以后Firefox每次读取已保存的敏感数据时,用户必须输入主密码。。用户必须记住自己设定的主密码,否则……

在Chrome浏览器中保存的密码有多安全?的更多相关文章

  1. 渗透技巧——导出Chrome浏览器中保存的密码

    0x00 前言 在后渗透阶段,获得权限后需要搜集目标系统的信息.信息越全面,越有助于进一步的渗透.对于Windows系统,用户浏览器往往包含有价值的信息. 在之前的文章<本地密码查看工具LaZa ...

  2. 导出Chrome浏览器中保存的密码

    title: 导出Chrome浏览器中保存的密码 date: 2018-02-11 17:54:51 tags: --- 导出Chrome浏览器中保存的密码 先知看到的,挺有意思,记录一下 不同浏览器 ...

  3. 如何查看chrome浏览器已保存的密码

    该方法是针对在chrome中已经存储了登陆密码的情况. chrome版本是 66.0.3359.139(正式版本) (64 位),不知道哪天会改了这个bug. 一般来说,我们登陆chrome浏览器已经 ...

  4. 简单绕过Chrome密码查看逻辑,查看浏览器已保存的密码

    简单绕过Chrome密码查看逻辑,查看浏览器已保存的密码   利用场景: 同事或朋友外出有事,电脑未锁屏离开座位.可以利用这一间隙,查看Ta在Chrome浏览器上保存的账号密码 查看逻辑: 当我们要查 ...

  5. 忘记常访问网站密码怎么办?教你如何查看浏览器已保存的密码,如何简单查看Chome浏览器保存的密码?

    利用场景: 同事或朋友外出有事,电脑未锁屏离开座位.可以利用这一间隙,查看Ta在Chrome浏览器上保存的账号密码 查看逻辑: 当我们要查看Chrome浏览器上保存的密码时,点击显示,会弹出一个对话框 ...

  6. [转]chrome浏览器中 F12 功能的简单介绍

    本文转自:https://www.cnblogs.com/zhuzhubaoya/p/9758648.html chrome浏览器中 F12 功能的简单介绍 由于F12是前端开发人员的利器,所以我自己 ...

  7. 【F12】chrome浏览器中 F12 功能的简单介绍

    chrome浏览器中 F12 功能的简单介绍 由于F12是前端开发人员的利器,所以我自己也在不断摸索中,查看一些博客和资料后,自己总结了一下来帮助自己理解和记忆,也希望能帮到有需要的小伙伴,嘿嘿! 首 ...

  8. chrome浏览器中 F12 功能的简单介绍

    chrome浏览器中 F12 功能的简单介绍 由于F12是前端开发人员的利器,所以我自己也在不断摸索中,查看一些博客和资料后,自己总结了一下来帮助自己理解和记忆,也希望能帮到有需要的小伙伴,嘿嘿! 首 ...

  9. 解决Chrome浏览器自动记录用户名和密码的黄色背景问题和该解决方法与tab切换至下一个input冲突的问题。

    哈哈哈,是不是标题很长呀,不逗你们了.其实这么长的标题主要就说了两件事: 第一件:解决Chrome浏览器自动记录用户名和密码的黄色背景问题. 第二件:输入完用户名后按下tab键切换至下一个输入密码in ...

随机推荐

  1. samba和nginx服务

    samba和nginx服务 1.s配置amba samba的功能: samba是一个网络服务器,用于Linux和Windows之间共享文件. 1.1配置环境 关闭防火墙和selinux systemc ...

  2. np.argsort函数

    np.argsort函数 觉得有用的话,欢迎一起讨论相互学习~Follow Me numpy.argsort(a, axis=-1, kind='quicksort', order=None) 功能: ...

  3. Lua 错误 收集

    不存在的变量或者变量没有定义,提示错误 // :: [error] #: * lua entry thread aborted: runtime error: /opt/openresty/nginx ...

  4. Jmeter javaRequest插件开发

    1. 适用场景 Jmeter工具当前支持的协议或协议所支持的传输方式及传输内容不能满足当前项目的测试要求时,就需要根据实际要求手动编写java测试代码(实现对应的Jmeter规范),以插件方式加载到J ...

  5. python概念-Socket到底有多骚

    Socket究竟是什么呢? 简单来说Socket就是用来完成客户端与服务器之间的通信 例如浏览器访问网页,例如网络游戏等一切基于客户端服务器来实现的C/S架构程序 Socket是基于互联网OSI七层协 ...

  6. 对于Json的认识

    Json简介 1. JSON 是什么 JSON,全称是 JavaScript Object Notation,即 JavaScript 对象标记法.   JSON 是一种轻量级(Light-Weigh ...

  7. Oracle Certified Java Programmer 经典题目分析(二)

    ...接上篇 what is reserved(保留) words in java? A. run B. default C. implement D. import Java 关键字列表 (依字母排 ...

  8. Redhat制作本地yum源

    1.将iso文件上传到服务器上,然后执行: mount -o loop rhel-server-6.3-dvd.iso /media/cdrom 2.设置yum源,在/etc/yum.repos.d目 ...

  9. LVS ARP广播产生的问题和处理方式【转】

    转自 LVS ARP广播产生的问题和处理方式-htckiller2010-ChinaUnix博客http://blog.chinaunix.net/uid-24960107-id-193084.htm ...

  10. FastDFS集群部署

    之前介绍过关于FastDFS单机部署,详见博文:FastDFS+Nginx(单点部署)事例 下面来玩下FastDFS集群部署,实现高可用(HA) 服务器规划: 跟踪服务器1[主机](Tracker S ...