使用系统框架中的HTML_FILTER.filter(json);方法进行过滤,发现拼接了多了个引号,导致转对象报错

Blade 未结 1 50
xMan
xMan 剑者 2024-11-05 18:32

一、该问题的重现步骤是什么?

1. HTML_FILTER.filter(json);方法进行XSS过滤,当json是这样的,   

{

    "name": "payload<img src=1 onerror=alert(0)>"

}

过滤完成变成了

{

    "name": "payload<img src="1">"

}

2. 然后不是json字符串,没法转对象,然后我自己调试了下,是这句代码加了引号,我自己去除引号,会有什么影响吗?

params += " " + paramName + "=\"" + paramValue + "\"";

3.


二、你期待的结果是什么?实际看到的又是什么?


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

bladex2.9.0 windows

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  • 2024-11-06 00:01

    不会有影响,逻辑可以自行调整。这个工具类的功能主要就是对原字符串进行xss攻击命令的过滤,在保留原有过滤逻辑后,你对过滤完的字符串进行格式定义是没有问题的。

    0 讨论(0)
提交回复