浅谈企业虚拟化环境的安全风险与渗透测试方法

发表于:2018-4-09 11:37

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:ipenox    来源:freebuf

  前言
  类似于VMware这样的服务器虚拟化技术出现以来,极大地提升了企业数据中心的建设效率、运维弹性以及经济效益。回想起十来年前,我们想要部署一个新系统时,首先需要申请采购服务器,到货后还需要自己搬到机房里,找到位置安装到机架上,然后加电、跳网线、安装操作系统,等到最终能够ping通新服务器的IP时,时间往往已经过去了好几个月。而在数据中心全面推进虚拟化之后,这过程变得很轻松:需要多少台机器,我只需要在私有“云”管理平台上提一个申请单,平台管理员审批之后,就开始自动部署你需要的虚拟机,整个过程最快几乎达到了小时的级别。
  在享受着虚拟化的诸多好处的同时,我们可能还没有意识到,随着虚拟化技术的大规模应用,企业数据中心的基础架构、运行维护、组织管理等都已经发生了大变化,所面临的安全风险也已不同于往日了。
  传统环境与虚拟化环境对比
  让我们拿渗透测试人员都喜欢挑战的域控制器来做例子。在以前,域控在网络中的位置和逻辑关系是下图这样的:
  *图1:传统的部署示意图,DC指域控制器Domain Controller,SA指服务器自动化(Server Automation)系统。
  域控装在独立的物理服务器上,域管理员清楚地知道它们在机房里的位置,为它们设置复杂的操作系统密码并小心地保管,第一时间打上微软的补丁,用严格的规范管理用户和权限,敏感地注意着服务器和自己终端上的任何风吹草动。这时候的域控像个坚固的堡垒,要想从网络中成功地渗透,其实是非常困难的。
  而在使用VMware虚拟化之后,典型的部署场景是这样的:
  *图2:虚拟化部署示意图,VM指虚拟机Virtual Machine,VCenter 指vSphere Center,vSAN指虚拟存储,DC指域控制器。
  在物理服务器上安装的都是VMware ESXi系统,通过VCenter集中管理所有的虚拟机资源。为了给其它人员提供便捷的资源申请途径,很可能部署了某种“云”管理系统,通过一个Web Portal给内部用户提供访问入口,通过自动化部署后台(Auto Deployment)与VMware的接口互动实现虚拟机资源的分配、变更与回收等操作。而无论是域控DC,还是VCenter,抑或是“云”管理平台,它们都是虚拟资源池中的一个普通的VM而已。
  再来看此时的域控DC:域管理员无法确知它的CPU和内存运行在哪台物理服务器上,不知道它的磁盘放在哪个存储上,不知道TCP/IP报文会从哪根网线上流过,更不知道在虚拟的世界里有没有其它人对它做过什么手脚。此时即使管理员还是如以前一样严丝密缝地守护着DC服务器,恐怕也要在心里嘀咕着它是否还与以往一样坚固不可侵犯吧?
  虚拟化环境风险的分层解析
  让我们思考一下虚拟化给企业数据中心带来的运维环境的变化,以及由此带来的各种可能的安全风险。
  虚拟化的应用使得“服务器”这一基础设施由以前的分散运维走向集中运维,从硬件服务器,到虚拟化操作系统,再到虚拟机,以及各种外围支撑系统,现在建设和运维工作都集中到虚拟化团队身上了。大型企业的数据中心,物理服务器成百上千台,管理虚拟机数千台,这意味着这个团队需要大量具备不同技能的人员来分工完成如此复杂的运维任务。以目前国内的环境,他们几乎不可能都是专业的安全人员,或者具有同等的安全意识,在某些环节出现某些失误几乎是不可避免的。
  1、首先,要有效管理和监控大量的物理服务器,管理员必须借助服务器提供的硬件管理接口和带外管理网络才能实现。例如,惠普的iLO接口,Dell和浪潮的IPMI接口,通过一个Web或Ssh界面,都能实现服务器硬件健康状态的监控、电源和开关、操作系统的安装、远程控制台等功能。
  风险点一:管理员可能没有修改带外管理接口的默认密码,或者设置了弱密码、企业内众所周知的通用密码。统一硬件管理/监控平台(如果有的话)可能有漏洞。下面的图展示了我在实际的渗透测试中,发现的使用弱密码的惠普iLO管理接口:
 
  *图3:惠普服务器iLO管理界面
  以及浪潮的IPMI管理接口:
  *图4:浪潮服务器的IPMI管理界面
  2、其次,在虚拟主机操作系统层面,管理员需要管理大量的ESXi Server,可能需要借助外包或驻场才能完成系统的安装和初始设置,然后才能投入使用。
  风险点二:某些ESXi Server可能使用了弱密码,后来忘了修改。所有的ESXi Server使用相同的密码,也许写在了运维手册里。
  关于弱密码实际是非常容易遇到的。ESXi的ssh界面可以使用VMware的定制的shell;Web界面可以浏览它里面部署的客户机的虚拟磁盘;使用vSphere Client连接则可以进行所有的管理操作了。下面的图展示了我在实际的渗透测试中,猜到了密码的一个ESXi主机,可以通过Web界面浏览虚拟机的磁盘文件:
  *图5:浏览VMware数据存储
  而使用vmware sdk,可以将虚拟磁盘映射到本地来访问,避免下载巨大的磁盘文件:
  *图6:使用VMware SDK远程挂载虚拟磁盘




上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号