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

Java Spring应用路径型漏洞修复方案咨询(基于Qualys扫描报告)

修复Java Spring应用路径型漏洞(WASC-15/16/17)的具体方案

针对你提到的Qualys扫描出的Java Spring应用的三个路径相关漏洞——WASC-15(应用配置错误)、WASC-16(目录索引)、WASC-17(文件系统权限不当),结合扫描给出的CVSS评分(基础2.1、时间1.9)和潜在风险,我整理了一套针对性的修复措施,帮你彻底解决这些问题:

一、修复WASC-15:应用配置错误

  • 先检查你的application.properties或application.yml配置文件,排查是否有过度开放的资源访问规则——比如是不是把Spring MVC的静态资源映射设成了/**,这会导致所有路径都被当作静态资源访问,很容易暴露敏感目录。正确的做法是限定到具体的静态资源目录,比如:
    spring.mvc.static-path-pattern=/static/**
    
  • 务必关闭Spring Boot的debug和trace模式,这俩模式会泄露大量应用内部配置细节,完全没必要在生产环境开启:
    debug=false
    trace=false
    
  • 验证Spring Security的拦截规则,确保/WEB-INF/、配置文件存放目录这类敏感路径没有被误设为可公开访问。

二、修复WASC-16:目录索引

  • 首先禁用Web服务器的目录列表功能:
    • 如果用的是Spring Boot内嵌Tomcat,直接加一行配置就能搞定:
      server.tomcat.dir-enabled=false
      
    • 要是部署在独立的Tomcat或Jetty上,去修改对应的服务器配置文件(比如Tomcat的context.xml),把listings属性设为false。
  • 在应用的每个目录下都放一个自定义的index.html或index.jsp,这样就算用户访问目录路径,也只会看到你指定的页面,不会展示目录里的文件列表。
  • 还可以通过Spring Security直接拦截空目录的访问请求,比如在配置类里加这么一段:
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests()
            .antMatchers("/**/").denyAll(); // 禁止访问所有以/结尾的目录路径
    }
    

三、修复WASC-17:文件系统权限不当

  • 调整应用运行用户的权限:绝对不要用root或管理员身份跑Spring应用,给运行用户分配最小必要权限——比如只能访问应用部署目录、临时文件目录,禁止碰系统级的敏感目录(像/etc/、用户主目录)。
  • 给敏感文件(比如配置文件、密钥文件)设置严格的权限:在Linux系统下,你可以用这两条命令把权限锁死,只有应用用户能读写:
    chmod 600 application.properties
    chown appuser:appgroup application.properties
    
  • 检查应用里的文件操作逻辑,确保所有文件读写操作都是用运行用户的权限执行的,不要硬编码高权限用户去操作文件。

关于威胁与影响的补充

扫描报告提到的“Web服务器上发现潜在敏感文件、目录或目录列表”的威胁,以及“可能泄露敏感信息”的影响,上面的措施正是从配置收紧、访问拦截、权限加固三个核心方向来阻断风险的,确保敏感内容不会被未授权访问。

修复完成后,记得重新跑一遍Qualys扫描验证漏洞是否已消除,另外建议定期审计应用配置和文件权限,避免后续部署或配置变更时再次踩坑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:17:32