如何在WYSIWYG中保护XSS

时间:2015-05-21 11:28:16

标签: xss htmlpurifier

我将用户输入从WYSIWYG存储到SQL数据库, 我需要保护免受XSS攻击并找到solution

自上午使用WYSIWYG并找到此solution

我的问题是哪种方法可以防范XSS我需要使用HTML Purifier

或者我可以使用这种简单的方法;

echo htmlspecialchars($string, ENT_QUOTES, 'UTF-8'); 

1 个答案:

答案 0 :(得分:1)

最好的方法取决于您的用例。如果您使用htmlspecialchars(),那么如果您的用户在WYSIWYG中输入粗体文字,它将在您的页面上显示为<b>bold text</b><strong>bold text</strong>。这可能不是你想要的。

如果您确实想从WYSIWYG输出格式化文本,则需要清理HTML输入。 HTML Purifier是一个很好的选择,并且很容易设置。

简而言之:这取决于您是否真的要输出格式化文本。 如果您不htmlspecialchars()会更容易,并且消耗更少的资源。既然你让用户使用所见即所得,我认为你会这样做,在这种情况下htmlspecialchars()会破坏你甚至想要实现的目标。