浏览器有时候会询问用户是否想要浏览器记住他们刚刚输入的密码。然后,浏览器会存储密码,并自动在相同的认证表单中填充这些信息。这是方便用户的一项举措。此外有一些web站点可能会提供自定义的“记住我”功能来允许用户在一个特别的客户端系统中保持登陆状态。
浏览器记住密码功能不仅仅方便了终端用户,也方便了攻击者。如果一个攻击者能访问受害者的浏览器(如通过跨站脚本攻击,或通过共享计算机),那么他们就能够获取存储的密码。浏览器通常以一种能简单获取的方式存储这些密码,甚至浏览器加密存储密码并只允许通过主密码来获取,攻击者仍然可以通过访问目标web应用的认证表单,输入受害者的用户名信息,让浏览器自动填充密码来获得。
此外,当自定义的“记住我”功能产生的被存储在客户端PC上的令牌存在脆弱性(如使用base64加密的用户凭证令牌),这也可能暴露用户密码。由于在2014年初期之后,大多数主要的浏览器会使用autocomplete="off"的选项来覆盖密码表单,因此检查这个选项不再是必须的,那些建议举措不应该仅仅常规地建议关闭这项功能。然而这个功能也可能被应用在像第二秘密等类似信息中,这些也会不经意存储在浏览器中。
确保没有敏感信息被明文存储或能被简单破解的编码和加密形式存储于cookie之中。