我们正在尝试为jsp Web应用程序实现xss修复。我们使用了ESAPI.validator.getValidInput方法。但这将从属性文件中获取白名单。我的问题是ESAPI中是否也有黑名单?在我们的Web应用程序中,使用了许多专用字符,并允许使用一些国际语言作为输入,因此在此处查找whilelist字符非常复杂。我想知道这种方法是否正确(使用esapi.validator.getvalidate并使用白名单)或者不是这种情况。
答案 0 :(得分:1)
不,不支持黑名单。根据Validator接口定义:
"实施必须采用"白名单"验证特定模式或字符集匹配的方法。 "黑名单"尝试识别无效或不允许字符的方法更有可能允许绕过编码或其他技巧。"
https://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Validator.html