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

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

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

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

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

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

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

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

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

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

相关推荐
yolo_Yang5 天前
Spring Boot 整合 ShedLock 处理定时任务重复
struts
wdfk_prog5 天前
结合QBoot与HPatchLite实现高效差分升级(FOTA)
java·后端·struts
编码追梦人10 天前
基于 STM32 的智能语音唤醒与关键词识别系统设计 —— 从硬件集成到算法实现
stm32·算法·struts
百锦再12 天前
破茧成蝶:全方位解析Java学习难点与征服之路
java·python·学习·struts·kafka·maven·intellij-idea
塔能物联运维14 天前
物联网设备运维中的自动化合规性检查与策略执行机制
java·运维·物联网·struts·自动化
Moniane21 天前
时序数据库全面重构指南
java·后端·struts
weixin_456904271 个月前
工业自动化通信控制
运维·struts·自动化
道19931 个月前
50 台小型无人车与50套穿戴终端 5 公里范围内通信组网方案深度研究
java·后端·struts
亿坊电商2 个月前
物联网领域中PHP框架的最佳选择有哪些?
物联网·struts·php
lingggggaaaa2 个月前
小迪安全v2023学习笔记(八十一讲)—— 框架安全&ThinkPHP&Laravel&Struts2&SpringBoot&CVE复现
笔记·学习·struts·安全·网络安全·laravel