SSD安全公告-思科UCS平台模拟器远程代

Credit to Author: SSD / Maor Schwartz| Date: Tue, 14 Nov 2017 12:27:06 +0000

Want to get paid for a vulnerability similar to this one?
Contact us at: sxsxdx@xbxexyxoxnxdxsxexcxuxrxixtxy.xcom
See our full scope at: https://blogs.securiteam.com/index.php/product_scope

漏洞概要
以下安全公告描述了在思科UCS平台模拟器3.1(2ePE1)中发现的两个远程代码执行漏洞。

思科UCS平台模拟器是捆绑到虚拟机(VM)中的Cisco UCS Manager应用程序,VM包含模拟思科统一计算系统(Cisco UCS)硬件通信的软件,思科统一计算系统(Cisco UCS)硬件由思科UCS Manager配置和管理。 例如,你可以使用思科UCS平台模拟器来创建和测试支持的思科UCS配置,或者复制现有的思科UCS环境,以进行故障排除或开发。

在思科UCS平台模拟器中发现的漏洞是:

  • 未经验证的远程代码执行漏洞
  • 经认证的远程代码执行漏洞

一名独立的安全研究者向 Beyond Security 的 SSD 报告了该漏洞。

厂商响应
厂商已经发布了该漏洞的补丁,并发布以下CVE: CVE-2017-12243

漏洞详细信息

未经验证的远程代码执行漏洞
由于用户的输入在传递给IP/settings/ping函数时没有进行充分的过滤,导致未经身份验证的攻击者可以通过ping_NUM和ping_IP_ADDR参数注入命令,这些命令将在远程机器上以root身份执行。

漏洞证明

通过发送以上请求之一后,思科 UCS响应如下:

经认证的远程代码执行漏洞

思科UCS平台模拟器容易受到格式字符串漏洞的攻击,导致远程代码执行。

思科UCS平台模拟器默认运行一个SSH服务器,通过ssh登录的用户运行以下命令:

得到下面的响应:

可以看到,通过执行ssh“show sel %x”命令,我们用libsamvsh.so中的system函数覆写了_ZN7clidcos15CommandEmulator16cli_param_filterEPKc函数的入口。

漏洞证明
为了利用此漏洞,请按照以下说明操作:

使用以下用户名和密码在vm上安装ucspe(安装全部3个网卡):

  • 默认的ucspe用户:ucspe
  • 默认的ucspe密码:ucspe

运行ucspe并记下ucspe的ip地址(在控制台可以看到“Connected to IP: ….”)

在这次漏洞证明中,我们将会使用ip-192.168.1.43。

在另一台机器上打开两个终端(例如Kali)

首先,在第一个终端上执行如下操作:

  1. 创建poc目录,将poc4_ucspe_3.1.2e.py放入poc目录,然后将当前目录改为poc目录
  2. 创建fifo1:
  3. 创建输出目录:
  4. 使用从fifo1重定向的stdin运行ssh,并将stdout重定向到output/log文件:

然后,第二个终端上执行如下操作:

  1. 将当前目录更改为poc
  2. 运行 poc4_ucspe_3.1.2e.py

执行后的输出如下:

终端1

终端2

poc4_ucspe_3.1.2e.py

Print Friendly, PDF & Email

https://blogs.securiteam.com/index.php/feed