Hi All,
I am trying to write XSS filter which validate all incoming request. Then if invalid string is in request redirect to the error page. Since filter works in chain and I am using HttpServletRequestWrapper to validate I couldn't figure out how to break the chain and redirect to error page.
Filter class
Wrapper classCode:public class XssFilter implements Filter { public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { chain.doFilter(new XssRequestWrapper((HttpServletRequest)request), response); } }
How can I have send user to error page if input string is invalid?Code:public final class XssRequestWrapper extends HttpServletRequestWrapper { public String[] getParameterValues(String paramString) { //call validateValue() and return String[] } public String getParameter(String paramString) { //call validateValue() and return String } public String getHeader(String paramString) { //call validateValue() and return String } public String validateValue(String str) { // I am confuse here. I have condition. if(dotest){ return null; } else { return str; } } }
Thanks


Reply With Quote