使用户提交的内容安全。在Java(JSP)中转义HTML

时间:2013-07-22 17:46:23

标签: java html jsp escaping sanitization

我想让我的网站免受XSS攻击或在评论部分提交HTML的用户。我想让HTML的所有提交“不安全”并且除了我用来强调代码通过javascript提交的一个标签(它使代码很漂亮)之外,它们都要逃脱它们。这个概念称为HTML清理。我只希望<pre>个代码是安全的。

http://en.wikipedia.org/wiki/HTML_sanitization

1 个答案:

答案 0 :(得分:1)

使用OWASP Sanitizer,您可以创建仅允许<pre>代码通过的政策:

// Define the policy.
Function<HtmlStreamEventReceiver, HtmlSanitizer.Policy> policy
    = new HtmlPolicyBuilder()
        .allowElements("pre")
        .toFactory();

// Sanitize your output.
HtmlSanitizer.sanitize(myHtml, policy.apply(myHtmlStreamRenderer));