openUBMC安全配置基线
更新时间: 2026/08/06
在Gitcode上查看源码

openUBMC安全配置基线

本文档提供了openUBMC固件配套运行时的安全配置基线,可以指导操作人员、运维人员进行安全配置。

规则分类ID规则分类规则子类ID规则子类规则ID规则名称风险等级规则描述风险描述修复影响检查方法取值范围推荐值缺省值是否必选项是否默认安全更新说明
C.openUBMC.G_1账号口令及认证管理C.openUBMC.G_1_1账号安全C.openUBMC.G_1_1.R_1应当设置不活跃用户的期限openUBMC正常使用,针对不活跃超过期限的用户则禁用用户不活跃的时间越长,密码被泄漏(此时该用户还感知不到已泄露)的风险就越大用户由于不活跃被禁用之后无法登录BMC,需要其他管理员用户进行解禁之后才能正常使用Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.AccountInactiveTimelimit
(OemIdentifier:可根据实际情况展示不同名称。下同)
int:
30 ~ 365 或者 0(无限制)
900
openUBMC在26.09版本提供
C.openUBMC.G_1_1.R_2应当禁止Host侧管理员操作使能openUBMC正常使用,Host管理功能关闭由于BMC支持标准IPMI命令,如果在开启IPMI功能场景下Host侧可免密进行BMC管理员操作,造成密码泄漏Host侧无法进行BMC管理员操作,标准IPMI命令中管理员相关命令无法使用Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.OSAdministratorPrivilegeEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_1_1.R_3建议删除出厂默认用户openUBMC初次登录之后通过默认管理员新建管理员用户,然后使用新建管理员用户登录BMC之后删除默认的管理员用户出厂自带的管理员用户和密码在用户使用指南中明文给出,忘记修改密码则会造成信息泄漏默认用户无法登录Redfish资源:https://device_ip/redfish/v1/AccountService/Accounts
查询属性:Members
遍历查询各个对象的Name属性,查看是否存在Administrator
有/无
(新增管理员用户,并且使用新管理员用户登录之后删除默认用户)

