使用 servlet 过滤器修改请求参数
2022-08-31 08:44:09
现有的 Web 应用程序正在 Tomcat 4.1 上运行。页面存在 XSS 问题,但我无法修改源代码。我决定编写一个 servlet 过滤器,以便在页面看到参数之前对其进行清理。
我想写一个像这样的过滤器类:
import java.io.*;
import javax.servlet.*;
public final class XssFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException
{
String badValue = request.getParameter("dangerousParamName");
String goodValue = sanitize(badValue);
request.setParameter("dangerousParamName", goodValue);
chain.doFilter(request, response);
}
public void destroy() {
}
public void init(FilterConfig filterConfig) {
}
}
但并不存在。ServletRequest.setParameter
在将请求向下传递到链中之前,如何更改请求参数的值?