为啥不能将用户密码保存在Cookie中

admin 2024年8月17日10:28:15评论28 views字数 1659阅读5分31秒阅读模式

一天,我们给客户做一些网络安全咨询,前期是排查业务系统的脆弱性,工程师抓包后,发现响应头部的Cookie长得有点不一样。大概是下面这样子吧。

Set-Cookie: user_password=MySecretPassword123; Path=/; Expires=Wed, 21 Aug 2024 07:28:00 GMT

为啥不能将用户密码保存在Cookie中

   这个图是示例哈,来自于https://github.com/macrozheng/mall-admin-web/issues/113

工程师初出茅庐,很少能挖到问题,于是有点兴奋起来,赶紧跟我讲了这个问题。

我一看,这个Cookie里面居然有用户密码,还是明文的。于是就给客户说了一下这个问题。也有点奇怪,为什么要客户要埋一个炸弹在此处,于是多嘴问了一下。

客户看我不解,说:“我们这个系统是在内网,也是很早开发的老系统了,当时对安全理解不足。不过我们后来开发的系统都是在Cookie中保存会话ID或者Token了。

不过,抛开安全的角度,将用户密码保存在Cookie中却有些好处呢。首先,我们这个系统是大家经常要访问的系统,本身也没啥敏感的信息,每个同事主要在自己电脑上打开浏览器就可以直接访问,不用再登录了。感觉用起来很节省时间。

其次,我们这个本来就是内网嘛,大家自己的电脑自己用,电脑不用也会锁屏,不太可能被攻击什么的。”

哦,我大概明白了。不过我们还是又普及了一下这样做的风险,让客户自考虑。

以下是写入报告的内容:

即使在内网环境中,将明文密码存储在Cookie中依然存在一些风险。虽然内网通常比外网更安全,但这些风险并没有消失哦。

以下是内网中存储明文密码在Cookie中的主要风险:

1. 内网安全漏洞

  • 内部攻击

    • 员工或内部人员:即使在内网中,内部人员(如恶意员工或受感染的计算机)也可能访问敏感信息。如果明文密码存储在Cookie中,这些内部人员可以轻易获取用户密码。

  • 设备安全

    • 不安全的终端:员工使用的终端设备可能没有得到充分保护,恶意软件或病毒可能会窃取存储在Cookie中的密码。

2. 内部网络攻击

  • 网络嗅探

    • 不安全的网络环境:即使在内网中,网络嗅探工具(如Wireshark)可以用来捕获未加密的数据包。如果没有使用HTTPS,攻击者可以捕获并查看明文密码。

  • 中间人攻击

    • 网络配置问题:内网中的中间人攻击仍然可能发生,尤其是在网络配置不当或存在安全漏洞时。攻击者可以劫持网络流量,窃取Cookie中的明文密码。

3. 用户操作风险

  • 密码泄露

    • 共享设备:如果设备被多个用户共享,或如果设备不受严格控制,明文密码可能被其他用户访问和滥用。

  • 存储和管理问题

    • 清理问题:即使是内网环境,Cookie可能在意外情况下被保留过久,旧的明文密码可能会成为潜在的安全隐患。

4. 合规性和最佳实践

  • 法规和政策

    • 内网合规:即使在内网中,组织也需要遵守数据保护法规和最佳实践。明文存储密码不符合最佳安全实践,可能导致合规问题。

  • 安全审计

    • 最佳实践:组织应遵循安全最佳实践,确保敏感数据(如密码)得到适当保护,无论是在内网还是外网。

推荐的安全实践

  1. 使用会话ID或Token

    • 替代方案:使用会话ID或Token来管理用户会话,避免将明文密码存储在Cookie中。

  2. 加密传输

    • 使用HTTPS:确保所有传输都通过HTTPS加密,即使是在内网中,也可以防止数据被窃取。

  3. 保护Cookie

    • 设置标志:设置HttpOnlySecure标志,以增强Cookie的安全性,防止JavaScript访问和非加密传输。

  4. 安全配置和审计

    • 设备和网络安全:定期审计内网的设备和网络配置,确保没有安全漏洞,保护敏感数据不被泄露。

尽管内网通常提供比公共网络更高的安全性,将明文密码存储在Cookie中依然存在显著的风险。这些风险包括内部人员的恶意行为、设备安全问题、网络嗅探和合规性问题。为了保障数据安全,应遵循最佳实践,如使用会话ID或Token、加密传输和适当的Cookie保护。

THE END

原文始发于微信公众号(透明魔方):为啥不能将用户密码保存在Cookie中

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年8月17日10:28:15
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   为啥不能将用户密码保存在Cookie中https://cn-sec.com/archives/3073411.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息