openUBMC在26.09版本提供
C.openUBMC.G_1_1.R_4避免设置逃生用户openUBMC正常使用并且配置逃生用户逃生用户会逃避上述安全项检查(比如无密码过期以及不参与不活跃统计),会存在逃生用户长时间不操作导致密码泄漏风险Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.EmergencyLoginUser
已存在用户的用户名,或者为空字符串空字符串空字符串
openUBMC在26.09版本提供
C.openUBMC.G_1_1.R_5应当禁止Host侧用户管理使能openUBMC正常使用,Host管理功能关闭
由于BMC支持标准IPMI命令,如果在开启IPMI功能场景下Host侧可免密进行用户管理操作。如创建用户、修改用户账号密码和修改用户权限操作Host侧无法进行BMC用户操作,标准IPMI命令user子命令无法使用Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.OSUserManagementEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_1_1.R_6建议设置用户登录方式用户登录时限制本地登录或远程登录不存在相应的本地用户或远程用户会导致BMC无法登录无法登录到BMCRedfish资源:
https://device_ip/redfish/v1/AccountService
查询属性:LocalAccountAuth
只允许本地登录:Enabled
先远程登录再本地登录:Fallback
先本地登录再远程登录:LocalFirst
LocalFirstLocalFirst
openUBMC在26.09版本提供
C.openUBMC.G_1_2口令安全C.openUBMC.G_1_2.R_1新建用户确保初始密码强制修改管理员新创建的用户,首次登录策略选择强制修改密码用户密码被多人持有,因此泄漏的风险很大Redfish资源:https://device_ip/redfish/v1/AccountService/Accounts/account_id
查询属性:Oem.{OemIdentifier}.FirstLoginPolicy
提示修改密码:PromptPasswordReset
强制修改密码:ForcePasswordReset
ForcePasswordResetForcePasswordReset
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_2应当设置密码有效期openUBMC用户正常使用过程中,应该定期修改密码密码使用时间越长,则泄漏或者被破解的风险就越大Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.PasswordValidityDays
int:
1 ~ 365 或者 null(无限制)
90null(无限制)
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_3建议设置密码最短使用期openUBMC用户正常使用频繁修改密码,会造成密码更容易被猜测泄漏,以及造成操作上的不便Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.MinimumPasswordAgeDays
int:
1 ~ 365 或者 null(无限制)
如果同时有密码有效期,则距离密码有效期限不能小于10天
100null(无限制)
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_4确保设置禁用的历史密码数openUBMC用户正常使用,修改密码场景(包括管理员修改常规用户密码)新修改密码如果和历史密码有重复,则密码泄漏或者被破解的风险就增大用户修改密码时,不能和历史的密码重复Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.PreviousPasswordsDisallowedCount
int:
1 ~ 5 或者 null(无限制)
55
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_5确保开启密码复杂度检查openUBMC用户新建和修改密码复杂度低的密码更容易被破解用户修改密码或者新增用户时,密码复杂度校验失败则不允许操作Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.PasswordComplexityCheckEnabled
bool:
true:开启
false:关闭
truetrue
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_6确保开启弱密码字典检查openUBMC用户新建和修改密码位于弱口令字典的密码容易被攻击者破解用户修改密码,弱密码在弱口令字典中则不允许修改使用ipmi工具查询,ipmitool -H {IP地址} -I lanplus -U {用户名} -P {密码} -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x76 0x01 0xff,当返回:
db 07 00 01 00表示关闭,
db 07 00 01 01表示开启,
通过CLI命令ipmcset -t user -d weakpwddic -v {enabled/disabled}设置,早期机型不支持
bool:
开启:enabled
关闭:disabled
enabledenabled
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_7确保设置密码最小长度openUBMC用户新建和修改密码密码长度越小,被破解的风险就越大用户修改密码时,密码长度必须大于最小密码长度Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:MinPasswordLength
8 ~ 2088
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_8建议设置密码校验策略openUBMC用户设置密码校验策略不同的校验策略所使用的校验规则不同使用CLI命令查询:
ipmcget -t user -d passwordrulepolicy -v <AccountType>
Customized/DefaultDefaultDefault
openUBMC在26.09版本提供
C.openUBMC.G_1_2.R_9建议设置密码校验规则openUBMC用户设置密码检验规则如果设置的校验规则过于简单造成密码泄露风险用户修改密码需要满足该校验规则使用CLI命令查询:
ipmcget -t user -d passwordpattern -v <AccountType>
空字符串或正则表达式空字符串(BMC默认配置)空字符串(BMC默认配置)
openUBMC在26.09版本提供
C.openUBMC.G_1_3认证管理C.openUBMC.G_1_3.R_1确保设置登录失败锁定次数openUBMC正常使用,针对频繁登录鉴权失败进行锁定限制不设置则会被暴力破解利用,造成用户密码破解用户鉴权失败达到此条所描述限制之后需要等待锁定时长之后再行登录,或者联系正确的管理员用户进行解锁Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:AccountLockoutThreshold
无限制,1 ~ 655
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_2确保设置登录失败锁定时长openUBMC正常使用,针对频繁登录鉴权失败进行锁定限制设置时长太短或者不设置则会被暴力破解利用,造成用户密码破解用户鉴权失败达到限制之后需要等待此条所述锁定时长之后再行登录,或者联系正确的管理员用户进行解锁Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:AccountLockoutDuration
60 ~ 1800 秒300秒300秒
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_3应当设置登录时间规则openUBMC正常使用,低峰时间对系统进行保护,限制登录对于使用低峰时间,由于潜在风险感知慢,处理不及时限制可以登录的具体时间范围Redfish资源:https://device_ip/redfish/v1/Managers/1
查询属性:Oem.{OemIdentifier}.LoginRule
遍历数组中查找StartTimeEndTime
1970 ~ 2050按照实际情况进行配置
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_4应当设置登录IP规则openUBMC正常使用,限制仅信任IP登录,对系统进行保护防止用户密码泄漏情况下通过不信任IP登录破坏系统限制可以登录的IPRedfish资源:https://device_ip/redfish/v1/Managers/1
查询属性:Oem.{OemIdentifier}.LoginRule
遍历数组中查找IP
IP mask:1 ~ 32按照实际情况进行配置
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_5应当设置登录设备MAC规则openUBMC正常使用,限制仅信任设备登录,对系统进行保护防止用户密码泄漏情况下通过不信任设备登录破坏系统限制可以登录的设备Redfish资源:https://device_ip/redfish/v1/Managers/1
查询属性:Oem.{OemIdentifier}.LoginRule
遍历数组中查找Mac
具体的MAC或者MAC地址前三段按照实际情况进行配置
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_6确保设置登录的安全横幅openUBMC正常使用设置不当的带有设备或者使用协议的敏感信息,容易给破坏者提供破坏线索Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.SecurityBanner
任意字符串按照实际情况进行配置字符串:WARNING! (后续内容省略)
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_7建议关闭LDAP认证建议关闭LDAP认证LDAP服务开启,则LDAP服务器可能被攻击,并且返回给BMC伪造的鉴权结果Redfish资源:https://device_ip/redfish/v1/AccountService/LdapService
操作类型:GET
属性:LdapServiceEnabled
bool:
开启:true
关闭:false
falsefalse
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_8建议开启LDAP证书认证openUBMC正常使用,LDAP服务开启LDAP服务身份如果不进行认证,则不信任的服务会发送鉴权结果给BMC开启之后对应的LDAP服务器会进行身份验证,验证不通过则无法通过该LDAP服务登录BMCRedfish资源:https://device_ip/redfish/v1/AccountService/LdapService/LdapControllers/1
查询属性:CertificateVerificationEnabled
bool:
开启:true
关闭:false
truefalse
openUBMC在26.09版本提供
C.openUBMC.G_1_3.R_9LDAP证书校验级别应当为Demand此项在建议仅在开启LDAP证书认证项为true和使用LDAP认证为true时有意义,LDAP证书校验级别应当为DemandLDAP服务身份方式如果不为Demand,则身份验证过程不会使用证书和TLS连接,通信数据会有泄漏风险开启Demand方式之后BMC会进行校验LDAP服务身份,并且建立TLS通道Redfish资源:https://device_ip/redfish/v1/AccountService/LdapService/LdapControllers/1
查询属性:CertificateVerificationLevel
Demand/AllowDemandDemand
openUBMC在26.09版本提供
C.openUBMC.G_2证书配置C.openUBMC.G_2_1证书配置C.openUBMC.G_2_1.R_1建议证书过期告警时间正确配置openUBMC正常使用,BMC中正确导入证书证书过期没有告警,则会造成通过证书认证的服务工作异常,无法进行认证对于达到告警门限的证书,BMC中产生对应的告警Redfish资源:https://device_ip/redfish/v1/AccountService
操作类型:GET
属性:Oem.{OemIdentifier}.CertificateOverdueWarningTime
int:
证书过期提前预警时间(天):7~180
7~18090
openUBMC在26.09版本提供
C.openUBMC.G_3网络通信安全C.openUBMC.G_3_1SSHC.openUBMC.G_3_1.R_1若无业务需求,应当关闭SSH服务openUBMC正常使用中,如果没有需求使用SSH服务,则关闭该服务SSH服务开启之后,有SSH服务以及端口的攻击风险SSH客户端无法登录BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:SSH.ProtocolEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_3_1.R_2建议设置安全的SSH 加密算法SSH服务开启时,此条存在意义,在通过SSH登录BMC时生效如果使用不安全的加密算法,则会存在潜在的可利用漏洞,造成数据泄漏SSH客户端如果不支持对应的加密算法,则无法通过SSH访问BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/SecurityService
操作类型:GET
属性:SSHCiphers
bool:
开启:true
关闭:false
SSHCiphers.aes128-ctrEnabled:true
SSHCiphers.aes192-ctrEnabled:true
SSHCiphers.aes256-ctrEnabled:true
SSHCiphers.aes128-gcm@openssh.comEnabled:true
SSHCiphers.aes256-gcm@openssh.comEnabled:true
SSHCiphers.chacha20-poly1305@openssh.comEnabled:true
SSHCiphers.aes128-ctrEnabled:true
SSHCiphers.aes192-ctrEnabled:true
SSHCiphers.aes256-ctrEnabled:true
SSHCiphers.aes128-gcm@openssh.comEnabled:true
SSHCiphers.aes256-gcm@openssh.comEnabled:true
SSHCiphers.chacha20-poly1305@openssh.comEnabled:true

