Como posso alterar o corpo da solicitação no filtro java para proteger contra ataques XSS ? Eu construo o HttpServletRequestWrapper e uso o getparameter para o corpo da mudança, mas recebo uma exceção de fechamento de stream.
Eu tenho um aplicativo JSP, Servlet, Hibernate. Nesta aplicação eu tenho um problema muito estranho. Ou seja, se a session expirou (em outras palavras, “tempo limite”) e quando o usuário clicar em um link, a página será redirecionada para a página de índice, mas depois disso o usuário não poderá efetuar login e acessar a […]
Estou usando Spring’s OncePerRequestFilter substituindo o método shouldNotFilterAsyncDispatch para retornar false. Dessa forma, ele pode manipular solicitações assíncronas. No filtro estou tentando fazer o seguinte: if (isAsyncDispatch(request)) { request.getAsyncContext().addListener(new AsyncListener() { @Override public void onComplete(AsyncEvent event) throws IOException { System.out.println(“onComplete”); } @Override public void onTimeout(AsyncEvent event) throws IOException { } @Override public void onError(AsyncEvent event) […]
Eu quero adicionar um prefixo “)]}’,\n” a todas as respostas JSON produzidas pelo servlet para evitar vulnerabilidades JSON, como o AngularJS sugere . Eu encontrei uma maneira de modificar o conteúdo da resposta . Usando a class base OncePerRequestFilter do Spring, acabei com: public class JsonArrayVulnerabilityPreventorFilter extends OncePerRequestFilter { @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse […]
Estou procurando uma biblioteca de filtros de servlet que me ajude a proteger nosso serviço da Web contra uso não autorizado e DDoS. Temos “clientes autorizados” para nosso serviço da Web, então, idealmente, o filtro ajudaria a detectar clientes que não são autorizados ou se comportam de maneira inadequada ou detectam várias pessoas usando a […]
É possível mapear URLs para servlets (talvez algo específico com o Tomcat) para que as duas URLs seguintes (com {id} sendo variables recuperáveis do código), /users/{id}/a /users/{id}/b mapear para dois servlets diferentes, ou terei que implementar algum tipo de filtro para um servlet mapeado para /users/* ? Para ser mais claro, qualquer URL com o […]
Nós temos a class SecurityFilter em nosso aplicativo implementando o Filter e nosso método doFilter se parece com isso. public void doFilter(ServletRequest sres, ServletResponse sreq, FilterChain chain) throws IOException, ServletException { LOGGER.debug(Logger.buildLogMessage(“Starting SecurityFilter.doFilter”)); HttpServletRequest request = (HttpServletRequest) sres; HttpServletResponse response = (HttpServletResponse) sreq; HttpSession session = request.getSession(); Nós temos a seguinte input em nosso web.xml […]
Eu tenho um filtro que autentica / autoriza chamadas REST. Esses filtros precisam acessar os parâmetros de solicitação, por isso escrevi um HTTPServletRequestWrapper customizado para isso. import java.util.Collections; import java.util.Enumeration; import java.util.HashMap; import java.util.Map; import javax.servlet.ServletRequest; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; public class WrapperRequest extends HttpServletRequestWrapper { private Map requestParams = null; public WrapperRequest(final ServletRequest request) […]
É possível usar dois filtros com o mesmo mapeamento de URL? TeeFilter filter1r TeeFilter /* CredentialsFilter CredentialsFilter filter2 CredentialsFilter /*
É possível passar alguns dados no header HTTP, ao redirect uma solicitação de um servidor para outro. Aqui está o meu cenário , eu tenho um filtro genérico, através do qual cada pedido está passando. Agora, com base em alguma condição, estou redirecionando a solicitação para algum servidor diferente usando a API objHttpServletResponse.sendRedirect(strURL) . Mas, […]