有人可以帮助我实现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);
答案 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>);