openUBMC在26.09版本提供
C.openUBMC.G_3_1.R_3建议设置安全的SSH 密钥交换算法SSH服务开启时,此条存在意义,在通过SSH登录BMC时生效如果使用不安全的密钥交换算法,则会存在潜在的可利用漏洞,造成数据被篡改或者泄漏SSH客户端如果不支持对应的密钥交换算法,则无法通过SSH访问BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/SecurityService
操作类型:GET
属性:SSHKexAlgorithms
bool:
开启:true
关闭:false
SSHKexAlgorithms.curve25519-sha256Enabled: true
SSHKexAlgorithms.curve25519-sha256@libssh.orgEnabled: true
SSHKexAlgorithms.diffie-hellman-group-exchange-sha256Enabled: false
SSHKexAlgorithms.diffie-hellman-group14-sha1Enabled: false
SSHKexAlgorithms.diffie-hellman-group16-sha512Enabled: false
SSHKexAlgorithms.diffie-hellman-group18-sha512Enabled: false
SSHKexAlgorithms.diffie-hellman-group-exchange-sha1Enabled: false
SSHKexAlgorithms.curve25519-sha256Enabled: true
SSHKexAlgorithms.curve25519-sha256@libssh.orgEnabled: true
SSHKexAlgorithms.diffie-hellman-group-exchange-sha256Enabled: false
SSHKexAlgorithms.diffie-hellman-group14-sha1Enabled: false
SSHKexAlgorithms.diffie-hellman-group16-sha512Enabled: false
SSHKexAlgorithms.diffie-hellman-group18-sha512Enabled: false
SSHKexAlgorithms.diffie-hellman-group-exchange-sha1Enabled: false

openUBMC在26.09版本提供
C.openUBMC.G_3_1.R_4建议设置安全的SSH MAC算法SSH服务开启时,此条存在意义,在通过SSH登录BMC时生效如果使用不安全的MAC算法,则会存在潜在的可利用漏洞,造成数据被篡改或者泄漏SSH客户端如果不支持对应的MAC算法,则无法通过SSH访问BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/SecurityService
操作类型:GET
属性:SSHMACs
bool:
开启:true
关闭:false
SSHMACs.hmac-sha2-512Enabled:true
SSHMACs.hmac-sha2-512-etm@openssh.comEnabled:true
SSHMACs.hmac-sha2-256Enabled:true
SSHMACs.hmac-sha2-256-etm@openssh.comEnabled:true
SSHMACs.hmac-sha2-512Enabled:true
SSHMACs.hmac-sha2-512-etm@openssh.comEnabled:true
SSHMACs.hmac-sha2-256Enabled:true
SSHMACs.hmac-sha2-256-etm@openssh.comEnabled:true

