Struts2一次请求参数问题的记录

最近,一次前端正常请求,但后台出现请求参数值的变化,导致报错,问题如下:

从入参request中查看请求参数,是一个Json字符串,其中有个description的键值对

但是,接下来调用resquest的getParatemer() ,取值参数值时,却发现json字符串数值变了,凭空多出来一个deion的键值对,如下图:

进而导致后续的Json解析报错:

因为在代码逻辑中,未对此数值进行额外的处理逻辑,正常不会变化才对,查看getParatemer()方法的源码,发现本地有两处进行了重写:

分别进入两个对应的Fliter中:

第一个没有发现什么修改逻辑;

第二个Filer中,发现未防止Xss注入,对请求进行了处理,在图中第二个标注出,对数值中script的全文替换,导致了上述问题,json中的description被替换后就成了deion。

发现此问题后,对此替换逻辑,进行了优化(可以选判断下script边界再做替换,或者其他方法),问题解决。

相关推荐
W说编程10 小时前
STM32物联网终端实战:从传感器到云端的低功耗设计
网络·stm32·嵌入式硬件·物联网·struts
{⌐■_■}2 天前
【Viper】文件、Etcd应用配置与配置热更新,go案例
java·spring boot·struts·golang·iphone·ip·etcd
SRC_BLUE_174 天前
Apache Struts2 - 任意文件上传漏洞 - CVE-2024-53677
java·struts·apache
阿智智1 个月前
使用Struts2遇到的Context[项目名称]启动失败问题解决(Java Web学习笔记)
java·struts·context启动失败
DS小龙哥2 个月前
基于物联网疫苗冷链物流监测系统设计
物联网·struts·servlet
网宿安全演武实验室2 个月前
漏洞分析 | Apache Struts文件上传漏洞(CVE-2024-53677)
java·struts·网络安全
hwscom2 个月前
如何永久解决Apache Struts文件上传漏洞
java·服务器·struts·web安全·apache
Java Fans2 个月前
构建树莓派温湿度监测系统:从硬件到软件的完整指南
java·后端·struts
嵌入式小章2 个月前
基于STM32的IoT环境监测
java·后端·struts
mqiqe2 个月前
TDengine 集成 Telegraf
大数据·struts·tdengine