gpt4 book ai didi

security - 将 Cookie 存储在数据库中安全吗?

转载 作者:行者123 更新时间:2023-12-02 04:16:17 28 4
gpt4 key购买 nike

如果我使用 mechanize ,例如,我可以为网站创建新的谷歌分析配置文件。我通过以编程方式填写登录表单并将 cookie 存储在数据库中来做到这一点。然后,至少在 cookie 过期之前,我可以访问我的分析管理面板,而无需再次输入我的用户名和密码。

假设您无法以任何其他方式创建新的分析配置文件(使用 OpenAuth 或任何其他方式,我认为它不适用于实际创建新的 Google Analytics 配置文件,Analytics API 用于查看数据,但我需要创建一个新的分析配置文件),将 cookie 存储在数据库中是一件坏事吗?

如果我确实将 cookie 存储在数据库中,它可以非常容易地以编程方式登录到 Google Analytics,而无需用户访问浏览器(也许该应用程序具有显示“用户,您可以安排一个 Hook 来创建一个为您创建的每个新域创建新的分析配置文件,只需输入一次您的凭据,我们就会让您保持登录并保持安全”)。否则,我必须继续传输电子邮件和密码,这似乎更糟。

那么在数据库中存储 cookie 安全吗?

最佳答案

首先,这是一种有缺陷的方法,因为经过身份验证的 session 最终会过期,并且您与 Google 的连接将中断。此外,您应该使用 Google Analytics API .

然而,
将 session ID 存储在数据库中是不安全的。

这不是一个公认的漏洞,至少不是我所知道的。但它使它成为很多更容易攻击您的应用程序。 SQL 注入(inject)非常常见,您应该设计您的应用程序以限制任何给定漏洞造成的影响。这就是密码被散列的原因,因为它延迟了攻击者获得完全妥协的时间。存储可以立即使用的 session ID 会使针对您的应用程序的 SQL 注入(inject)漏洞更加严重。

我不确定您使用的是什么平台,但我假设您使用 Linux,因为您关心安全性 :)。我建议将用户名/密码存储在文件中。您应该调整文件的权限,例如 chmod 700 file_name ,并确保该文件归您的 Web 服务器所有:chown apache:apache file_name .如果您使用 MySQL,请确保删除 file_priv (文件权限)来自 ruby​​ 应用程序的用户帐户。文件权限真的很讨厌,因为它允许攻击者通过 sql 注入(inject)读取和写入文件。

关于security - 将 Cookie 存储在数据库中安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2675105/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com