You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

生产环境Spring Boot应用突发RequestRejectedException,需警惕应对吗?

问题解答

该异常是否值得担忧?

值得重视。6分钟内集中出现44次org.springframework.security.web.firewall.RequestRejectedException,触发原因是恶意URL字符和未授权HTTP方法,这明显是自动化扫描工具发起的探测行为——攻击者在尝试寻找系统输入漏洞、未关闭的危险HTTP方法(比如TRACE/TRACK曾被用于跨站追踪),或是测试防火墙的拦截规则。虽然当前Spring Security的防火墙已经成功拦截了这些请求,但这种集中式扫描往往是后续针对性攻击的前兆,不能掉以轻心。

加强防范的措施

  • 严格限制HTTP方法范围:
    先梳理业务实际需要的HTTP方法,从允许列表中移除未用到的方法(比如业务不需要OPTIONS或PATCH就直接删掉),进一步缩小攻击面。同时确保Spring Security配置严格生效,示例代码如下:
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
            // 业务相关授权配置
            .and()
            // 仅允许业务必需的HTTP方法
            .authorizeRequests()
            .antMatchers(HttpMethod.GET, "/api/**").permitAll()
            .antMatchers(HttpMethod.POST, "/api/**").permitAll()
            .antMatchers(HttpMethod.PUT, "/api/**").permitAll()
            .antMatchers(HttpMethod.DELETE, "/api/**").permitAll()
            .anyRequest().denyAll();
    }
    
  • 强化URL防火墙与日志记录:
    自定义RequestRejectedHandler,记录攻击请求的详细信息(IP、UA、请求路径等),同时针对高频恶意IP实现临时封禁逻辑:
    @Bean
    public RequestRejectedHandler requestRejectedHandler() {
        return (request, response, exception) -> {
            String clientIp = request.getRemoteAddr();
            log.warn("恶意请求拦截: IP={}, URL={}, 方法={}, 原因={}", 
                    clientIp, request.getRequestURI(), request.getMethod(), exception.getMessage());
            // 结合Redis实现:1小时内触发拦截超过10次的IP,临时封禁12小时
            response.sendError(HttpStatus.BAD_REQUEST.value(), "无效请求");
        };
    }
    
  • IP速率限制与黑名单:
    通过Nginx或云WAF配置单IP请求速率限制(比如单IP每分钟最多15次请求);在应用层用Redis维护黑名单,短时间内多次触发拦截的IP直接拒绝后续请求。
  • 启用Web应用防火墙(WAF):
    若部署在云环境,开启云服务商的WAF功能,它能自动识别并拦截SQL注入、XSS、恶意扫描等常见Web攻击,防护层级比应用层更全面。
  • 关闭容器危险特性:
    比如使用Tomcat时,直接禁用TRACE方法,在application.properties中添加:
    server.tomcat.allow-trace=false
    
  • 定期审计异常日志:
    每周抽查RequestRejectedException日志,关注异常请求的来源IP段、请求模式,提前发现潜在攻击趋势,必要时在网络防火墙层面封禁可疑IP段。

内容的提问来源于stack exchange,提问作者Ram

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 16:57:21