openUBMC在26.09版本提供
C.openUBMC.G_3_1.R_5建议设置安全的SSH Hostkey算法通过SSH登录BMC如果使用不安全的密钥交换算法,则会存在潜在的可利用漏洞,造成伪造攻击和数据泄漏SSH客户端如果不支持对应的Hostkey算法,则无法通过SSH登录BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/SecurityService
查询属性:SSHHostKeyAlgorithms
bool:
开启:true
关闭:false
SSHHostKeyAlgorithms.ssh-ed25519Enabled:true
SSHHostKeyAlgorithms.ssh-ed25519-cert-v01@openssh.comEnabled:true
SSHHostKeyAlgorithms.ecdsa-sha2-nistp256Enabled:true
SSHHostKeyAlgorithms.ecdsa-sha2-nistp384Enabled:true
SSHHostKeyAlgorithms.ecdsa-sha2-nistp521Enabled:true
SSHHostKeyAlgorithms.rsa-sha2-256Enabled:true
SSHHostKeyAlgorithms.rsa-sha2-512Enabled:true
SSHHostKeyAlgorithms.ssh-rsaEnabled:false
SSHHostKeyAlgorithms.ssh-rsa-cert-v01@openssh.comEnabled:false
SSHHostKeyAlgorithms.ssh-ed25519Enabled:true
SSHHostKeyAlgorithms.ssh-ed25519-cert-v01@openssh.comEnabled:true
SSHHostKeyAlgorithms.ecdsa-sha2-nistp256Enabled:true
SSHHostKeyAlgorithms.ecdsa-sha2-nistp384Enabled:true
SSHHostKeyAlgorithms.ecdsa-sha2-nistp521Enabled:true
SSHHostKeyAlgorithms.rsa-sha2-256Enabled:true
SSHHostKeyAlgorithms.rsa-sha2-512Enabled:true
SSHHostKeyAlgorithms.ssh-rsaEnabled:false
SSHHostKeyAlgorithms.ssh-rsa-cert-v01@openssh.comEnabled:false

openUBMC在26.09版本提供
C.openUBMC.G_3_1.R_6确保设置SSH会话超时通过SSH登录BMC
长时间登录并且不操作,会占用对应的会话连接,并且有被顶替操作的风险超时之后SSH连接自动断开Redfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.CLISessionTimeoutMinutes
单位:分钟
0~ 4801515
openUBMC在26.09版本提供
C.openUBMC.G_3_1.R_7应当关闭SSH 密码认证功能通过SSH登录BMC由于publickey的长度远远大于password的长度,因此被破解的风险更小关闭之后无法使用SSH通过密码登录BMCRedfish资源:https://device_ip/redfish/v1/AccountService
查询属性:Oem.{OemIdentifier}.SSHPasswordAuthenticationEnabled
bool:
开启:true
关闭:false
falsefalse
openUBMC在26.09版本提供
C.openUBMC.G_3_2TLSC.openUBMC.G_3_2.R_1建议设置TLS版本为安全版本openUBMC与客户端/第三方服务端使用TLS交互由于低版本的SSL的漏洞已经被公众熟知,因此采用低版本的SSL/TLS容易被攻击不支持对应TLS版本的客户端会无法使用HTTP协议访问BMCRedfish资源:https://device_ip/redfish/v1/AccountService
操作类型:GET
属性:Oem.{OemIdentifier}.TlsVersion
字符串数组:
同时支持TLS1.2与TLS1.3协议:["Tls1.2", "Tls1.3"]
仅支持TLS1.3协议:["Tls1.3"]
["Tls1.2", "Tls1.3"]["Tls1.2", "Tls1.3"]
openUBMC在26.09版本提供
C.openUBMC.G_3_2.R_2建议设置TLS加密套件openUBMC与客户端/第三方服务端使用TLS交互由于TLS中有些加密套件中的算法已经被破解,因此采用这些TLS加密套件很容易被攻击不支持对应TLS版本的客户端会无法使用HTTP协议访问BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/SecurityService
操作类型:GET
属性:SSLCipherSuites
bool:
开启:true
关闭:false
ECDHE-RSA-AES256-GCM-SHA384Enabled: true
ECDHE-ECDSA-AES256-GCM-SHA384Enabled: true
DHE-RSA-AES256-GCM-SHA384Enabled: false
ECDHE-RSA-AES128-GCM-SHA256Enabled: true
ECDHE-ECDSA-AES128-GCM-SHA256Enabled: true
DHE-RSA-AES128-GCM-SHA256Enabled: false
ECDHE-RSA-CHACHA20-POLY1305Enabled: true
DHE-RSA-AES128-CCMEnabled: false
DHE-RSA-AES256-CCMEnabled: false
DHE-RSA-CHACHA20-POLY1305Enabled: false
ECDHE-ECDSA-AES128-CCMEnabled: true
ECDHE-ECDSA-AES256-CCMEnabled: true
ECDHE-ECDSA-CHACHA20-POLY1305Enabled: true
TLS_CHACHA20_POLY1305_SHA256Enabled: true
TLS_AES_256_GCM_SHA384Enabled: true
TLS_AES_128_GCM_SHA256Enabled: true
ECDHE-RSA-AES256-GCM-SHA384Enabled: true
ECDHE-ECDSA-AES256-GCM-SHA384Enabled: true
DHE-RSA-AES256-GCM-SHA384Enabled: false
ECDHE-RSA-AES128-GCM-SHA256Enabled: true
ECDHE-ECDSA-AES128-GCM-SHA256Enabled: true
DHE-RSA-AES128-GCM-SHA256Enabled: false
ECDHE-RSA-CHACHA20-POLY1305Enabled: true
DHE-RSA-AES128-CCMEnabled: false
DHE-RSA-AES256-CCMEnabled: false
DHE-RSA-CHACHA20-POLY1305Enabled: false
ECDHE-ECDSA-AES128-CCMEnabled: true
ECDHE-ECDSA-AES256-CCMEnabled: true
ECDHE-ECDSA-CHACHA20-POLY1305Enabled: true
TLS_CHACHA20_POLY1305_SHA256Enabled: true
TLS_AES_256_GCM_SHA384Enabled: true
TLS_AES_128_GCM_SHA256Enabled: true

