SpringBoot Actuator未授权访问漏洞修复详解_java

来源:脚本之家  责任编辑:小易  
目录
1.写在前面2.问题描述3.安全问题4.禁止方法5.完全禁用Actuator

1.写在前面

目前SpringBoot得框架,越来越广泛,大多数中小型企业,在开发新项目得时候。后端语言使用java得情况下,首选都会使用到SpringBoot。

在很多得一些开源得框架中,例如: ruoyi若以,这些。

不知道是出于什么原因?我们都会在这些框架中得pom文件中找到SpringBoot Actuator的依赖。

嘿,这Actuator估计很多人都没有真真实实使用过,但是就会出现在pom文件中;这样导致,在做一些安全漏洞测试的时候,会出现漏洞问题。

例如下面:

对于这些漏洞,我们开始修复喽!!!

2.问题描述

Actuator是Springboot提供的用来对应用系统进行自省和监控的功能模块,借助于Actuator开发者可以很方便地对应用系统某些监控指标进行查看、统计等。

Actuator 的核心是端点 Endpoint,它用来监视应用程序及交互,spring-boot-actuator 中已经内置了非常多的Endpoint(health、info、beans、metrics、httptrace、shutdown等等),同时也允许我们自己扩展自己的Endpoints。

每个 Endpoint 都可以启用和禁用。要远程访问 Endpoint,还必须通过 JMX 或 HTTP 进行暴露,大部分应用选择HTTP。

好了,Actuator看起来还是挺好的,可以用来监控。不过大部分企业,估计都没咋用过,也就享受不到Actuator的好处了。

Actuator在带来方便的同时,如果没有管理好,会导致一些敏感的信息泄露;可能会导致我们的服务器,被暴露到外网,服务器可能会沦陷。那我们来看一下,会出现什么安全的问题?

3.安全问题

例如,我们可以访问:

http://localhost:7200/actuator/env

看到上面的信息了吗?哇,我们居然能看到数据库连接地址,账号密码等信息。

这些地址如果不加以控制,对于一些有技术基础的人员来说,这不得是一个很严重的漏洞?估计是t0级别的漏洞了。

对于这些,我们要如何进行控制呢?

4.禁止方法

在 llsydn-dev.properties 增加配置如下

management.endpoints.web.exposure.exclude=env,heapdump,threaddump,mappings

这样 env 就被禁止访问了。

然后我们再来访问一下比如:

好了,可以看到访问就出现404了,表示已经禁了。

5.完全禁用Actuator

对于上面的修改,其实已经可以实现禁止了env的方法,也就基本上都能控制到相应的接口信息,基本上也能做到了安全。

但是在做等保安全漏洞扫描的时候,还是会扫出来响应的漏洞,那其实,还是没有解决掉这个漏洞。那我们能不能完全禁止Actuator呢?

答案,肯定是可以的!!!

例如下面这个配置:

# 完全禁用actuator
management.server.port=-1

这样配,等保做安全漏洞扫描,就不会扫描出该漏洞了!!!

嘿,再也不用担心Actuator漏洞问题!!!

以上就是SpringBoot Actuator未授权访问漏洞修复详解的详细内容,更多关于SpringBoot Actuator 漏洞修复的资料请关注真格学网其它相关文章!

您可能感兴趣的文章:SpringBoot2开启Actuator端点监控的方法SpringBoot配置actuator的代码解析springBoot-actuator项目构造中health端点工作原理SpringBootAdmin+actuator实现服务监控SpringBoot Actuator潜在的OOM问题的解决SpringBoot Actuator埋点和监控及简单使用

  • 本文相关:
  • springcloud中的feign远程调用接口传参失败问题
  • springboot整合quartz实例demo
  • java中汉字转拼音pinyin4j用法实例分析
  • springboot参数校验与国际化使用教程
  • 简单讲解java设计模式编程中的单一职责原则
  • springcloud zuul基本使用方法汇总
  • java 工具类总结目录(分享)
  • java实现的连续奇数(n+2*x)是合数的算法题暴力算法
  • mybatis?实现多层级collection嵌套
  • 详解java的mybatis框架中的事务处理
  • Spring boot 默认接口是否支持并发
  • springboot 修改 tomcat 默认连接池配置?
  • 如何使用 spring boot&47;spring cloud 实现微服务应用
  • 求《深入浅出SpringBoot2.x》全文免费下载百度网盘资源,谢谢...
  • springboot 项目resources/public下我新建了一个文件夹,为什...
  • springboot怎么启动项目
  • spring boot 为什么不支持jsp
  • 如何使用Spring Boot/Spring Cloud 实现微服务应用
  • 如何使用Spring Boot/Spring Cloud 实现微服务应用
  • myeclipse 怎么启动springboot+jsp的maven项目
  • springboot何时用war 何时用jar
  • springboot和springmvc的区别是什么ya,大姐姐。
  • Spring boot 支持JSP 配置 有没有能够运行的实例
  • springBoot 怎么实现内置tomcat配置虚拟目录
  • SpringBoot如何注解事务声明式事务
  • 用springboot写的代码怎么启动的
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全c#教程vbvb.netc 语言java编程delphijavaandroidiosswiftscala易语言汇编语言r语言其它相关首页javaspringboot2开启actuator端点监控的方法springboot配置actuator的代码解析springboot-actuator项目构造中health端点工作原理springbootadmin+actuator实现服务监控springboot actuator潜在的oom问题的解决springboot actuator埋点和监控及简单使用springcloud中的feign远程调用接口传参失败问题springboot整合quartz实例demojava中汉字转拼音pinyin4j用法实例分析springboot参数校验与国际化使用教程简单讲解java设计模式编程中的单一职责原则springcloud zuul基本使用方法汇总java 工具类总结目录(分享)java实现的连续奇数(n+2*x)是合数的算法题暴力算法mybatis?实现多层级collection嵌套详解java的mybatis框架中的事务处理intellij idea 2020最新intellij?idea?2020.2.3永久破解激活java使double保留两位小数的多方法 java保留两位idea2021.2永久激活码最新超详细(激活到2099)idea 2020版本最新破解教程可激活至2089java8 十大新特性详解2020.2 intellij ideajava.net.socketexception: connidea?2020.3最新永久激活码(免费激活到?209java写入文件的几种方法分享java获取文件夹下所有文件名称的方法示例eclipse自定义启动画面和图标的方法介绍java自定义scanner类似功能类的实例讲解将本地的jar包打到maven的仓库中实例java根据list内对象的属性排序方法idea创建springboot项目和springcloud项目的详细教程mybatis接收以逗号分隔的字符串批量查询方式java定时任务的实现方法maven依赖版本没有按照最短路径原则生效的解决方案浅谈action+service +dao 功能
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved