有人可以帮我实现XSSFilter

时间:2019-06-19 06:39:01

标签: aem

有人可以帮助我实现XSSFilter吗,我需要检查AEM代码中的XSS漏洞,发现其方法boolean check(ProtectionContext context, String src)是否检查了任何XSS感染的代码,但是它的上下文是什么?如果有人可以分享一些例子,那就太好了。

xssfilter=resourceResolver.adaptTo(XSSFilter.class);
String validjsonString = xssfilter.filter(jsonString);
LOGGER.debug("validjsonString:::::", validjsonString);

String[] uuidArray = getUUIDArray(validjsonString);

1 个答案:

答案 0 :(得分:0)

我假设您在这里使用的是未使用过的Sling API。在这种情况下,您缺少的ProtectionContext来自以下enum

org.apache.sling.xss.ProtectionContext

enum有两个值:

HTML_HTML_CONTENT

  

使用策略删除可能有害的HTML来转义HTML,以在元素内容(规则6和-在某种程度上为#1)内部使用

PLAIN_HTML_CONTENT

  

转义纯文本以用于HTML内容(规则1)

这些定义中提到的那些规则可以在这里找到:

http://www.owasp.org/index.php/XSS_%28Cross_Site_Scripting%29_Prevention_Cheat_Sheet

因此您可以执行以下任一操作:

xssfilter.check(ProtectionContext.HTML_HTML_CONTENT, <your-string>);
xssfilter.check(ProtectionContext.PLAIN_HTML_CONTENT, <your-string>);

请参阅:https://sling.apache.org/apidocs/sling11/org/apache/sling/xss/ProtectionContext.html#HTML_HTML_CONTENT