如何查看网页密码框中隐藏的密码
```html 浏览器把密码框里的何查字符显示成圆点,只是看网前端的一种视觉遮蔽。密码本身仍然以明文形式存在于DOM节点的页密value属性里。打开开发者工具,码框密码选中那个输入框,中隐在Console里敲一行 我去年帮一个朋友处理过一件事。页密他把自己家路由器的码框密码管理密码存在了浏览器里,换了新电脑后怎么也想不起来。中隐路由器背面贴的默认密码早被改过,重置就得重新配置宽带。他急得不行,我让他打开旧电脑的Chrome,找到路由器登录页,右键检查那个密码框,Console里一行代码,密码直接显示出来。整个过程不到十秒。他盯着屏幕愣了半天,说“就这么简单?”就这么简单。 不想敲代码的话,还有更笨但更直接的办法。在开发者工具的Elements面板里找到那个 有个细节要注意:有些网站会在你点击“显示密码”按钮时用JavaScript动态切换type属性,这种网站你手动改type也能生效。但另一些网站用了更复杂的手段,比如把真实密码存在内存变量里,输入框里放的是一串假字符。这种情况下改type没用,得去Console里翻全局变量或者监听网络请求。不过这种网站极少,普通用户碰不到。 密码框的遮蔽从来就不是安全机制。它只是防肩窥——防止你身后的人看到你输的是什么。真正的安全边界在传输层和服务器端。浏览器把密码以明文形式交给JavaScript,是因为表单提交、自动填充、密码管理器都需要访问明文。如果浏览器把密码加密存在DOM里,这些功能全得废掉。 换句话说,任何能打开开发者工具的人,都能看到密码框里的明文。这不是漏洞,是设计。你在网吧或者共用电脑上登录账号,走之前一定要关掉浏览器或者至少退出登录。别以为圆点遮住了就安全。 手机上没有桌面版开发者工具那么方便,但也不是没办法。Chrome for Android可以用 更简单的办法是装个支持“显示密码”的输入法或者浏览器插件。但我不推荐在手机上装来历不明的插件,风险比在电脑上大得多。手机屏幕小,肩窥风险反而低,实在忘了密码,用电脑端找回更稳妥。 前年有个同事在共享办公空间里登录公司后台,输完密码没关页面就去接咖啡了。旁边坐的人打开开发者工具,两秒钟就拿到了他的密码。后来公司查日志发现异常登录,调了监控才找到原因。那个同事一直以为密码框的圆点是加密的。这件事之后,我在团队里反复讲:圆点只是给你自己看的,别把它当锁。 浏览器厂商其实可以做得更安全,比如在开发者工具打开时自动清空密码框的值,或者对密码字段的value读取加一层权限确认。但到现在为止,主流浏览器都没这么做。原因很简单:开发者调试需要,密码管理器需要,自动填充需要。安全性和便利性之间的平衡点,目前就落在这里。 所以下次你在别人电脑上登录什么账号,记得走的时候按document.querySelector('input[type=password]').value,何查回车,看网密码就出来了。页密这招在Chrome、码框密码Edge、中隐Firefox上都能用,何查不需要装任何插件。看网改type属性比写代码更直观
<input type="password">,双击type="password",把它改成type="text"。密码框立刻变成普通文本框,圆点变回字符。这个操作不需要懂JavaScript,纯手工修改HTML属性。改完之后别刷新页面,一刷新就恢复原样了。为什么浏览器允许你这么做
手机浏览器也能看
chrome://inspect远程调试,连上电脑后操作和桌面版一样。iOS的Safari需要在设置里打开Web检查器,然后用Mac上的Safari连过去调试。步骤多几步,原理完全相同。一个真实的教训
Ctrl+Shift+Delete清一下缓存和密码。或者干脆用无痕模式。别给下一个人留机会。
-
上一篇
-
下一篇
- 随机阅读
- 搜索
-
- 友情链接
-