界: Security Features

软件安全不是安全软件。此处我们关注的主题包括身份验证、Access Control、机密性、加密和权限管理。

Spring Boot Misconfiguration: Admin MBean Enabled

Abstract
配置 Spring Boot 应用程序公开管理 MBean。
Explanation
Spring Boot 允许开发人员通过指定 spring.application.admin.enabled 属性为应用程序启用管理员相关功能。这样会在 MBeanServer 平台上公开 SpringApplicationAdminMXBean。开发人员可以使用此功能远程管理 Spring Boot 应用程序,但此功能会以远程 JMX 端点的形式扩大攻击面。根据 MBeanServer 配置的不同,可能本地或远程公开 MBean,可能需要(也可能不需要)身份验证。最糟糕的情况是,攻击者将可以远程管理应用程序,包括在未经身份验证的情况下关闭应用程序。最理想的情况是,服务将与用于保护服务器的凭据一样强大。

注意:如果使用容易受到 CVE-2016-3427 漏洞影响的 JRE 版本(已在 Java 8 Update 91 中修复,2016 年 4 月),攻击者可将任意序列化 Java 对象作为凭据传递,因而可能在远程 JVM 进行反序列化时执行任意代码。
References
[1] Spring Boot Reference Guide Spring
[2] Standards Mapping - General Data Protection Regulation (GDPR) Indirect Access to Sensitive Data
[3] Standards Mapping - OWASP API 2023 API8 Security Misconfiguration
[4] Standards Mapping - OWASP Mobile 2014 M1 Weak Server Side Controls
[5] Standards Mapping - OWASP Top 10 2010 A6 Security Misconfiguration
[6] Standards Mapping - OWASP Top 10 2013 A5 Security Misconfiguration
[7] Standards Mapping - OWASP Top 10 2017 A6 Security Misconfiguration
[8] Standards Mapping - OWASP Top 10 2021 A05 Security Misconfiguration
[9] Standards Mapping - Payment Card Industry Data Security Standard Version 4.0 Requirement 7.3.1
[10] Standards Mapping - Payment Card Industry Data Security Standard Version 4.0.1 Requirement 7.3.1
[11] Standards Mapping - Web Application Security Consortium Version 2.00 Application Misconfiguration (WASC-15)
desc.config.java.spring_boot_misconfiguration_admin_mbean_enabled