SpringBoot实现xss拦截器代码demo:
@Component("xssInterceptor")
public class XssInterceptor extends HandlerInterceptorAdapter{
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception
{
response.addHeader("x-frame-options", "SAMEORIGIN");
String servletPath = request.getServletPath();
Map<String, String[]> parameterMap = request.getParameterMap();
//用户日志
StringBuffer log = new StringBuffer();
log.append("url:"+servletPath);
Set<Map.Entry<String,String[]>> keyset = parameterMap.entrySet();
for (Entry<String, String[]> entry : keyset) {
String[] paramvalue = entry.getValue();
if(paramvalue[0]!=""){
log.append("^");
log.append(entry.getKey());
}
}
Logger.info(log.toString());
if(InjectionDefenseManager.check(servletPath, parameterMap)){
return true;
} else {
throw new GenericException(ErrorCodes.INJECTION_MESSG);
}
}
}
本文分享了在SpringBoot中实现XSS攻击防护的具体代码案例,通过自定义拦截器检查请求参数,有效防止注入攻击,确保应用安全。
1万+

被折叠的 条评论
为什么被折叠?



