【问题标题】:XSS Attacks Prevention [closed]XSS 攻击预防 [关闭]
【发布时间】:2010-11-08 06:51:51
【问题描述】:

我找到了一个many XSS attacks 的“数据库”,虽然这个列表提供了相当多的攻击列表,但还有其他攻击不属于 XML,需要注意什么并且最出乎意料?

【问题讨论】:

    标签: php javascript web-applications xss


    【解决方案1】:

    不确定您到底在寻找什么,但如果您想防止对您的网站进行 XSS 攻击,我会说根本不允许 HTML。如果你想允许 HTML,看看 StackOverflow 是怎么做的。

    您可能会发现其他网站遗漏的一些内容here

    【讨论】:

    • 另外...绝不允许没有白名单方法的 HTML。不要推出自己的白名单库,只需使用标准库之一即可。
    【解决方案2】:

    这是一个非常广泛的主题,需要对黑客用来完成 XSS 的技术进行详细和最新的了解。但首先你不应该相信任何用户输入。将其视为入侵您的网站或破坏您的数据库的潜在尝试。

    您可以使用许多可用的清理工具来删除潜在的恶意输入,例如:

    对于 asp.net Microsoft Anti-XSS 库,来自 codeplex 的 HTML Agility Pack。

    对于 PHP,您当然可以使用 HTMLPurifier。这是一个非常好用且功能强大的工具。

    【讨论】:

      【解决方案3】:

      我以前使用HTML Purifier 允许用户在评论文本框中只输入特定、安全的 HTML。它做得很好,并且有很好的文档。

      对于其他所有内容,例如简单的文本框或选择框,在将值写入页面时,我总是通过 htmlentities() 运行它:

      htmlentities ($_POST['email'], ENT_QUOTES);
      

      只要始终使用htmlentities() 将所有用户提交的数据写入页面,就不会出现 XSS 问题。

      【讨论】:

        猜你喜欢
        • 2022-01-08
        • 2011-02-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多