盗取 Cookie 登录用户账户是目前网络世界里经常出现的问题,这种操作也非常简单,例如有些知名的扩展程序被黑产团伙收购并添加恶意代码用来窃取浏览器已经保存的所有 Cookie,再用这些 Cookie 直接登录用户账户即可,不需要账号、密码以及 2FA 认证等。
基于这种威胁目前部分网站已经使用更安全的策略,例如检测到 Cookie 登录的 IP 地址与最初生成该 Cookie 的 IP 地址不同,则判定为 Cookie 泄露因此会拒绝登录并要求重新使用账号密码以及 2FA 认证等。
现在谷歌也意识到这种攻击方式威胁用户的账户安全,因此 Chrome v127 版已经增加了 Cookie 加密绑定,只有发起登录的应用程序 (网站) 才可以读取和调用这段 Cookie,避免被恶意扩展程序或其他软件窃取。
Chrome 软件工程师 Will Harris 在最新博客中表示:
目前 Chrome 已经在各个操作系统上使用系统内置的凭据保护避免数据被窃取,例如在 macOS 上使用 KeyChain、在 Linux 上使用 kwallet 或 gnome-libsecret 以及在 Windows 上使用 DPAPI。
虽然 Windows DPAPI 可以保护静态数据免受冷启动攻击,但无法抵御恶意工具或脚本,因此在 Chrome v127 中谷歌引入了新的保护措施,通过应用程序绑定 (App-Bound) 加密 “原语” 改进 DPAPI。
应用程序绑定加密增加了攻击者窃取数据的成本,也让他们在系统上的恶意操作变得更加嘈杂更容易被识别出来。
新的保护机制使用 Windows SYSTEM 权限运行加密强求,身份编码被加密后可以确保只有目标应用才可以解密数据,因此其他恶意工具或脚本即便尝试盗取数据也无法解密使用。
当然得益于 SYSTEM 权限运行,恶意工具或脚本还需要获得系统权限或者将恶意代码注入到 Chrome 进程中才能窃取数据,这个过程属于典型的攻击因此也很容易被安全软件拦截。
目前该机制不仅支持保护 Cookie 这类敏感数据,还可以保护用户账户和密码、支付数据以及其他持久化的身份验证令牌,避免用户数据遭到恶意软件的攻击。