openUBMC在26.09版本提供
C.openUBMC.G_3_3HTTP/HTTPSC.openUBMC.G_3_3.R_1确保关闭HTTP服务使用HTTP协议进行BMC管理
由于HTTP协议无加密保护,因此很容易造成数据劫持/伪造/泄漏无法通过HTTP访问BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:HTTP.ProtocolEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_3_3.R_2确保设置Redfish会话超时Redfish登录BMC
长时间登录并且不操作,会占用对应的会话连接,并且有被顶替操作的风险超时之后Redfish会话自动断开Redfish资源:https://device_ip/redfish/v1/SessionService
查询属性:SessionTimeout
单位:秒
30 ~ 86400(秒)300300
openUBMC在26.09版本提供
C.openUBMC.G_3_3.R_3确保设置web会话超时HTTPS登录BMC
长时间登录并且不操作,会占用对应的会话连接,并且有被顶替操作的风险超时之后HTTPS会话自动断开Redfish资源:https://device_ip/redfish/v1/SessionService
查询属性:Oem.{OemIdentifier}.WebSessionTimeoutMinutes
单位:分钟
5 ~ 480(分钟)55
openUBMC在26.09版本提供
C.openUBMC.G_3_3.R_4确保开启HTTPS服务使用HTTP协议进行BMC管理由于HTTP协议无加密保护,因此很容易造成数据劫持/伪造/泄漏,并且建议修改默认端口,进一步降低被攻击风险只能通过HTTPS访问BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:HTTPS.ProtocolEnabled
bool:
开启:true
关闭:false
truetrue
openUBMC在26.09版本提供
C.openUBMC.G_3_3.R_5应当修改HTTPS服务默认端口使用HTTPS进行BMC管理,比如WEB/Redfish等工具默认端口被公众熟知,容易遭到攻击当前WEB登录会自动退出并且转到修改后端口重新登录BMCRedfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:HTTPS.Port
1 ~ 655351024 ~ 65535443
openUBMC在26.09版本提供
C.openUBMC.G_3_4RMCP/RMCP+C.openUBMC.G_3_4.R_1确保关闭RMCP服务openUBMC正常工作
由于RMCP已经被破解,并且风险被公众熟知,因此开启此服务,则BMC被攻击风险很高无法通过lan通道向BMC发送IPMI请求Redfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:Oem.{OemIdentifier}.IPMI.RMCPEnabled
bool:
开启:true
关闭:false
falsefalse
openUBMC在26.09版本提供
C.openUBMC.G_3_4.R_2如不使用RMCP+协议,确保关闭RMCP+服务openUBMC正常工作
由于RMCP+部分加密套件已经被破解,并且风险被公众熟知,因此开启此服务,则BMC被攻击风险很高无法通过lanplus通道向BMC发送IPMI请求Redfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:Oem.{OemIdentifier}.IPMI.RMCPPlusEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_3_4.R_3确保设置安全的RMCP+加密套件openUBMC正常工作由于RMCP+部分加密套件已经被破解,并且风险被公众熟知,因此使用默认的身份认证套件,则被攻击风险很高无法通过默认的cipher向BMC发送消息,需要使用-C参数指定套件Redfish资源:https://device_ip/redfish/v1/Managers/1/SecurityService
查询属性:RMCPCipherSuites.CipherSuite1.Enabled, RMCPCipherSuites.CipherSuite2.Enabled, RMCPCipherSuites.CipherSuite3.Enabled, RMCPCipherSuites.CipherSuite17.Enabled
bool:
开启:true
关闭:false
RMCPCipherSuites.CipherSuite1.Enabled:false RMCPCipherSuites.CipherSuite2.Enabled:false RMCPCipherSuites.CipherSuite3.Enabled:false RMCPCipherSuites.CipherSuite17.Enabled:trueRMCPCipherSuites.CipherSuite1.Enabled:false RMCPCipherSuites.CipherSuite2.Enabled:false RMCPCipherSuites.CipherSuite3.Enabled:false RMCPCipherSuites.CipherSuite17.Enabled:true
openUBMC在26.09版本提供
C.openUBMC.G_3_5SNMPC.openUBMC.G_3_5.R_1应当关闭SNMP服务openUBMC正常使用并且需要对接支持SNMP管理的上层系统
由于SNMP存在很多已知漏洞,因此不建议开启此服务关闭之后无法使用SNMP服务以及对应的Trap功能Redfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:SNMP.ProtocolEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_3_5.R_2确保设置安全的SNMP版本在SNMP服务开启情况下,确保设置安全的SNMP版本低版本SNMP协议存在已知的安全漏洞,如果使用低版本则会对BMC造成安全风险对端使用低版本的SNMP无法和BMC进行通信Redfish资源:https://device_ip/redfish/v1/Managers/1/SnmpService
操作类型:GET
属性:
SnmpV1Enabled
SnmpV2CEnabled
SnmpV3Enabled
bool:
开启:true
关闭:false
SnmpV1Enabled:false
SnmpV2CEnabled:false
SnmpV3Enabled:true
SnmpV1Enabled:false
SnmpV2CEnabled:false
SnmpV3Enabled:true

