网站的localstorage值是否可以被xss(跨站点脚本)覆盖?据我在chrome和firefox中验证,网站的本地存储价值不能被其他网站访问。谁能告诉我是否可以通过xss从浏览器中的其他域读取/写入localstorage值?
答案 0 :(得分:2)
现在有很多网站,为分析,A / B测试,营销工具,热图和...添加第三方js库你可能确定你的代码,但如果其中一个脚本容易受到攻击,那么你应该期待XSS攻击很容易,在这种情况下,它可以抓住你的localStorage。不要将本地存储用于会话标识符或敏感令牌。坚持使用cookies并使用HTTPOnly
和安全标志。为防止对Cookie进行CSRF攻击,几乎所有请求都包含以下一项或两项:Origin
标头和Referer
标头。通过检查API中的HTTP Referer和Origin标头可以部分阻止CSRF。 CSRF攻击将具有与您的应用程序无关的Referer和Origin标头。
答案 1 :(得分:1)
来自反映的XSS或类似的Javascript可以执行JS在XSS所在的域上可以执行的任何操作。因此,如果example.com在localStorage中存储了内容,而example.com也存在XSS漏洞,则可以使用XSS vuln来提取或覆盖localStorage中的用户数据。您甚至可以使用反射的XSS,它使用来自localStorage的数据来利用基于DOM的XSS,这意味着客户端持久的XSS。
答案 2 :(得分:0)
网络存储(本地和会话)遵循single origin policy。因此,XSS无法访问Web存储。