【发布时间】:2023-12-18 09:45:01
【问题描述】:
有很多网络应用程序,如 Facebook、Google、Slack、Quora 等,它们会在您每次访问时重新登录,但是如果它们使用 cookie 或浏览器的本地存储来存储令牌或登录信息,这些可能被第三方脚本劫持。 Web 应用程序如何实现对此的保护?
【问题讨论】:
标签: cookies web-applications local-storage xss
有很多网络应用程序,如 Facebook、Google、Slack、Quora 等,它们会在您每次访问时重新登录,但是如果它们使用 cookie 或浏览器的本地存储来存储令牌或登录信息,这些可能被第三方脚本劫持。 Web 应用程序如何实现对此的保护?
【问题讨论】:
标签: cookies web-applications local-storage xss
能够访问某个来源(例如:facebook.com)的 cookie 的脚本必须从同一来源下载,这是 same origin policy,由浏览器强制执行。
现在,正如您所提到的,这种情况的一个例外是攻击者设法在目标网站 (XSS) 中注入脚本,以便其他用户在访问该网站时执行该脚本,在这种情况下恶意脚本可以访问这些 cookie,为了防止这种情况,它引入了 HttpOnly flag,旨在使客户端脚本无法访问选定的 cookie。
【讨论】: