【发布时间】:2019-08-13 06:57:16
【问题描述】:
重新创建问题的步骤:
- 使用管理员凭据登录并复制会话 cookie。
- 打开另一个浏览器,以另一个用户身份登录,粘贴管理员的会话 cookie。刷新页面。现在,你将 以管理员身份登录。
如何解决这个问题?任何建议都会有很大帮助。
尝试在 drupal 加载 cookie 会话之前使用事件订阅者获取上一个会话,但没有成功。
【问题讨论】:
标签: session drupal drupal-8 session-hijacking
重新创建问题的步骤:
如何解决这个问题?任何建议都会有很大帮助。
尝试在 drupal 加载 cookie 会话之前使用事件订阅者获取上一个会话,但没有成功。
【问题讨论】:
标签: session drupal drupal-8 session-hijacking
这不是问题,我的意思是,当然,会话劫持是一个非常大的问题 - 但标准的防御是好的。
这些是我所知道的广为人知/使用的控件:
secure 标志。这将确保它们仅通过 SSL 连接发送,默认情况下,Drupal 8 的所有 cookie 都是安全的。
BigPipe 的无 JS cookie 是个例外,请参阅 https://www.drupal.org/node/2678628 — 但那里没有安全后果。
我知道一些非常敏感的应用程序也可能存储 - 对于每个会话 - 以下附加信息:
在我看来,我不会费心检查 HTTP 用户代理或远程 IP 地址。它们不会增加太多安全性,并且会在某些情况下破坏合法使用。从安全角度来看,检查 SSL 会话 ID(SSL 会话绑定)是可以的,但实施起来可能会很痛苦,其他防御措施都很好。
如果您担心通过 XSS 窃取 Cookie,最好的防御方法是使用标准方法来避免 Web 应用程序中的 XSS 错误。请参阅 OWASP 以获取大量优秀资源。
您可以在此处找到许多为 Drupal 8 编写安全代码的最佳实践:https://www.drupal.org/docs/8/security/writing-secure-code-for-drupal-8
您还可以在 Drupal 上找到关于此的相当古老的讨论:https://www.drupal.org/project/drupal/issues/19845
【讨论】: