2009-07-06 135 views
3

我发现了一个“数据库”many XSS attacks,虽然这个列表提供了一个非常大的攻击列表,但还有其他任何不属于XML的攻击,需要注意什么以及大多数意外?XSS攻击防护

回答

3

不确定你在找什么,但是如果你想阻止你网站上的XSS攻击,我会说根本不允许HTML。如果您想允许HTML,请参阅StackOverflow如何执行此操作。

您可能会发现其他网站遗漏了一些东西here

+0

另外...绝对不允许没有白名单方法的HTML。不要推出自己的白名单图书馆,只需使用其中一种标准图书馆。 – 2009-07-06 07:29:20

2

这是一个非常广泛的话题,需要黑客用于完成XSS的技术的详细和最新的知识。但首先你不应该信任任何用户输入。把它当作潜在的尝试来破解你的网站或破坏你的数据库。

您可以使用许多清洁工具可去除像潜在的恶意输入:

的asp.net微软反XSS库,CodePlex从HTML敏捷性包。

对于PHP你当然可以使用HTMLPurifier。这是非常好的和有能力的工具。

+0

:(下次在回答前会读取所有标签。 – TheVillageIdiot 2009-07-06 11:43:23

4

我使用HTML Purifier来允许用户在以前只输入特定的,安全的HTML到注释文本框中。它做得非常好,并且具有非常好的文档。

对于一切,就像一个简单的文本框,或选择框,将值写入页面时,我总是通过htmlentities()运行:

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

只要所有用户提交的数据总是被写入使用htmlentities()的页面不应该有XSS问题。