gpt4 book ai didi

php - XSS 基本认识

转载 作者:搜寻专家 更新时间:2023-10-31 21:36:38 26 4
gpt4 key购买 nike

我正在使用 Symfony2/Twig/Doctrine。

我正在关注我网站的安全性,尤其是防止 XSS 攻击,但我看不到我还能做些什么。

  1. 坚持不懈

    我使用 Doctrine 并始终确保用户输入安全,拒绝 HTML、网址和电子邮件地址等(如果适用,例如评论框)。我还使用 Twig(我相信它可以转义输出)。

  2. 反光

    我的理解是,任何人都可以向某人发送一封电子邮件,其中包含指向任何同样注入(inject) JavaScript 的网站的链接。那JS当然可以做任何事情。该 JS 可以将登录表单提交到任何网址,而您无能为力(除了希望愚蠢的人不要点击随机链接到我网站的登录页面)。

所以除非你能阻止JS被注入(inject),那我还能做什么呢?

我认为您无法阻止站点在另一台服务器上运行 JS 脚本(我的有效 JS 无论如何来自另一台服务器上的 CDN)并且我认为您无法阻止提交 HTML 表单到另一台服务器。

我确实相信跨域保护确实会阻止注入(inject)的 JS 调用 Ajax 请求 - 但我对此没有做任何事情,我只是认为这就是现代浏览器的工作方式。

我手里还有别的东西吗?只要我已经完成了所有其他可能的事情,这对我来说就足够了。

我想我想知道为什么当有些人以提供 XSS 保护建议为生时,我对此无能为力。也许是因为我使用 Symfony2/Twig/Doctrine?

只是寻求帮助来澄清我的理解。

最佳答案

内容安全策略通过禁止任何内联 javascript 和验证内容源来解决注入(inject) javascript 的问题。

信息:https://developer.mozilla.org/en-US/docs/Security/CSP/Using_Content_Security_Policy

浏览器支持:http://caniuse.com/contentsecuritypolicy

关于php - XSS 基本认识,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17758109/

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