在web端通过管理员用户登陆后,添加了一个普通用户。
登录普通用户后可以看到网络配置页面例如网络协议配置均为灰色无法操作。
然后通过redfish使用普通用户建立会话后,用patch的方式修改网络配置ip成功了
这是不是算越权操作成功了?
在web端通过管理员用户登陆后,添加了一个普通用户。
登录普通用户后可以看到网络配置页面例如网络协议配置均为灰色无法操作。
这是不是算越权操作成功了?
答案内容由AI生成,仅供参考:
是的,这是一次典型的越权操作成功案例。
尽管 Web 界面对普通用户进行了正确的功能屏蔽,但 Redfish 接口未能执行相同的权限控制策略,导致攻击面暴露。这种“接口权限不一致”是常见的安全漏洞根源。
建议:
只有确保 所有管理通道的权限模型严格一致,才能真正实现 BMC 系统的安全闭环管理。
根据您提供的测试过程与信息,这确实构成一次成功的越权操作(权限绕过),存在明显安全风险。以下结合知识库内容进行详细分析。
Web端行为(预期权限控制)
test_wxh。Redfish接口行为(异常越权)
/SessionService/Sessions)。X-Auth-Token,并用此 Token 发起 PATCH 请求:PATCH /redfish/v1/Managers/1/EthernetInterfaces/4cd6295ac877
200 OK,表明修改生效。| 维度 | 分析 |
|---|---|
| 角色权限定义 | 在 openUBMC/BMC 系统中,普通用户不应具备网络配置的修改权限。Web UI 阻止操作,说明 UI 层面权限控制正确。 |
| 接口权限一致性缺失 | Redfish 作为北向标准接口,应与 Web UI 的权限模型保持一致。但此处普通用户可通过 Redfish 修改敏感配置,接口层未做同等权限校验。 |
| 权限变更通知机制未触发 | 根据知识库内容,如 bmc.kepler.Managers.EthernetInterfaces.Ipv4 支持 change notifications,此类变更本应伴随审计日志和权限检查,但未阻止操作。 |
结论:该操作属于“水平越权”或“接口权限绕过”漏洞,普通用户利用 Redfish 接口规避了 UI 层的权限限制,实现了本不应拥有的系统配置修改能力。
account 和 资源协作接口权限配置指导)| 角色 | 可执行操作 |
|---|---|
| 管理员 | 全部配置,包括网络、安全、用户、固件升级 |
| 操作员 | 查看状态、执行部分控制(如电源管理) |
| 普通用户 | 仅查看信息,无修改权限,尤其禁止网络、安全等核心配置修改 |
| 自定义用户 | 按需授权 |
根据描述,Web端已正确限制普通用户无法修改网络配置。
根据知识库文档《资源协作接口权限配置指导》:
BMC权限名称 ↔ Redfish PrivilegeMap 的映射关系
ReadOnly→ 对应 RedfishLogin权限(只读)BasicSetting→ 对应可修改基本设置(如 IP、主机名、时间等)NetworkMgmt→ 用于网络管理配置
同时,bmc.kepler.Managers.EthernetInterfaces.Ipv4 组件管理 IPv4 设置,其属性如:
IpModeDefaultGatewayBackupIpAddr这些属性的写权限通常应绑定至 BasicSetting 或更高权限。
问题关键:虽然 Web 界面阻止了操作,但 Redfish 接口在处理
PATCH请求时未验证当前用户是否拥有BasicSetting权限,或错误地将普通用户临时授予了该权限。
| 风险项 | 描述 |
|---|---|
| 网络中断风险 | 恶意用户修改 BMC IP 地址或网关可能导致 BMC 失联,造成远程管理不可用。 |
| 横向移动攻击面扩大 | 攻击者可通过低权限账户逐步提权或探测系统弱点。 |
| 审计失效 | 若此类操作未被记录或未标记为“越权”,将影响安全事件追溯。 |
| 合规性问题 | 不符合等保、ISO 27001 等要求中关于“权限最小化”和“接口一致性”的规定。 |
bmc.kepler.Managers.EthernetInterfaces.Ipv4 是配置接口,支持 DHCP/静态配置、主备地址切换,必须进行权限控制。“在开发北向 redfish 接口时,接口对应属性的 PrivilegeMap 按表格配置”,即权限必须与 BMC 内部权限模型对齐。
test 用户可在 Redfish 中认证,但不代表拥有写权限:
"test" 是用于测试的账号,常用于验证登录流程,非特权账户。
立即修复 Redfish 接口权限校验逻辑
所有 PATCH/POST 操作必须校验用户是否具备 BasicSetting 权限。
参考如下映射表:
| Redfish 操作路径 | 所需权限 |
|---|---|
/Managers/*/EthernetInterfaces/* |
BasicSetting |
Oem/{Vendor}/ManagementNetworkPortMembers |
BasicSetting(见评审文档) |
MTUSize 修改 |
BasicSetting(见评审文档) |
增加审计日志
PATCH 操作,包含:
统一权限模型
禁用默认/测试账户
test_wxh 此类测试账户应在生产环境中禁用或删除。定期执行安全渗透测试
是的,这是一次典型的越权操作成功案例。
尽管 Web 界面对普通用户进行了正确的功能屏蔽,但 Redfish 接口未能执行相同的权限控制策略,导致攻击面暴露。这种“接口权限不一致”是常见的安全漏洞根源。
建议:
只有确保 所有管理通道的权限模型严格一致,才能真正实现 BMC 系统的安全闭环管理。
patch操作的时候提供了 Authorization 信息,确认一下是否是普通用户呢