成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

緊急!Spring Boot安全漏洞

安全 漏洞
Spring Boot Actuator 模塊提供了 Spring Boot 生產就緒的所有功能。Actuator提供的所有接口可讓你監控應用程序各種信息并與之交互。

環境:Spring Boot 2.7.18

1. 簡介

Spring Boot Actuator 模塊提供了 Spring Boot 生產就緒的所有功能。Actuator提供的所有接口可讓你監控應用程序各種信息并與之交互。Spring Boot 包含許多內置接口,你還可以添加自定義的接口。例如,health 接口提供基本的應用程序健康信息。有關Actuator的更多介紹可以查看官方文檔,本篇文章主要講解關于在生產環境中對Actuator的使用或控制不當,可能會引發安全隱患。為了避免這些問題,我們需要謹慎配置和使用Actuator。

2. 安全漏洞

當在項目中啟用Actuator后,默認情況下我們是可以沒有限制的訪問任意一個接口的,如下配置:

management:
  endpoints:
    web:
      cors:
        allow-credentials: true
        allowed-headers: '*'
        allowed-origins: ''
      base-path: /ac
      exposure:
        include: '*'

以上配置,暴露了默認Actuator的所有接口。而這些接口中有些接口暴露的信息就非常的敏感,如:/env,/configprops,/threaddump等接口,這些接口直接會將所有信息展現出來。

/configprops接口

圖片圖片

/env接口

圖片圖片

/threaddump接口

圖片圖片

上面這些接口任其隨意訪問是有很大風險的(安全部門只要掃到你網站有這些問題都會通知你處理)尤其是上面的/configprops接口,很可能無意間就暴露了你的隱私信息。

3. 解決辦法

3.1 配置屬性

針對/configprops接口在上面的圖中你會發現對于password這樣的key系統默認會進行脫敏處理,在默認情況下springboot會對如下的key進行處理:以 "password"、"secret"、"key"、"token"、"vcap_services"、"sun.java.command "結尾的key都會被完全清除。

注意:只要是以這些key結尾的都會處理

自定義的屬性配置bean是否會處理呢?驗證如下:

@ConfigurationProperties(prefix = "pack.sys")
public class PackProperties {


  private String name ;
  private String password ;
  private String idNo ;
}
// 配置文件
pack:
  sys:
    name: pack
    password: 123123
    idNo: 11099111919919191

查看結果:

圖片圖片

password字段被自動的脫敏處理。但是對于這里的idNo我也希望能夠脫敏處理又該如何處理呢?通過修改字段名以支持SpringBoot支持的默認命名規則,你應該不會去修改字段名稱吧~!如下修改后的效果:

圖片圖片

其實完全沒有必要這樣做,SpringBoot提供了自定義key的方式

management:
  endpoint:
    configprops:
      additional-keys-to-sanitize:
      - idNo

通過上面的屬性節點,可以添加你需要處理的key。

圖片圖片

當你的key是以這種模式命名時:.*credentials.* 包含credentials時系統也會自動的進行脫敏處理

圖片圖片

此外,Spring Boot 還會對帶有以下結尾之一的key的 URI 類值的敏感部分進行脫敏:

  • address
  • addresses
  • uri
  • uris
  • url
  • urls

URI 的敏感部分使用<scheme>://<username>:<password>@<host>:<port>/格式標識。如下配置示例:

pack:
  sys:
    name: pack
    password: 123123
    idNo: 11099111919919191
    packCredentials: 66666666
    ftpUrl: ftp://pack:123456@xxxooo.pack.com/

展示結果:

圖片圖片

自動將密碼部分脫敏處理。

3.2 環境信息

對于/env接口,也是有對應的配置屬性進行配置

management:
  endpoint:
    env:
      additional-keys-to-sanitize:
      - port
      - ... 添加更多的自定義key

與配置屬性一樣通過通用的方式添加額外的key進行脫敏處理。

注意:對于env和configprops接口都有一個相同的屬性keys-to-sanitize,該屬性也可以定義你需要脫敏處理的key,該屬性有相同的默認值:password,secret,key,token,.credentials.,vcap_services,sun.java.command

3.3 自定義脫敏規則

如果你希望更多的控制脫敏規則,那么你可以通過自定義SanitizingFunction Bean。

@Component
public class PackSanitizingFunction implements SanitizingFunction {


  @Override
  public SanitizableData apply(SanitizableData data) {
    if (data.getKey().endsWith("email")) {
      return data.withValue("###") ;
    }
    return data ;
  }
}

輸出結果:

圖片圖片

3.4 其它接口安全配置

對于像/threaddump,/heapdump這樣的接口,我們要么將其禁用,要么通過Spring Security進行安全控制,如下示例通過Spring Security進行安全控制。

@Bean
SecurityFilterChain actuatorSecurityFilterChain(HttpSecurity http) throws Exception {
  http.csrf(csrf -> csrf.disable());
  http.authorizeHttpRequests().antMatchers("/ac/env").hasRole("ADMIN") ;
  http.authorizeHttpRequests().antMatchers("/ac/**").hasRole("ACTUATOR") ;
  http.authorizeHttpRequests().anyRequest().permitAll() ;
  http.formLogin(customizer -> Customizer.withDefaults()) ;
  return http.build() ;
}

基于用到了Security,你完全可以對所有的接口進行攔截控制,也就沒必要進行上面那些操作了。

責任編輯:武曉燕 來源: Spring全家桶實戰案例源碼
相關推薦

2012-04-28 14:00:06

2013-01-14 12:15:51

2014-05-04 12:58:10

安全漏洞修復補丁

2020-07-09 15:13:07

漏洞Spring ClouTomcat

2010-07-26 15:37:12

telnet安全漏洞

2014-06-03 11:36:18

2014-06-03 09:23:41

2009-09-22 10:01:19

2010-03-31 09:26:10

2015-08-21 14:55:03

2010-03-05 15:46:05

2023-12-31 09:06:08

2022-07-06 11:50:43

漏洞網絡攻擊

2020-10-09 09:52:00

漏洞分析

2009-03-07 09:59:16

2021-05-12 10:46:23

漏洞BINDDNS服務器

2011-12-26 11:22:48

2009-12-07 09:55:12

2010-09-07 14:19:29

2011-09-28 10:25:23

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产区免费视频 | 日韩精品一区二区三区免费视频 | 欧美激情综合五月色丁香小说 | 一区二区国产精品 | 国产精品综合色区在线观看 | 免费视频一区二区 | 亚洲精品永久免费 | 日本a在线 | www.久久久| 久久精品黄色 | 毛片在线视频 | 亚洲精品一区二区三区蜜桃久 | 国产精品久久久久久吹潮 | 日韩中文字幕一区二区 | 欧洲免费视频 | 国产色在线 | 羞羞网站在线免费观看 | 亚洲一区 中文字幕 | 亚洲色综合 | 久久久亚洲一区 | 久久看片 | 国内久久精品 | 久久久精品影院 | 美女露尿口视频 | 性高朝久久久久久久3小时 av一区二区三区四区 | 久久小视频 | 国产精品1区2区3区 一区中文字幕 | 国产精品亚洲一区 | 91精品国产一区二区三区 | 精品国产一区二区三区性色av | 国内久久精品 | 亚州精品天堂中文字幕 | 国产精品高潮呻吟久久 | 欧美xxxⅹ性欧美大片 | 久久伊人精品 | 亚洲精品国产a久久久久久 中文字幕一区二区三区四区五区 | 在线观看国产精品视频 | 国产精品美女 | 涩涩视频在线观看免费 | 久久久久中文字幕 | 九九在线视频 |