首页 > 其他分享 >Spring Boot 关闭 Actuator ,满足安全工具扫描

Spring Boot 关闭 Actuator ,满足安全工具扫描

时间:2023-11-27 17:22:51浏览次数:34  
标签:http Spring xxx Boot 访问 Actuator

应用被安全工具,扫描出漏洞信息

【MSS】SpringBoot Actuator敏感接口未授权访问漏洞(Actuator)事件发现通告:
发现时间:2023-11-25 19:47:17
攻击时间:2023-11-25 18:56:44
事件/告警类型:非授权访问/权限绕过
告警设备:APT
攻击IP:xxx
被攻击IP/资产信息:xxx
告警描述:SpringBoot Actuator敏感接口未授权访问漏洞(Actuator) http://xxx/actuator/
优先级:三级(一般)
处置建议:关闭或限制Actuator端口的访问权限,或升级Spring Boot版本修复漏洞。

解决方案

方法1. 修改配置

management:
  server:
    port: -1  # 修改端口,跳过安全漏洞扫描
  endpoints:
    enabled-by-default: false #关闭监控
    web:
      exposure:
        include: '*' 

image
image

方法2. 添加访问权限

通过配置 Spring Security 来限制对 Actuator 端点的访问,只为了这一个需求,添加 Spring Security 感觉有些重

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/actuator/**").hasRole("ADMIN") // 设置只有具有 ADMIN 角色的用户可以访问 Actuator 端点
                .anyRequest().permitAll()
            .and()
            .httpBasic(); // 启用基本认证
    }
}

标签:http,Spring,xxx,Boot,访问,Actuator
From: https://www.cnblogs.com/vipsoft/p/17859847.html

相关文章

  • Spring Data Redis切换底层Jedis 和 Lettuce实现
    1简介SpringDataRedis是SpringData系列的一部分,它提供了Spring应用程序对Redis的轻松配置和使用。它不仅提供了对Redis操作的高级抽象,还支持Jedis和Lettuce两种连接方式。可通过简单的配置就能连接Redis,并且可以切换Jedis和Lettuce两个连接方式。下面先来看看我们该如何使......
  • Spring Security使用拆解
    在前一篇文章《SpringSecurity使用基础》中讲到了使用SpringSecurity的基础知识,下面就对其的使用进行拆解说明1、基本原理SpringSecurity中有几个关键的对象需要我们深入理解,下图是他们间的关系首先,其核心是HttpSecurity,该对象负责对安全控制的所有方面进行配置,例如配置对哪......
  • Spring Boot项目请求日志打印
    SpringBoot项目请求日志打印接口请求日志打印效果如图,基本符合中小型项目所需直接上代码本代码中使用了hutool的工具包,需要先导入依赖<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><vers......
  • 解密Spring Cloud微服务调用:如何轻松获取请求目标方的IP和端口
    公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。目的SpringCloud线上微服务实例都是2个起步,如果出问题后,在没有ELK等日志分析平台,如何确定调用到了目标服务的那个实例,以此来排查问题效果可以看到服务有几个实例是上线,并且最终调用了那个实......
  • Spring MVC学习随笔-控制器(Controller)开发详解:接受客户端(Client)请求参数
    学习视频:孙哥说SpringMVC:结合Thymeleaf,重塑你的MVC世界!|前所未有的Web开发探索之旅第三章、SpringMVC控制器开发详解3.1核心要点......
  • 10道不得不会的SpringBoot面试题
    以下是SpringBoot面试题,相信大家都会有种及眼熟又陌生的感觉、看过可能在短暂的面试后又马上忘记了。JavaPub在这里整理这些容易忘记的重点知识及解答,建议收藏,经常温习查阅。来看看你会做几道1.为什么要用springboot?2.springboot有哪些优点?3.springboot核心配置文件是什......
  • springBoot项目启动卡在Root WebApplicationContext: initialization completed... (非
    通过源码启动排查发现,初始化连接池时创建了200次,通过配置文件中将initialSize值改为10,启动时间从1分钟变为了3秒。 ......
  • springboot 在配置文件中对敏感信息加密
    pom文件引入2.1.0版本对应springboot2.1.4release<dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><version>2.1.0</version></dependency>配......
  • Oracle 数据库存储过程调用SpringBoot API 接口方法
    数据库存储过程代码CREATEORREPLACEPROCEDUREFSMT.P_GET_HTTP_RES/*描述:存儲過程掉用HTTP接口作者:Janus日期:2023-11-23*/(M_DOC_NOINVARCHAR2,--??M_DOC_TYPEINVARCHAR2,--?据?型M_STANDBYINVARCHAR2,--?用字段M_EM......
  • springboot打印启动信息
    打印启动信息转载自:www.javaman.cn1springBean实例化流程基本流程:1、Spring容器在进行初始化时,会将xml或者annotation配置的bean的信息封装成一个BeanDefinition对象(每一个bean标签或者@bean注解都封装成一个BeanDefinition对象),所有的BeanDefinition存储到一个名为beanDefinitio......