openUBMC在26.09版本提供
C.openUBMC.G_3_5.R_3确保设置SNMP用户验证算法为安全算法openUBMC启用SNMP功能,并且添加对应的SNMP用户SNMPv3身份验证算法由于安全度低,很容易被破解,对传输数据造成攻击和泄漏验证算法不匹配则身份验证失败Redfish资源:https://device_ip/redfish/v1/AccountService/Accounts/{account_id}
操作类型:GET
属性:Oem.{OemIdentifier}.SnmpV3AuthProtocol
string enum:
MD5算法:MD5
SHA算法:SHA
SHA256算法:SHA256
SHA384算法:SHA384
SHA512算法:SHA512
SHA256、SHA384、SHA512SHA256
openUBMC在26.09版本提供
C.openUBMC.G_3_5.R_4确保设置SNMP加密算法为安全算法openUBMC启用SNMP功能,并且添加对应的SNMP用户SNMPv3加密算法由于安全度低,很容易被破解,对传输数据造成攻击和泄漏加密算法不匹配则身份验证失败Redfish资源:https://device_ip/redfish/v1/AccountService/Accounts/{account_id}
操作类型:GET
属性:Oem.{OemIdentifier}.SnmpV3PrivProtocol
string enum:
DES算法:DES
AES算法:AES
AES256算法:AES256
AES、AES256AES
openUBMC在26.09版本提供
C.openUBMC.G_3_5.R_5确保设置SNMP团体名为自定义字符串设置SNMP团体名,并修改成功团体名是SNMP中的鉴权敏感信息,默认社区字符串会被利用或者破解造成安全攻击需要使用新团体名与BMC通信Redfish资源:https://device_ip/redfish/v1/Managers/1/SnmpService
设置属性:ReadOnlyCommunityReadWriteCommunity
字符串:
16 ~ 32个字符,受密码复杂度策略影响
自定义字符串默认团体名
openUBMC在26.09版本提供
C.openUBMC.G_4服务安全C.openUBMC.G_4_1Trap服务C.openUBMC.G_4_1.R_1应当关闭Trap服务openUBMC正常使用如果开启Trap功能,则会受到标准端口攻击,拦截到BMC上报的事件关闭之后事件无法通过Trap报文进行上报Redfish资源:https://device_ip/redfish/v1/Managers/1/SnmpService
查询属性:SnmpTrapNotification.ServiceEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_4_1.R_2确保设置Trap版本为SNMPv3openUBMC正常使用,Trap功能启用没有配置正确的Trap版本,则BMC上报的事件会被劫持或者篡改不支持高版本的SNMP的Trap服务器,收不到BMC上报的事件消息Redfish资源:https://device_ip/redfish/v1/Managers/1/SnmpService
查询属性:SnmpTrapNotification.TrapVersion
字符串:
SNMP V1:V1
SNMP V2C: V2C
SNMP V3:V3
V3V3
openUBMC在26.09版本提供
C.openUBMC.G_4_2Video 服务C.openUBMC.G_4_2.R_1应当关闭Video服务openUBMC运行正常,对HostOS进行运行情况屏幕截图和监控视频openUBMC收集了Host OS的屏幕,有可能造成Host OS的敏感信息收集关闭之后无法收集HostOS的屏幕截图,如果HostOS有故障则不利于问题定位解决Redfish资源:https://device_ip/redfish/v1/Managers/1/DiagnosticService
查询属性:VideoRecordingEnabledScreenShotEnabled
bool:
开启:true
关闭:false
VideoRecordingEnabled:false
ScreenShotEnabled:false
VideoRecordingEnabled:true
ScreenShotEnabled:true

