XssHttpServletRequestWrapper不生效的问题
版本:renren-security 4.0 |
开发环境: |
第一个问题,news模块前端提交content-type 方式为application/x-www-form-urlencoded,后端XssHttpServletRequestWrapper将news的content字段内容的标签进行过滤了,本不应该过滤
第二个问题,XssHttpServletRequestWrapper中第41行 if (!MediaType.APPLICATION_JSON_VALUE.equalsIgnoreCase(super.getHeader(HttpHeaders.CONTENT_TYPE))) {
因为前端base传入的content-type为application/json;charset=UTF-8,所以这个if判断永远成立,请确认。
-
2023-09-26
1. 默认是过滤全部属性的,也就是都会过滤
2. xss需要过滤掉表单数据和json数据,如果不永久成立,那json数据就没办法过滤
-
2023-09-26
@Mark XssHttpServletRequestWrapper现在的情况是,46行包括46行往下都走不进去。public static final String APPLICATION_JSON_VALUE = "application/json"; 这个常量永远不能与前端传入的application/json;charset=UTF-8相等,到了if里就被返回了。过滤不生效。是这个意思
-
2023-09-26
@Mark 我上述的意思总结就是,现有框架代码传入的json数据,没有进行过滤。到41行的判断就被返回了。
-
2023-09-26
这个判断逻辑需要改一下,改成包含