spring actuator 高危漏洞整改方案

在绿盟的安全扫描中 Spring Actuator漏洞作为一个高危漏洞 该接口会暴露出我们Spring 信息,具体整改有两种方案 最初我对于调整该接口的方案是使用 nginx进行接口拦截,实际上该方案也是可行的 ,但是只针对于对外暴露的端口,绿盟在扫描内部容器漏洞的时候(可以理解为跳过nginx 直接扫描到端口) 会发生 严重 的信息泄露。至此我的方案是需要关闭该actuator 接口

测试方法: IP+端口 + 接口 访问如下节点 若非404且返回spring 信息 则判定该漏洞未修复

健康检查:通过 /actuator/health 端点,可以检查应用程序的健康状态。
信息端点:通过 /actuator/info 端点,可以获取应用程序的自定义信息。 建议关闭
度量指标:通过 /actuator/metrics 端点,可以获取应用程序的各种度量指标,如内存使用情况、线程数等。 建议关闭
环境信息:通过 /actuator/env 端点,可以获取应用程序的环境配置信息。 建议关闭
映射信息:通过 /actuator/mappings 端点,可以获取应用程序的所有请求映射信息。 建议关闭

内部关闭的方案有两种

  1. 通过代码的形式实现对接口访问的限制
  2. 通过Nacos配置的形式关闭(本文采用该方案)

解决方案

# 直接禁用actuator接口配置
management:
  server:
    port: -1

遇到问题:
网上有很多方案是这样的
在这里插入图片描述
这是旧版本的写法
会导致非常邪门的错误,后续读取不到Nacos的配置等,(ps: 我使用的版本是SpringBoot 2.3.7 )

09:58:55.777 [http-nio-9203-exec-8] WARN  o.s.w.s.r.ResourceHttpRequestHandler - [isInvalidPath,738] - "Path with "WEB-INF" or "META-INF": [portal/WEB-INF/config/spring/applicationContext-datasource.xml]"
09:58:55.777 [http-nio-9203-exec-8] ERROR o.a.c.c.C.[.[localhost] - [log,175] - Exception Processing ErrorPage[errorCode=0, location=/error]
java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getHttpServletMapping()Ljavax/servlet/http/HttpServletMapping;
	at org.apache.catalina.core.ApplicationHttpRequest.setRequest(ApplicationHttpRequest.java:714)
	at org.apache.catalina.core.ApplicationHttpRequest.<init>(ApplicationHttpRequest.java:113)
	at org.apache.catalina.core.ApplicationDispatcher.wrapRequest(ApplicationDispatcher.java:920)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:359)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:313)
	at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:403)
	at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:249)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
	at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:769)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:889)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1743)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值