openUBMC在26.09版本提供
C.openUBMC.G_4_3VNC服务C.openUBMC.G_4_3.R_1确保关闭VNC服务openUBMC运行正常,使用VNC客户端进行登录VNC的连接是已知不安全连接,使用风险高关闭之后无法使用VNCRedfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:Oem.{OemIdentifier}.VNC.ProtocolEnabled
bool:
开启:true
关闭:false
falsefalse
openUBMC在26.09版本提供
C.openUBMC.G_4_3.R_2确保设置VNC超时时间openUBMC运行正常,VNC已连接和使用VNC长时间连接和不使用,则会造成屏幕信息泄漏,或者连接被利用风险超时时间之后VNC自动断开连接Redfish资源:https://device_ip/redfish/v1/Managers/1/VncService
查询属性:SessionTimeoutMinutes
int:
无限制:0
会话超时时间1 ~ 480:1~480
1~48060
openUBMC在26.09版本提供
C.openUBMC.G_4_3.R_3应当设置VNC独立密码有效期openUBMC运行正常,VNC功能启用VNC未设置独立密码,则默认密码泄漏风险高使用独立密码登录VNC客户端Redfish资源:https://device_ip/redfish/v1/Managers/1/VncService
查询属性:PasswordValidityDays
int:
无限期:null
有效期1~365天:1~365
1~365天无限制
openUBMC在26.09版本提供
C.openUBMC.G_4_3.R_4确保设置VNC SSL加密openUBMC运行正常,VNC功能启用VNC不启用SSL加密,则所有信息明文传输,被泄漏或者劫持风险很高Redfish资源:https://device_ip/redfish/v1/Managers/1/VncService
查询属性:SSLEncryptionEnabled
bool:
开启:true
关闭:false
truetrue
openUBMC在26.09版本提供
C.openUBMC.G_4_3.R_5确保设置VNC密码openUBMC运行正常,VNC功能启用VNC未设置独立密码,则默认密码泄漏风险高使用独立密码登录VNC客户端Redfish资源:https://device_ip/redfish/v1/Managers/1/VncService
设置属性:Password
任意字符串,受密码复杂度影响自定义字符串未设置
openUBMC在26.09版本提供
C.openUBMC.G_4_4KVM 服务C.openUBMC.G_4_4.R_1应当关闭KVM服务openUBMC运行正常由于KVM监控是Host侧状态,因此当Host被破解之后,会伪造数据或者操作传递给BMC造成破坏扩散,因此建议关闭KVM服务关闭KVM之后BMC无法使用KVMRedfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:KVMIP.ProtocolEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_4_4.R_2确保设置KVM超时时间openUBMC运行正常
由于KVM监控是Host侧状态,因此当Host被破解之后,会伪造数据或者操作传递给BMC造成破坏扩散,因此在需要开启KVM服务场景去报设置KVM超时时间超时之后KVM连接自动断开Redfish资源:https://device_ip/redfish/v1/Managers/1/KvmService
查询属性:SessionTimeoutMinutes
int:
无限制:0
会话超时时间1 ~ 480分钟:1 ~ 480
6060
openUBMC在26.09版本提供
C.openUBMC.G_4_5VMM服务C.openUBMC.G_4_5.R_1应当关闭VMM服务openUBMC运行正常
由于VMM操控是Host OS状态,因此当BMC被破解之后,会伪造数据或者操作传递给业务OS造成破坏扩散,因此建议关闭VMM服务关闭之后无法使用虚拟媒体Redfish资源:https://device_ip/redfish/v1/Managers/1/NetworkProtocol
查询属性:VirtualMedia.ProtocolEnabled
bool:
开启:true
关闭:false
falsetrue
openUBMC在26.09版本提供
C.openUBMC.G_4_6时钟同步服务C.openUBMC.G_4_6.R_1应当开启NTP服务openUBMC正常使用没有配置NTP,则BMC没有对应可信的时间戳,基于时间的服务功能会有异常(比如证书校验)Redfish资源:https://device_ip/redfish/v1/Managers/1/NtpService
查询属性:ServiceEnabled
bool:
开启:true
关闭:false
truefalse
openUBMC在26.09版本提供
C.openUBMC.G_4_6.R_2应当开启NTP服务身份验证openUBMC正常使用,NTP服务启用如果没有设置NTP身份认证,则不可信NTP服务器会伪造时间进行攻击BMCRedfish资源:
操作类型:GET
https://device_ip/redfish/v1/Managers/1/NtpService
属性:
ServerAuthenticationEnabled
bool:
开启:true
关闭:false
truefalse
openUBMC在26.09版本提供
C.openUBMC.G_4_7SMTP服务C.openUBMC.G_4_7.R_1应当关闭SMTP服务openUBMC正常使用,SMTP服务启用如果开启SMTP功能,则会受到标准端口攻击,拦截到BMC上报的事件关闭之后事件无法通过Email进行上报Redfish资源:https://device_ip/redfish/v1/Managers/1/SmtpService
操作类型:GET
属性:ServiceEnabled
bool:
开启:true
关闭:false
falsefalse
openUBMC在26.09版本提供
C.openUBMC.G_4_7.R_2确保设置SMTP传输方式为TLSopenUBMC正常使用,SMTP功能启用没有开启SMTP传输TLS功能,则事件在传输过程中可能被劫持或者篡改不支持TLS传输的SMTP服务器则无法收到BMC上报的事件消息Redfish资源:https://device_ip/redfish/v1/Managers/1/SmtpService
查询属性:TLSEnabled
bool:
开启:true
关闭:false
truetrue
openUBMC在26.09版本提供
C.openUBMC.G_4_7.R_3确保配置SMTP服务器正确openUBMC正常使用,SMTP功能启用没有配置正确的邮件服务器,则BMC上报的事件会丢失或者被投递到其他危险的服务器Redfish资源:https://device_ip/redfish/v1/Managers/1/SmtpService
查询属性:ServerAddress
正确的Server地址用户自定义地址
openUBMC在26.09版本提供
C.openUBMC.G_5日志审计C.openUBMC.G_5_1Syslog服务C.openUBMC.G_5_1.R_1应当开启Syslog服务openUBMC正常使用
没有开启Syslog日志功能,则日志没有远端备份功能,本地日志破坏或者丢失的情况下无法进行审计Redfish资源:https://device_ip/redfish/v1/Managers/1/SyslogService
查询属性:ServiceEnabled
bool:
开启:true
关闭:false
truefalse
openUBMC在26.09版本提供
C.openUBMC.G_5_1.R_2确保设置Syslog传输协议为TLSopenUBMC正常使用,Syslog服务启用没有开启Syslog传输TLS功能,则日志在传输过程中可能被劫持或者篡改Redfish资源:https://device_ip/redfish/v1/Managers/1/SyslogService
操作类型:GET
属性:TransmissionProtocol
String enum:
UDP协议:UDP
TCP协议:TCP
TLS协议:TLS
TLSTLS
openUBMC在26.09版本提供
C.openUBMC.G_6云服务配置C.openUBMC.G_6_1业务面与管理面隔离(云化场景特有,其他场景无需关注)C.openUBMC.G_6_1.R_1带内IPMI命令增加白名单openUBMC正常使用,需要与业务系统隔离(参考云场景)
带内IPMI白名单,仅启用如下命令:
SetWatchdogTimer
ResetWatchdogTimer
SetBMCEnables
GetSystemInterfaceCapabilities
除基本带内通信命令外,完全禁止带内的管理命令带内无法使用BT通道发送白名单外的IPMI命令1. 开启IPMI防火墙白名单,同时清除原白名单
ipmitool -H ${server} -I lanplus -p 623 -U ${username} -P ${password} -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x4A 0x01 0x01 0x01
2. 添加白名单
# SetWatchdogTimer
ipmitool -H ${server} -I lanplus -p 623 -U ${username} -P ${password} -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x3F 0x01 0x00 0x01 0x06 0x24 0x08
# ResetWatchdogTimer
ipmitool -H ${server} -I lanplus -p 623 -U ${username} -P ${password} -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x3F 0x01 0x00 0x01 0x06 0x22 0x08
# SetBMCEnables
ipmitool -H ${server} -I lanplus -p 623 -U ${username} -P ${password} -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x3F 0x01 0x00 0x01 0x06 0x2E 0x08
# GetSystemInterfaceCapabilities
ipmitool -H ${server} -I lanplus -p 623 -U ${username} -P ${password} -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x3F 0x01 0x00 0x01 0x06 0x57 0x08
备注:
server表示openUBMC设备IP地址,username/password分别表示openUBMC管理员的用户名和密码,该命令需要通过网络侧来设置
不开启白名单限制云化场景推荐启用如下命令:
SetWatchdogTimer
ResetWatchdogTimer
SetBMCEnables
GetSystemInterfaceCapabilities
其他场景不需要配置
不开启白名单限制
openUBMC在26.09版本提供
C.openUBMC.G_6_1.R_2带内通道权限关闭openUBMC正常使用,需要与业务系统隔离(参考云场景)
关闭带内管理工具通道
关闭后,iBMA、uRest、Smart Provisioning等带内管理工具无法使用带内无法使用管理工具Redfish资源:https://device_ip/redfish/v1/Managers/1/SecurityService
属性:IPMIChannelAccess.SMSAccessRole
字符串:
Administrator
Operator
User
NoAccess
云化场景推荐配置为NoAccess,其他场景推荐配置为OperatorOperator
openUBMC在26.09版本提供
C.openUBMC.G_6_1.R_3带内管理工具网卡veth驱动关闭场景:BMC正常使用,需要与业务系统隔离(参考云场景)
关闭带内管理工具依赖的虚拟网卡
关闭后,iBMA、uRest、Smart Provisioning等带内管理工具无法使用带内无法使用管理工具Redfish资源:https://device_ip/redfish/v1/Managers/1/SmsService
属性:VethDriverEnabled
bool:
开启:true
关闭:false
云化场景推荐配置为false,其他场景推荐配置为truetrue
openUBMC在26.09版本提供

附录:修订记录

openUBMC版本号文档版本修订日期修订记录
26.091.02026/08/06初版安全配置基线发布