漏洞描述:
VMware vCenter Server远程代码执行漏洞CNVD-2021-12321。 VMware ESXi OpenSLP堆溢出漏洞。与ESXi宿主机处于同一网段、未经身份验证的攻击者利用该漏洞,通过向目标主机的427端口发送恶意构造请求,触发OpenSLP服务基于堆的缓冲区溢出,导致远程代码执行。
CNVD对上述漏洞的综合评级为“高危”。
二、漏洞影响范围
漏洞影响的产品版本包括:
VMware vCenter Server 6.5
VMware vCenter Server 6.7
VMware vCenter Server 7.0
VMware ESXi 6.5
VMware ESXi 6.7
VMware ESXi 7.0
步骤一:检查/store/packages/目录下是否存在vmtools.py后门文件。如果存在,建议立即删除该文件。
步骤二:检查/tmp/目录下是否存在encrypt、encrypt.sh、public.pem、motd、index.html文件,如果存在,应及时删除。
步骤四:恢复修改后的部分文件
(1)查看/usr/lib/vmware目录下的index.html文件是否为勒索信,如果是,立即删除该文件。
(2)查看/etc/目录下是否存在motd文件,如果存在,立即删除。
(1)查看ESXi的版本
方式1:登陆EXSi后台,点击帮助-关于,即可获取版本号。
方式2:访问EXSi终端,输入“vmware -vl”命令即可获取版本号。
(2)查看OpenSLP服务是否开启
访问EXSi终端,输入“chkconfig --list | grep slpd”命令即可查看OpenSLP服务是否开启。输出“slpd on”为开启,输出“slpd off”则代表未开启。
若ESXi版本在漏洞影响范围内,且OpenSLP服务开启,则可能受此漏洞影响。
漏洞加固
加固方案1:升级ESXi至如下版本
ESXi7.0 版本:升级到 ESXi70U1c-17325551 版本及以上
ESXi6.7 版本:升级到 ESXi670-202102401-SG 版本及以上
ESXi6.5 版本:升级到 ESXi650-202102101-SG 版本及以上
加固方案2:在ESXi中禁用OpenSLP服务
禁用OpenSLP属于临时解决方案,该临时解决方案存在一定风险,建议用户可根据业务系统特性审慎选择采用临时解决方案:
1、使用以下命令在 ESXi 主机上停止SLP 服务:
/etc/init.d/slpd stop
2、运行以下命令以禁用 SLP 服务且重启系统后生效:
esxcli network firewall ruleset set -r CIMSLP -e 0
chkconfig slpd off
3、运行此命令检查禁用 SLP 服务成功:
chkconfig --list | grep slpd
若输出slpd off 则禁用成功
停止SLP服务后,运行攻击脚本发现427端口已经关闭,漏洞无法进行利用。